Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Thu 30 Oct 2014, 13:47
All times are UTC - 4
 Forum index » Advanced Topics » Puppy Projects » Localization Project
How to make US-intl keyboard in Puppy 2.11?
Moderators: Lobster, MU, raffy
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
Page 1 of 1 Posts_count  
Author Message
vientito

Joined: 17 Sep 2006
Posts: 83

PostPosted: Thu 02 Nov 2006, 15:50    Post_subject:  How to make US-intl keyboard in Puppy 2.11?  

what am i doing wrong here? I have assumed 2.11 has incorporated many of the xkb stuffs in it. What i am trying to do is to have a us(alt-intl) keyboard with compose:rwin so i dutifully add these entries to my xorg.conf. It loads the file fine when X starts, but it never seems like I could use the compose key to make accented characters. Am i missing something here?
Back to top
View user's profile Send_private_message 
GuestToo
Puppy Master

Joined: 04 May 2005
Posts: 4078

PostPosted: Thu 02 Nov 2006, 17:17    Post_subject:  

i don't think that Puppy 211, 212 has the us-intl keymap ... or en-us ... i think Puppy 210 does

if you want to make the right win key a compose key try typing this in a console:

xmodmap -e 'keycode 116 = Multi_key'

(copy from a web page by selecting the text with the left mouse button ... paste in a console window by clicking the middle mouse button)

if it works, you can put that line in /root/.xinitrc (somewhere before the exec $CURRENTWM line)

or you can put this in a file called /root/.Xmodmap

keycode 116 = Multi_key

or typing something like this might work:

setxkbmap us -option compose:rwin

if you want to use us_intl, you will have to get a us_intl file and put it in /etc/X11/xkb/symbols
Back to top
View user's profile Send_private_message 
vientito

Joined: 17 Sep 2006
Posts: 83

PostPosted: Thu 02 Nov 2006, 19:56    Post_subject:  

i tried your suggestion but it still did not work

in fact, i tried copying the "us" and "compose" files from my current debian system to /etc/X11/xkb/symbol to replace these two on puppy, for they work very well on my debian.

also, try your xmodmap way but it does not work either. i really dun want to use the xmodmap way since it deviates from one PC to the next - i thought it's not an elegant to solve the problem.

i must be doing something grossly wrong since no matter what i do accented characters refuse to appear here. BTW, us.map is only for console and it should not interfere with X dealing with the keyboard, right?
Back to top
View user's profile Send_private_message 
GuestToo
Puppy Master

Joined: 04 May 2005
Posts: 4078

PostPosted: Thu 02 Nov 2006, 21:53    Post_subject:  

xmodmap is not the correct way to solve the problem, no, it is not elegant at all, it's crude and brutal actually ... but it should work

i do not have a Win key (i have an old keyboard, i like it better than newer plastic ones) ... i think the right win key is usually 116, but i'm not sure

i can set my right Alt key to the Multi_key by typing:

xmodmap -e 'keycode 113 = Multi_key'

then i can type letters like etc etc etc

if think xmodmap should work if you set the correct key to the Multi_key ... the right Win key should be Super_R, i think (i'm not sure, i don't have a Win key) ... this should show you the key number for the Win key:

xmodmap -pke | grep Super_R

or you can run xev ... press and release the Win key and it should display the number of the key

i think setxkbmap us -option compose:rwin should set it the correct way ... if it doesn't work, i don't know why ... i think setting it with xmodmap should work anyway, if it doesn't work and you are using the correct key number, i don't know why it doesn't work ... it works on my machine (Puppy 212 beta) to setup the Alt key

as far as i know, us.map is for the console and xkb is for X, and they are more or less independent ... changing the X keyboard affects an rxvt console window, of course
Back to top
View user's profile Send_private_message 
vientito

Joined: 17 Sep 2006
Posts: 83

PostPosted: Sat 04 Nov 2006, 15:29    Post_subject:  

just a lil' update with what i have tested so far. I update to 2.12 beta just to make sure i have similar setup in your case.

i issue "xmodmap -e 'keycode 113 = Multi_key' " to map the R-alt to multi-key.

i did not change the original xorg.conf. here's what i got from there:


xkb_keymap {
xkb_keycodes { include "xfree86+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete" };
xkb_symbols { include "pc(pc102)+us" };
xkb_geometry { include "pc(pc102)" };
};

i also run xev to make sure the key is really mapped to multi-key. Here's it is:

KeyPress event, serial 29, synthetic NO, window 0x1a00001,
root 0x3c, subw 0x0, time 2980319731, (397,177), root:(447,246),
state 0x0, keycode 113 (keysym 0xff20, Multi_key), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: True


so i am using R-alt to do my work just as you did yours.

i type <multi-key>,',e in that sequence to try to generate an accented e. no luck. locale setting is in en_US which should understand the compose sequence.

I am at a loss since my setup is pretty much the same as yours. while you could make those accented characters, I could not.

