Saya memiliki ThinkPad W540. Di keyboard-nya ada empat tombol multimedia di atas numpad. Dua dari kunci tersebut menghasilkan kode kunci (dan, tampaknya, scancode) yang sesuai dengan kombinasi tombol, Win_L+ Ldan Win_L+ E. Dengan kata lain, untuk kunci yang menghasilkan Win_L+ L,
showkey --scancodes
mengembalikan ini:
0xe0 0x5b 0x26 0xa6 0xe0 0xdb
The setkeycodes
perintah membutuhkan baik tunggal byte unescaped atau melarikan diri urutan dua-byte untuk menunjukkan kode scan, dan showkey
memberi saya cara yang lebih dari itu, jadi saya tidak bisa cukup ulang peta-bahwa kunci untuk salah satu keycodes bebas dalam sistem saya dengan mudah sebuah setkeycodes <scancode> <keycode>
.
Saya akan sangat menghargai petunjuk bagaimana saya dapat memetakan kembali kunci itu untuk sesuatu yang lain yang tidak hanya menduplikasi salah satu kombinasi tombol yang ada di keyboard saya.
sumber
/etc/acpi/events
yang digunakan dalamacpid
paket dan hanya mendefinisikan tindakan ketika tombol fungsi tersebut ditekan.Jawaban:
Anda dapat melakukan ini dalam dua langkah:
Anda dapat menggunakan
xchainkeys
untuk 1. dan[xdotool][2]
untuk 2 .:Untuk membuat kunci baru yang disimulasikan dengan
xdotool
, pilihan--clearmodifiers
darikey
mungkin penting untuk menetralkan asli simulasi pers modifier:Ini harus mengetikkan modal
A
sebagai ujian.Dalam konfigurasi
xchainkeys
in~/.config/xchainkeys/xchainkeys.conf
, kita dapat mengikat perintah ke kombinasi tombol:Sekarang, kombinasi tombol
Win
danl
(Win
kiri atau kanan melakukan hal yang sama), serta kunci yang menghasilkan Win_L + L, harus membuat modalA
.(Ada banyak program lain yang tersedia untuk kedua bagian. Untuk yang pertama, orang dapat menggunakan konfigurasi hotkey dari lingkungan desktop, tetapi saya lebih suka untuk tetap independen dari DE.)
sumber
Win-Shift-l
But Anda juga bisa memetakan rantai kombinasi tombol ke sebuah perintah. SukaWin-a
dan setelah itub
. Tanpa ituWin-a
,b
berperilaku normal. Sejauh ini fitur yang paling bergunaxchainkeys
, dan cukup unik, saya pikir.Inilah yang saya lakukan pada Thinkpad Yoga saya untuk mengganti tombol backslash / pipe ke tombol yang benar. Karena untuk beberapa alasan di setiap Mesin Virtual Linux itu mengartikan kunci backslash \ pipe (\ |) sebagai kunci kurang dari (<).
Pertama jalankan perintah:
xev
Tekan tombol yang diinginkan untuk mendapatkan kode kunci untuk kunci yang ingin Anda to rebind:
Dalam contoh ini Keycode adalah 94 dan aksinya "kurang" tetapi kami ingin itu memiliki aksi backslash dan bar alias "pipa"
Remap kode kunci 94 ke garis miring terbalik dan bilah alias "pipa":
Sekarang mari kita buat ini terus-menerus:
Mengembalikan yang berikut ke file
~/.Xmodmap
:Maka Anda harus membuat file berikut untuk menyelesaikan membuatnya persisten:
sumber