Xorg: Bagaimana saya bisa memetakan AltGr ke CapsLock Key (untuk mengaktifkan simbol level 3)

12

karena banyak orang lain yang tidak saya butuhkan CapsLock. Saya ingin menetapkan kembali sedemikian rupa sehingga memiliki fungsi AltGr. Saya menggunakan Kubuntu 9.10 tetapi saya pikir harus ada solusi yang independen terhadap distribusi.

Saya sudah mencoba menggunakan setxkbmap atau xmodmap. Menggunakan xmodmapsetidaknya saya berhasil CapsLockberperilaku seperti Deldengan mengikuti deskripsi ini .

Tapi saya tidak bisa mencapai menetapkan AltGrperilaku CapsLock.

cknoll
sumber

Jawaban:

14

Saya tahu pertanyaan ini sudah lama, tetapi jika ada yang menemukan lagi, ada solusi alternatif:

setxkbmap -option "lv3:caps_switch"

Untuk daftar opsi lengkap, baca bagian "OPSI" dari

man xkeyboard-config
Panjang
sumber
6

Berdasarkan jawaban Dennis dan dengan bermain-main dengan xevsaya, saya menemukan bahwa frasa ajaib tampaknya ISO_Level3_Shift.

Setidaknya ini bekerja untuk saya:

xmodmap -e "keycode 66 = ISO_Level3_Shift"

Sekarang saya tidak mengalami bahaya untuk mematahkan jari saya saat mengetik [,], {,} dan co pada tata letak keyboard Jerman saya.

Edit: sekarang menggunakan opsi -e dari xmodmap

cknoll
sumber
Terima kasih! Saya sudah mencari ini sejak pindah ke Ubuntu dari Windows. Tanpa JavaScript ini adalah rasa sakit pada keyboard Jerman.
gzost
1

Coba salah satu dari ini (gantikan keysim atau kode kunci caps-lock Anda jika berbeda):

xmodmap -e "keysym 0xffe5 = Mode_switch"

atau

xmodmap -e "keycode 66 = Mode_switch"
Dijeda sampai pemberitahuan lebih lanjut.
sumber
Terima kasih. Baris Anda tidak bekerja secara langsung karena dua alasan: 1. xmodmap menginginkan file jadi saya harus mem-pipe string dan membaca dari stdin. 2. Mode_switch berhasil ditetapkan tetapi tidak menghasilkan pengubah tingkat 3. Lalu saya bermain dengan xev lagi. Ketika saya menyadari bahwa string "Mode_switch" muncul di sana, mudah untuk menekan AltGr dan mencari apa yang bisa dibaca sebagai gantinya di tempat yang sesuai. -> ISO_Level3_Shift.
cknoll
@ Basweber: Saya lupa -epilihannya. Saya sudah mengedit jawaban saya.
Dijeda sampai pemberitahuan lebih lanjut.
Iya. Itu jauh lebih bersih daripada pendekatan perpipaan.
cknoll
1

Jawaban Long adalah yang terbaik untuk Desktop modern seperti Gnome, karena Gnome sendiri menggunakan xkb dan menimpa konfigurasi xmodmap secara default (juga, xmodmap sedang keluar dan tidak didukung di Wayland). Sayangnya, ini hanya akan berfungsi sampai reboot.

Anda dapat menerapkan opsi ini secara permanen untuk desktop Gnome Anda dengan perintah ini:

gsettings set org.gnome.desktop.input-sources xkb-options "['lv3:caps_switch']"

Tentu saja Anda juga dapat membuat perubahan ini secara permanen dan bahkan sistem luas, tanpa menggunakan Gnome. Jika Anda menggunakan Gnome, Anda masih harus menggunakan perintah di atas untuk menjaga Gnome dari menimpa pengaturan ini. Untuk Arch , Anda dapat menambahkan file /etc/X11/xorg.conf.d/90-custom-kbd.confdengan konten berikut:

Section "InputClass"
    Identifier "keyboard defaults"
    MatchIsKeyboard "on"
    Option "XKbOptions" "lv3:caps_switch"
EndSection

Saya menganggap ini berbeda di antara distribusi, sehingga jarak tempuh Anda mungkin berbeda.

Daniel R.
sumber