-rw-r--r-- | share/multikey/README | 85 |
1 files changed, 66 insertions, 19 deletions
diff --git a/share/multikey/README b/share/multikey/README index beed768..b0da95f 100644 --- a/share/multikey/README +++ b/share/multikey/README | |||
@@ -1,57 +1,104 @@ | |||
1 | +---- how to make your own keymap file. ----+ | 1 | +----------------------------------------------------------------------------+ |
2 | 2 | | | | |
3 | first of all, later on you will be able to choose the keymap, but right now it | 3 | | the basics | |
4 | selects the keymap according to your language setting. for example, if your | 4 | | | |
5 | language is "ko", it will select $OPIE_DIR/share/multikey/ko.keymap for the | 5 | +----------------------------------------------------------------------------+ |
6 | keymap. so if you want to make a german keymap, copy the en.keymap file to | ||
7 | de.keymap, and edit it. | ||
8 | 6 | ||
9 | your best friend is xmbfed. open the unicode font that is in | 7 | your best friend is xmbfed. open the unicode font that is in |
10 | $QT_DIR/lib/fonts/unifont.bdf and search for the characters you want to input. | 8 | $QT_DIR/lib/fonts/unifont.bdf and search for the characters you want to input. |
11 | in the keymap file, the columns are... | 9 | in the keymap file, the columns are... |
12 | 10 | ||
13 | +--- row number (there are 5 rows) | 11 | +--- row number (there are 5 rows) |
14 | | +- qcode (used for special chars like enter, escape, etc...) | 12 | | +- qcode (used for special chars like enter, escape, etc...) |
15 | | | | 13 | | | |
16 | v v | 14 | v v |
17 | 1 0 0x36 2 | 15 | 1 0 0x36 2 |
18 | ^ ^ | 16 | ^ ^ |
19 | | | | 17 | | | |
20 | | +---- width of key (default key should be 2) | 18 | | +---- width of key (default key should be 2) |
21 | +--- the unicode value (the one you see in xmbded) | 19 | +--- the unicode value (the one you see in xmbded) |
22 | 20 | ||
23 | so, lets say you want to edit the 5th key on the 2nd row. find the 5th line | 21 | so, lets say you want to edit the 5th key on the 2nd row. find the 5th line |
24 | that starts with 2, and replace the 3rd column with the code you found in | 22 | that starts with 2, and replace the 3rd column with the code you found in |
25 | xmbdfed. save the file and test it out by restarting opie, or running | 23 | xmbdfed. save the file and test it out by selecting another map, and |
26 | 24 | selecting the one you are editing again. | |
27 | host$ $OPIEDIR/bin/qcop QPE/TaskBar "reloadInputMethods()" | ||
28 | 25 | ||
29 | it worked, right? if all you see is a square in it's place, that means your | 26 | it worked, right? if all you see is a square in it's place, that means your |
30 | default font doesn't have that char. go to appearance and change the font to | 27 | default font doesn't have that char. go to appearance and change the font to |
31 | one that has that char. | 28 | one that has that char. |
32 | 29 | ||
33 | and if you want, you can have an image as the label instead of the char itself. | 30 | and if you want, you can have an image as the label instead of the char itself. |
34 | just draw the xpm image in gimp or something, save it, open it in your text | 31 | just draw the xpm image in gimp or something, save it, open it in your text |
35 | editor, cut off all the surrounding stuff and leave only the stuff between the | 32 | editor, cut off all the surrounding stuff and leave only the stuff between the |
36 | " chars. place that after your key definition. not too hard, right? | 33 | " chars. place that after your key definition. not too hard, right? one thing |
34 | about this is you cant use xpm images for shift or any other meta keys. | ||
35 | |||
36 | +----------------------------------------------------------------------------+ | ||
37 | | | | ||
38 | | shift and meta keys | | ||
39 | | | | ||
40 | +----------------------------------------------------------------------------+ | ||
37 | 41 | ||
38 | about shift and meta characters. to place chars in the shift map, the line | 42 | about shift and meta characters. to place chars in the shift map, the line |
39 | should consist of two columns. the non-shifted char and the shifted char. for | 43 | should consist of two columns. the non-shifted char and the shifted char. for |
40 | example. | 44 | example. |
41 | 45 | ||
42 | 0x36 0x46 | 46 | 0x71 0x51 |
47 | |||
48 | so, 0x71 (q) shifted is 0x51 (Q). | ||
49 | |||
50 | and now for meta chars. the reason why you have this feature is because of | ||
51 | languages like german, where you can hold down the meta (alt-gr) key and enter | ||
52 | in other special characters. it's like having a second shift. to add chars to | ||
53 | this map, you do the following. | ||
54 | |||
55 | m 0x71 0x31 | ||
56 | |||
57 | here, if you hold down meta and hit the 0x71 (q) key, 0x31 (1) would be input. | ||
58 | get it? and one more thing about meta keys and shifting at the same time. if | ||
59 | you wanted the above key to shift while meta is held down, just add the | ||
60 | original shifted key to the meta map, like this. | ||
61 | |||
62 | m 0x51 0x7e | ||
63 | |||
64 | here if you hit meta and then shift, you would get 0x7e (!). | ||
65 | |||
66 | +----------------------------------------------------------------------------+ | ||
67 | | | | ||
68 | | circumflex and diaeresis | | ||
69 | | | | ||
70 | +----------------------------------------------------------------------------+ | ||
71 | |||
72 | just in case you use french, there are also maps for circumflex chars and | ||
73 | diaeresis. for example... | ||
74 | |||
75 | 2 0 0x69 2 | ||
76 | 0x69 0x49 | ||
77 | c 0x69 0xee | ||
78 | d 0x69 0xef | ||
79 | |||
80 | this would define an 'i' with a shift, circumflex, and a diaeresis definition. | ||
81 | to shift the circumflex and diaeresis keys, do the same as you would with a | ||
82 | meta key. add the orignal key shifted to the circumflex and diaeresis maps. | ||
83 | |||
84 | c 0x49 0xce | ||
85 | d 0x49 0xcf | ||
43 | 86 | ||
44 | so, 0x36 shifted is 0x46. and for meta chars. the reason why you have this | 87 | +----------------------------------------------------------------------------+ |
45 | feature is because of languages like german, where you can hold down the | 88 | | | |
46 | meta-alt key and enter in other special characters. it's like having | 89 | | special keys | |
47 | a second shift. to add chars to this map, you do the following. | 90 | | | |
91 | +----------------------------------------------------------------------------+ | ||
48 | 92 | ||
49 | m 0x36 0x84 | 93 | to define special keys like the meta key, circumflex or diaeresis keys, here |
94 | is what you should use. | ||
50 | 95 | ||
51 | and here, if you hold down the meta-alt and hit the 0x36 key, 0x84 would be | 96 | 5 0x1030 0 2 # opens config dialog |
52 | input. get it? | 97 | 5 0x1022 0 3 # meta |
98 | 2 0 0x2c6 2 # circumflex | ||
99 | 0x2c6 0xa8 # diaeresis | ||
53 | 100 | ||
54 | if you have problems, suggestions, or just want to tell me something, you can | 101 | if you have problems, suggestions, or just want to tell me something, you can |
55 | contact me at jake at asdfnews.org | 102 | contact me at jake at asdfnews.org |
56 | 103 | ||
57 | jake richardson | 104 | jake richardson |