Apakah mungkin untuk memetakan kembali tombol Maju / Maju dari keyboard USB Thinkpad di Linux?

8

Di laptop Thinkpad saya, saya dapat dengan mudah mengubah tombol Kembali / Maju ke yang lain (saya biasanya memetakannya ke PageDown / PageUp), karena mereka memiliki kode kunci sendiri (166 dan 167):

xmodmap -e 'keycode 166=Prior'
xmodmap -e 'keycode 167=Next'

Namun, pada keyboard USB Thinkpad saya, tombol Kembali / Maju tampaknya masing-masing sulit dipetakan ke Alt + Kiri dan Alt + Kanan, jadi saya tidak dapat menggunakan xmodmap untuk memetakannya kembali. Apakah ada cara lain saya bisa memetakannya? Saya sudah mencoba xautomation, tetapi itu tidak berhasil.

Ini yang ditunjukkan 'xev' saat saya menekan tombol Forward:

KeyPress event, serial 36, synthetic NO, window 0x4e00001,
    root 0xb4, subw 0x0, time 65023191, (16,-20), root:(641,33),
    state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 36, synthetic NO, window 0x4e00001,
    root 0xb4, subw 0x0, time 65023191, (16,-20), root:(641,33),
    state 0x8, keycode 114 (keysym 0xff53, Right), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x4e00001,
    root 0xb4, subw 0x0, time 65023271, (16,-20), root:(641,33),
    state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x4e00001,
    root 0xb4, subw 0x0, time 65023271, (16,-20), root:(641,33),
    state 0x0, keycode 114 (keysym 0xff53, Right), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False
Guilherme Salgado
sumber
1
Jika kunci memiliki kode kunci, mereka dapat dipetakan kembali kan? Apakah ada yang berbeda dari tombol caps lock? Sepertinya halaman ini remaps dengan baik. Saya belum mencobanya. Hanya menyarankan. efod.se/writings/linuxbook/html/caps-lock-to-ctrl.html
Bibhas
Masalahnya persis bahwa itu tidak memiliki kode kunci dan sebagai gantinya adalah kabel ke alt-kiri / alt-kanan
Guilherme Salgado

Jawaban:

0
  1. Instal xdotool
  2. Buat skrip atau alias shell untuk perintah penekanan tombol yang ingin Anda jalankan ( xdotool key --clearmodifiers Page_Down)
  3. Ikat skrip / alias itu ke kombo terkirim (Alt + Kiri) di konfigurasi Tombol Cepat / Pintasan lingkungan desktop Anda.

Perhatikan bahwa di gnome-control-center sepertinya tidak mungkin untuk menetapkan tombol Kembali / Maju dari keyboard USB ke pintasan (Anda sebenarnya dapat menetapkannya, tetapi perintah / tindakan yang Anda petakan tidak akan pernah dipanggil / terjadi), jadi Anda mungkin perlu menggunakan sesuatu yang lain, seperti plugin Perintah compiz '.

SleighBoy
sumber
1
Terima kasih atas saran @sleighboy. Saya sudah mencobanya dengan xautomation , tetapi tidak berhasil. Lihat jawaban saya sendiri, di bawah ini, mengapa
Guilherme Salgado
1
Sebenarnya, ini harus menjadi jawaban terakhir dan saya hanya akan menjelaskan di sini mengapa itu tidak berhasil. Perintah untuk menjalankan seharusnya xdotool key --clearmodifiers Page_Updan untuk beberapa alasan menetapkan tombol Kembali / Maju sebagai akselerator pintasan di gnome-control-center tampaknya tidak berfungsi, tetapi jika Anda menggunakan plugin compiz '' Commands 'itu akan berfungsi.
Guilherme Salgado
0

Saya menaruh ini di .bashrc saya:

# this maps the previous and next page buttons to pgup and pgdown 
xmodmap -e "keycode 167 = Next" 
xmodmap -e "keycode 166 = Prior"

berfungsi dengan baik, tetapi tampaknya tidak memotongnya di virtualbox 6 karena beberapa alasan.

Stu
sumber