which version of Puppy are you using? ... there are differences in the version of Xorg and xkb ... the newer xkb is a little bit different from the older versions of xkb

for Puppy 212:

you can edit the file xorg.conf in /etc/X11/, then restart X windows (from the menu, or you can press ctrl+alt+backspace, then type startx)

Portuguese keymap:

Option "XkbLayout" "pt" #xkeymap0

or:

Option "XkbLayout" "pt" #xkeymap0
Option "XkbVariant" "basic"

or (i don't think you want this):

Option "XkbLayout" "pt" #xkeymap0
Option "XkbVariant" "sundeadkeys"

or:

Option "XkbLayout" "pt" #xkeymap0
Option "XkbVariant" "nodeadkeys"

Brazillian keymaps:

Option "XkbLayout" "br" #xkeymap0

or:

Option "XkbLayout" "br" #xkeymap0
Option "XkbVariant" "abnt2"

or:

Option "XkbLayout" "br" #xkeymap0
Option "XkbVariant" "nodeadkeys"

US keymaps:

Option "XkbLayout" "us" #xkeymap0

or:

Option "XkbLayout" "us" #xkeymap0
Option "XkbVariant" "basic"

or:

Option "XkbLayout" "us" #xkeymap0
Option "XkbVariant" "intl"

or:

Option "XkbLayout" "us" #xkeymap0
Option "XkbVariant" "alt-intl"

or:

Option "XkbLayout" "us" #xkeymap0
Option "XkbVariant" "dvorak"

or:

Option "XkbLayout" "us" #xkeymap0
Option "XkbVariant" "rus"

you may want to set the number of keys on your keyboard, if it is not set properly, for example:

Option "XkbModel" "pc105"

the older versions of xkb had "en_US" and "us_intl" ... the newer xkb does not seem to have those keymaps, i think you have to specify the keymap variant instead, which may not give you exactly the same keymap

on the pt keymap, ç seems to be the ; key on a us keyboard ... you do not need to press 2 keys to get a ç

there are at least 4 ways to get an accented diacritical:

1) remapping the keys ... just press a key to get the character ... like pressing the ; on a us keyboard gives you a ç with the pt keymap

2) the Mode_switch key ... like an extra shift key, holding the Mode_switch key and pressing a key will give you a different character, just like holding the shift key gives you different characters

3) the Multi_key ... press and release the Multi_key, press and release an accent key, like the ' key, then press and release a character, like e, to get é

4) dead keys ... press ' (nothing is displayed) then press e to get é

various keymaps have the keys set up in different ways ... i'm not sure what keymaps you were using before, it might have been "en_US" or "us_intl" ... i'm not sure if the newer variants have exactly the same mapping ... you might be able to copy the old keymap file and use it, i'm not sure if that would work properly or not

Posted: Wed 29 Nov 2006, 13:11 Post_subject:
How to put portuguese accentuation in a US keyboard?

Hi kkpity,

If you know your 2 letter brazilian keyboard letters, go to the topic noted below, go thru the step by step, and put them where you see the latam (meaning Latin American) keyboard. That step by step is for Puppy 2.12....but it should work for other versions as well.

It looks like the 2 letters you use for Brazilian are pt....according to the GuessToo post.

http://www.murga-linux.com/puppy/viewtopic.php?t=13215

With this method, you will have the 2 languages on your keyboard... English and Brazilian

as i said, i think the newer version of xkb has changed a little (not just in Puppy) ... i'm not sure if the exact configuration you used before is available (you can probably makes the keys do exactly what you want, if you know how, the keymaps are very configurable)

the keymaps i tried had deadkeys ... i could press ~ then o to get õ ... but , then c did not work to produce ç ... so i'm not sure if that method is configured in one of the keymaps or not

you might be able to copy the keymap file from an older version of Puppy, i don't know if it would work ... maybe the file would be named us_intl ... in Puppy 212 the keymap files are in /etc/X11/xkb/symbols/ ... then you would put
Option "XkbLayout" "us_intl"
in xorg.conf

you can get the regular ; and : keys by holding the modeswitch key ... it's probably the extra alt key on the right (AltGr)

i think what you want is not a pt or br keymap ... i think you want a us_intl keymap (or en_US, something like that ... en_US does not seem to be included with xkb anymore)

kkpity, are you using Xvesa or Xorg for your graphics? If you can't find a line related to keyboard in xorg.conf, then it sounds like you are running Xvesa. In that case Xkb will not work for you - that only works if you are running Xorg.

If you switch to Xorg, then I have also written a work-around for you to get a 'ç' on your keyboard. I had not read this thread when I posted it. My work-around is here:
http://www.murga-linux.com/puppy/viewtopic.php?p=82064#82064