You are not logged in.
I have an UK keyboard but I want to use UK Extended (WinKeys?) layout.
According to the following I should use extd:
$ cat /usr/share/X11/xkb/rules/xorg.lst | grep -i uk
ua Ukrainian
gb English (UK)
guru in: Punjabi (Gurmukhi)
jhelum in: Punjabi (Gurmukhi Jhelum)
ike ca: Inuktitut
phonetic ua: Ukrainian (phonetic)
typewriter ua: Ukrainian (typewriter)
winkeys ua: Ukrainian (WinKeys)
legacy ua: Ukrainian (legacy)
rstu ua: Ukrainian (standard RSTU)
rstu_ru ua: Russian (Ukraine, standard RSTU)
homophonic ua: Ukrainian (homophonic)
extd gb: English (UK, extended WinKeys)
intl gb: English (UK, international with dead keys)
dvorak gb: English (UK, Dvorak)
dvorakukp gb: English (UK, Dvorak with UK punctuation)
mac gb: English (UK, Macintosh)
mac_intl gb: English (UK, Macintosh international)
colemak gb: English (UK, Colemak)Using localectl as suggested in the wiki does not work: https://wiki.archlinux.org/index.php/Ke … _localectl
It enables extd as X11 layout but it does not work and it disables virtual console keymap, falling back to us layout:
$ localectl set-x11-keymap extd
$ localectl status
System Locale: LANG=it_IT.UTF-8
LC_COLLATE=C
VC Keymap: n/a
X11 Layout: extdThe following is not working as well. The right X11 layout displays in X11 Layout but it is false:
$ localectl set-keymap uk
$ localectl status
System Locale: LANG=it_IT.UTF-8
LC_COLLATE=C
VC Keymap: uk
X11 Layout: gb
X11 Model: pc105
X11 Options: terminate:ctrl_alt_bkspSo far the only way I have found to use uk layout is:
setkbmap gbLast edited by buntolo (2014-08-13 19:00:20)
Offline
Should I provide more details?
Offline
Hello.
I think 'extd' is a variant, so it should be preceded by a layout:
localectl set-x11-keymap gb pc105 extd terminate:ctrl_alt_bksp
But I am not sure where and when you would need to run this command...
If I were you, instead of using localectl, I would create manually a '/etc/X11/xorg.conf.d/10-keyboard.conf' file:
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "gb"
Option "XkbModel" "pc105"
Option "XkbVariant" "extd"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSectionAnd restart Xorg.
Edit: correction of the localectl command line above.
Last edited by berbae (2014-08-14 14:23:54)
Offline
$ localectl set-x11-keymap gb pc105 extd terminate:ctrl_alt_bksp
$ cat /etc/X11/xorg.conf.d/00-keyboard.conf # Read and parsed by systemd-localed. It's probably wise not to edit this file
# manually too freely.
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "gb"
Option "XkbModel" "pc105"
Option "XkbVariant" "extd"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSectionEdit:
Correct option ordering thanks berbae for spotting it
Last edited by loqs (2014-08-14 09:41:37)
Offline
This is not good:
'gb' is the layout,
'pc105' the model.
So the command should be:
localectl set-x11-keymap gb pc105 extd terminate:ctrl_alt_bksp
The parameters order is important.
But the question is when and how do you run this command?
The generated '/etc/X11/xorg.conf.d/00-keyboard.conf' file will only be read at the start of the Xorg server.
So if you run the command after the Xorg server is started, it will not be used.
It is not clear to me how to use the 'localectl' command; that is why I suggest that you use a manually created '/etc/X11/xorg.conf.d/10-keyboard.conf' with the same content; then it is sure that file will be used when Xorg starts.
Offline
berbae thank you for the correction.
I do not understand your concern about when localectl should be run as it generates /etc/X11/xorg.conf.d/00-keyboard.conf so it just needs to be run once then restart X the same as the manual stanza.
Offline
I'll try the 10-keyboard.conf, I was uncertain and prone to use localectl. To me it seems the wiki suggests using localectl over manual .conf.
Offline
Can't say if it's working or not:
$ localectl
System Locale: LANG=it_IT.UTF-8
LC_COLLATE=C
VC Keymap: uk
X11 Layout: gb
X11 Model: pc105
X11 Options: terminate:ctrl_alt_bksp
$ cat /etc/X11/xorg.conf.d/10-keyboard.conf
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "gb"
Option "XkbModel" "pc105"
Option "XkbVariant" "extd"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection
$ cat /etc/X11/xorg.conf.d/00-keyboard.conf
# Read and parsed by systemd-localed. It's probably wise not to edit this file
# manually too freely.
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "gb"
Option "XkbModel" "pc105"
Option "XkbOptions" "terminate:ctrl_alt_bksp"
EndSectionOffline
The situation is somewhat confused now; so to clarify it:
remove the '/etc/X11/xorg.conf.d/10-keyboard.conf' file,
remove the '/etc/X11/xorg.conf.d/00-keyboard.conf' file',
run as root the command 'localectl set-x11-keymap gb pc105 extd terminate:ctrl_alt_bksp',
verify the new '/etc/X11/xorg.conf.d/00-keyboard.conf' file that the line with 'extd' is there,
logout/login as user,
start Xorg server again
See if your missing keys work; if not, post the output of 'localectl status' and the entire Xorg log file.
Offline