Saya ingin meniru pengguliran horizontal ketika saya menggunakan roda gulir (vertikal) saya dan menekan Shift.
Pada beberapa aplikasi (Chrom {e, ium}) ini sudah berfungsi, tetapi saya sedang mencari solusi generik untuk aplikasi X.
Yang paling dekat yang saya dapatkan sejauh ini adalah xbindkeys
+ xdotool
.
# ~/.xbindkeysrc
"xdotool click 6"
shift + b:4
"xdotool click 7"
shift + b:5
Masalahnya adalah bahwa xbindkeys
tampaknya melewatkan beberapa peristiwa, dan kadang-kadang gulir vertikal "melewati". Ini sangat menyebalkan. Sepertinya xbindkeys
menggunakan semacam polling?
Saya juga tidak suka menelurkan ratusan perintah shell per detik.
Saya mendapat layar kecil dan harus banyak menggulir secara horizontal.
Bagaimana saya bisa mencapai pengguliran horizontal generik?
MEMPERBARUI:
Ada cara lain yang melakukan sebagian besar apa yang saya inginkan xbindkeys
dan xmodmap
.
"xmodmap -e 'pointer = 1 2 3 6 7 4 5 8 9 10'"
c:50
"xmodmap -e 'pointer = default'"
release + shift + c:50
Ketika Shiftditahan, tombol penunjuk 4 dan 5 dipetakan ke 6 dan 7. (Tombol 4/5 adalah pengguliran vertikal kedepan dan 6/7 untuk pengguliran horizontal). c:50
adalah tombol kiri Shift. Pada rilis kunci, pemetaan pointer default dikembalikan.
Ini menyelesaikan masalah "terlalu banyak acara" dengan baik. Namun, tombol Shift tidak berfungsi sebagai pengubah normal lagi. Saya mencoba menerbitkan kembali acara Shiftpers / rilis dengan xdotool
seperti ini:
"xmodmap -e 'pointer = 1 2 3 6 7 4 5 8 9 10'; xdotool keydown Shift_L"
c:50
"xmodmap -e 'pointer = default'; xdotool keyup Shift_L"
release + shift + c:50
Menurut xev
para Shiftperistiwa melewati, tapi saya berpikir itu tidak diakui sebagai pengubah lagi. Misalnya, menekan Shift+ Atidak akan menghasilkan huruf besar A
.