Ubuntu 13.10 1 (dan mungkin upstream gnome) memperkenalkan bug yang sangat menjengkelkan : menekan pintasan tata letak keyboard membuat fokus beralih ke beberapa jendela sistem, lalu kembali ke jendela tempat pintasan ditekan. Beberapa aplikasi memiliki beberapa tindakan yang terikat pada perubahan fokus, misalnya twitter (di browser) menutup bidang input teks balasan ketika kehilangan fokus, dll. Jadi pengalih keyboard asli ubuntu tidak cocok untuk saya, sampai diperbaiki.
X memiliki built-in mekanisme switching, dan jauh lebih baik, selain itu tidak melibatkan fokus switching, ia segera beralih (gnome switcher juga kadang-kadang ketinggalan).
Bagaimana saya bisa mengatur opsi xkbmap sehingga pengaturan akan tetap setelah reboot dan tidak akan diatur ulang oleh Gnome?
Apa yang saya coba:
Pertama, cukup jalankan setxkbmap:
setxkbmap -layout "us,ru"
setxkbmap -option "grp:caps_toggle,grp_led:scroll,compose:ralt"
Tetapi hanya berfungsi:
- Untuk sesi saat ini
- Hingga Gnome akan menimpanya (misalnya menyentuh sesuatu di
org.gnome.desktop.input-sources
pemicu gconf's reset).
Kedua, menambahkan opsi xkb ke konfigurasi Xorg:
Opsi lain adalah menambahkan berikut ke konfigurasi xorg:
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "us,ru"
Option "XkbModel" "pc105"
Option "XkbVariant" "pc105"
Option "XkbOptions" "grp:rctrl_toggle,grp_led:scroll"
EndSection
Xorg memahami bahwa selama startup:
[ 33.791] (**) Option "xkb_rules" "evdev"
[ 33.791] (**) Option "xkb_model" "pc105"
[ 33.791] (**) Option "xkb_layout" "us,ru"
[ 33.791] (**) Option "xkb_variant" "pc105"
[ 33.791] (**) Option "xkb_options" "grp:rctrl_toggle,grp_led:scroll"
Tetapi beralih konfigurasi masih mengatur ulang nanti, mungkin oleh gnome
Ketiga, gconf
Saya punya xkb-options
dan sources
mengatur org.gnome.desktop.input-sources
, tetapi Gnome masih menetapkan xkb ke tata letak bahasa Inggris tunggal:
$ setxkbmap -print -verbose 10
Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules: evdev
model: pc105
layout: us
options: grp_led:scroll
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete+ledscroll(group_lock)
symbols: pc+us+inet(evdev)
geometry: pc(pc105)
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete+ledscroll(group_lock)" };
xkb_symbols { include "pc+us+inet(evdev)" };
xkb_geometry { include "pc(pc105)" };
};
Keempat, opsi lain di gconf
Pengaturan org.gnome.settings-daemon.peripherals.keyboard
juga tidak berfungsi untuk saya. Tidak ada yang berubah.
Pembaruan 1 : Ada diskusi yang merekomendasikan untuk menghapus /usr/lib/gnome-settings-daemon-3.0/libkeyboard.so
. Setidaknya ini memperbaiki beberapa reset xkbmap (yaitu setelah layar kunci).
1 Saya menggunakan 14,04, tetapi masalah dengan kehilangan fokus masih belum diperbaiki. ( Laporan belum dikonfirmasi di hulu Gnome )
org.gnome.desktop.input-sources
.
dconf-editor
?
setxkbmap
perintah ke Anda~/.profile
? Dengan begitu, mereka akan dijalankan setiap kali Anda masuk dan karena pengaturan yang sama ada di Gnome, seharusnya tidak mengubah apa pun jika pengaturan ulang.