i run everything pristine with fresh 2.12 beta and no pup-save.3fs.
Back to top
View user's profile Send_private_message 
GuestToo
Puppy Master

Joined: 04 May 2005
Posts: 4078

PostPosted: Sat 04 Nov 2006, 19:23    Post_subject:  

you want the compose (multi) key, right? ... not the mode switch key?

to make an accented character with the Multi_key, you press then release the Multi key, then press and release the a key, then press and release the e key ... to get this character:

to use the mode switch key, you press and hold the key, then press a key, just like using the shift key ... for example this:

xmodmap -e "keysym e = e E egrave Egrave"

should give you e when you press the e key, E when you press the shift+E key, when you press the mode-switch+E key, and when you press the mode-switch+shift+E keys

Quote:
locale setting is in en_US which should understand the compose sequence ... I am at a loss since my setup is pretty much the same as yours

my locale is en_US right now, because i am running Puppy 108 ... but i don't think that Puppy 211 has the en_US locale installed ... you may be able to install other locales by downloading them ... the locale i use in Puppy 211 is "us" (well, the keyboard in xorg.conf is set to "us") ... if you try to use a locale that is not installed, what usually happens is that it uses the default locale "C" ... and C does not have support for international characters, about all you get is simple ascii characters (a-z 0-9)

if you type in a console window something like this:

leafpad

do you get error messages about the locale not being installed, and using the C locale instead? if you do, this will probably prevent you from using accented characters ... you would have to install the locale that you are trying to use or use a locale that actually is installed ... the default locale that Puppy 211 uses, "us", should work, and you should be able to get accented characters ... it works on my machine anyway
Back to top
View user's profile Send_private_message 
vientito

Joined: 17 Sep 2006
Posts: 83

PostPosted: Sat 04 Nov 2006, 23:49    Post_subject:  

finally i am heading somewhere....

now i have verified that I am indeed in en_US. this i simply type "locale" in my rxvt and voil i have this:

LANG=en_US
LC_CTYPE="en_US"
LC_NUMERIC="en_US"
LC_TIME="en_US"
LC_COLLATE="en_US"
LC_MONETARY="en_US"
LC_MESSAGES="en_US"
LC_PAPER="en_US"
LC_NAME="en_US"
LC_ADDRESS="en_US"
LC_TELEPHONE="en_US"
LC_MEASUREMENT="en_US"
LC_IDENTIFICATION="en_US"

in any case, when i start "leafpad" or "abiword", i could use my compose key very well ONLY IF i use "us" as the layout instead of "us(intl)", the latter seems to have quite a few deadacutes defined which interfere with my compose sequence. Plus, there is no complaint message that the program not supported under locale C so i gather they start with en_US alright.

everything seems to work, under abiword, leafpad, seamonkey with the compose mechanism. so far the only place where this fails is under RXVT. for some reason rxvt just does not take this compose mechansim kindly. it refuses to work with it. I suspect this is due to these other applications have a way to capture the Xevents and able to interpret the sequence appropriately while rxvt does not. How to make my rxvt work with the compose sequence is my last quest.

...
Back to top
View user's profile Send_private_message 
vientito

Joined: 17 Sep 2006
Posts: 83

PostPosted: Sun 05 Nov 2006, 01:08    Post_subject:  

think i understand more now what's happening... XmbLookupString and XLookupString have given it away. One function is aimed at international X-apps with XIM while the other aims at older X-apps such as rxvt, which in our case, is not compiled with XIM at all. thus it interprets key sequence with XLookupString. For some reason, composing generates the right stuff for XIM to interpret and capture but XLookupString just does not interpret it the same way. I have no idea why and how to make rxvt understand those "other" latin letters without help of XIM acting as inbetween.

now i understand why in my debian system things seem to have worked fine because i am using a XIM-enabled terminal emulator other than rxvt.
Back to top
View user's profile Send_private_message 
GuestToo
Puppy Master

Joined: 04 May 2005
Posts: 4078

PostPosted: Sun 05 Nov 2006, 01:10    Post_subject:  

rxvt does not support unicode
http://software.schmorp.de/pkg/rxvt-unicode.html

the newer versions of xkb do not seem to come with en_US or with us_intl ... xkb in Puppy 211 is a little different from xkb in Puppy 108, because they are different versions of xorg

if you setup us_intl, there seems to be 3 methods of typing diacriticals

1) the compose key ... press/release the Multi key, press/release ' press/release e to get

2) press ' then e to get ... to get ' you have to press ' 2 times

3) hold down the mode switch key (like a shift key) and press e to get the euro symbol , for example, or whatever characters were setup in the keymaps
Back to top
View user's profile Send_private_message 
Display_posts:   Sort by:   
Page 1 of 1 Posts_count  
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
 Forum index » Advanced Topics » Puppy Projects » Localization Project
Jump to:  

Rules_post_cannot
Rules_reply_cannot
Rules_edit_cannot
Rules_delete_cannot
Rules_vote_cannot
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0685s ][ Queries: 11 (0.0030s) ][ GZIP on ]