Page 1 of 1
[SOLVED] Keyboard layout problem

Posted:
28 Oct 2012, 23:09
by Ulukai
Since my switch to systemd on Arch Linux, I'm having problems with RE and Sauer not respecting my keyboard layout. I use a Belgian AZERTY layout, which works fine for all apps, but in RE I can't use the tilde key anymore to bring up the console. Using the number keys to edit the properties of affinities doesn't work anymore either. In short: I cant use the editor anymore. In other games like Doom 3 I can use tilde for the console just fine... And it used to work in RE before systemd as well...
I tried with a US layout in my user settings, which changes the layout to QWERTY in RE when typing, but the numbers or the console still don't work...
Who can help me to fix this or are there any specific parameters that I can give to RE to solve this?
Re: Keyboard layout problem

Posted:
28 Oct 2012, 23:15
by ballist1c
I use forward slash key, next to period key on QWERTY, to open console in RE so I really wouldn't know

Re: Keyboard layout problem

Posted:
28 Oct 2012, 23:30
by arand
Is the tilde a direct key in your layout or a mod combo (e.g. [Alt Gr] + [¨] ).
By the way
http://sourceforge.net/apps/trac/redeclipse/ticket/109I've used the normal chat and added a [/] to the start when I don't have custom rebinds.
Re: Keyboard layout problem

Posted:
29 Oct 2012, 09:47
by Ulukai
Good to hear that I'm not the only one with this problem, we'll come to a solution eventually. But I keep finding it weird that it worked flawlessly before the move to systemd...
My keyboard layout is attached to this post. To hit the tilde I need alt-gr and to type a slash I need shift. From your bug report I understood that I can bind the needed keys with these commands below in my config file, but how do I know what the key I need to press is called? Like how did you find out that your keys are called SV_SECTION and SV_DIAERESIS?
bind %MY_KEY_ABOVE_TAB% "saycommand /" (in my layout this is ²)
bind %MY_KEY_NEXT_TO_RIGHT_SHIFT% "saycommand /" (in my layout this is =)
editbind 1 [ domodifier 11 ] (in my layout this is &)
editbind 2 [ domodifier 12 ] (in my layout this is é)
editbind 3 [ domodifier 13 ] (in my layout this is ")
editbind 4 [ domodifier 14 ] (in my layout this is ')
editbind 5 [ domodifier 15 ] (in my layout this is ()
editbind 6 [ domodifier 16 ] (in my layout this is §)
editbind 7 [ domodifier 17 ] (in my layout this is è)
editbind 8 [ domodifier 18 ] (in my layout this is !)
editbind 9 [ domodifier 19 ] (in my layout this is ç)
I need editbind 1 to 9 too for editing properties of affinities, because I would need shift + these keys for them to function. So I need to find out the alternate names of these keys on my keyboard layout as well.
Re: Keyboard layout problem

Posted:
29 Oct 2012, 11:15
by arand
I just checked, and I do have the same issue when I switch over to a US layout (tillde & slashes won't work to invoke console, but works to write in console), and I'm using SysVinit, not systemd.
I used xev to figure out the keycodes.
There was talk before about using scancodes instead of keycodes for some positional keys, particular the console invocation, such that they would be in the same location independently of layout, if that's possible it's something worth brining up to discussion again?
Re: Keyboard layout problem

Posted:
29 Oct 2012, 11:30
by Ulukai
Thanks arand, I found this article about xev and other methods, which I can use to try figuring out what to do.
https://wiki.archlinux.org/index.php/Ex ... board_Keys For most players it won't be a big deal, but when I use the editor, especially the number keys + scrolling are very useful tools, so they are at least as important as the console invocation keys imo. If it would be possible for quin or eihrul to use scancodes and it wouldn't be too much of a hassle, it could be worth the effort to fix this once and for all.
Re: Keyboard layout problem

Posted:
29 Oct 2012, 13:34
by arand
The problem with the number keys and mouse scrolling I've not noticed on my side though.
Re: Keyboard layout problem

Posted:
30 Oct 2012, 21:17
by Ulukai
Not making any progress here...

Please find the output of XEV of the keys I pushed. I first entered and then pushed a b c d as a few examples. then I pressed the key above my TAB (see Belgian keyboard layout in previous post) which seems to be called twosuperior. After that I pushed the number keys above my letters (1 to 0). It nicely translates it into keycodes, but when I use those in my config.cfg, it tells me in the console (brining it up with F11) that it is a unknown key. It does that with everything I try and then removes it from my config.
So bind "twosuperior" "saycommand /" doesn't work. Same problem with the number keys.
And when I go into data\keymap.cfg, it says that keymap 49 corresponds with 1... :confused:
Re: Keyboard layout problem

Posted:
31 Oct 2012, 23:51
by Ulukai
With the extensive help on IRC of the patient arand I was able to solve the problem, thanks a lot for that! (applause)
I will write down the values for a be-latin layout under Linux if anyone else would run into the same issue on a later time.
bind "WORLD_18" [saycommand /]
editbind "AMPERSAND" [domodifier 11]
editbind "WORLD_73" [ domodifier 12 ]
editbind "QUOTEDBL" [ domodifier 13 ]
editbind "QUOTE" [ domodifier 14 ]
editbind "LEFTPAREN" [ domodifier 15 ]
editbind "WORLD_7" [ domodifier 16 ]
editbind "WORLD_72" [ domodifier 17 ]
editbind "EXCLAIM" [ domodifier 18 ]
editbind "WORLD_71" [ domodifier 19 ]
editbind "SEMICOLON" [ domodifier 10; onrelease entautoview ]
editbind "COLON" selentedit
editbindvar "WORLD_64" allfaces
Short howto:
1. Use xev to find the keysym of the key you want to assign a function.
2. Calculate the decimal value of this keysym.
3. Look in data/keymap.cfg what name is given to the line with the corresponding value.
4. Bind this name to a function in your config.cfg.