Saya pengembang dan saat ini saya menggunakan Ubuntu Linux dengan PyCharm IDE untuk pengembangan situs web. Untuk meningkatkan kinerja pengetikan, saya mempertimbangkan untuk mengubah CapsLock ke Hyper_L dan menetapkannya ke mod3 menggunakan xmodmap. Setelah ini saya ingin memetakan mod3 untuk 'i' kunci untuk 'Atas'. Sejauh ini yang saya lakukan adalah:
xmodmap -e "keysym Caps_Lock = Hyper_L"
output seperti ini:
shift Shift_L (0x32), Shift_R (0x3e)
lock Hyper_L (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
maka saya menghapus Hyper_L dari mod4
xmodmap -e "remove Mod4 = Hyper_L"
Setelah itu saya mencoba menetapkan Hyper_L ke mod3
xmodmap -e "add Mod3 = Hyper_L"
Namun saya mendapat kesalahan sebagai berikut:
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 118 (X_SetModifierMapping)
Value in failed request: 0x17
Serial number of failed request: 11
Current serial number in output stream: 11
Jadi, apa masalahnya di sini? Bagaimana saya bisa membuatnya bekerja? Apakah pendekatan saya benar? Atau saya harus menggunakan pendekatan yang berbeda untuk menggunakan mod3 untuk kunci kustom?
PS Saya menggunakan keyboard Microsoft Natural Ergonomic 7000
Saya tahu pertanyaan ini sudah cukup lama, tetapi saya perlu membagikan solusi saya, karena (frustasi) jawaban Heymantthew tidak bekerja untuk saya. Apa yang akhirnya berhasil untuk saya:
Ini akan mengaktifkan capslock sebagai kunci mod3, mengatur tata letak menjadi "kami" dan mengatur varian menjadi "intl". Jika Anda menggunakan shell interaktif seperti ikan, maka Anda dapat menekan tab setelah "-layout", "-option" atau "-variant" untuk mendapatkan daftar lengkap dari kemungkinan parameter.
Latar belakang lebih lanjut: Saya mencoba pendekatan xmodmap setahun yang lalu pada mesin Ubuntu yang menjalankan i3 window manager, beralih dari lingkungan gnome standar. Saya telah memodifikasi tata letak keyboard "kami" xkb, khususnya yang internasional dengan kunci mati - ini bekerja dengan baik ketika menggunakan gnome-desktop-manager (ada opsi untuk mengatur caps-lock sebagai kunci mod3), tapi saya tidak bisa mulai bekerja dengan xmodmap. Ini adalah kesalahan saya: Saya pikir GUI gdm menggunakan xmodmap untuk memetakan caps lock ke mod3, tetapi pada kenyataannya ia mengatur opsi X11 ini. Sekarang saya beralih ke Arch, saya terpaksa mengetahuinya.
Saya merekomendasikan kepada siapa pun yang berencana mengotak-atik ini untuk membaca halaman manual tentang localectl, xmodmap, setxkbmap, dan menguji tata letak dengan menambahkan sleep dan mengembalikan part:
ini menghemat waktu saya.
Saya masih tidak mengerti bagaimana hasilnya, pendekatan xmodmap tidak berfungsi. Semoga ini bisa membantu seseorang.
sumber