Bagaimana cara menetapkan tindakan "kembali" dan "maju" ke roda gulir horizontal Logitech Anywhere Mouse MX?


11

Saya menggunakan Logitech Anywhere Mouse MX di Ubuntu saya. Mouse berfungsi dengan baik, tapi saya tidak bisa menetapkan tindakan ke tombol tambahan yang tersedia di sana. Yang paling saya rindukan adalah tindakan "kembali" dan "maju" yang diberikan pada roda gulir miring ke kiri dan kanan.

Bagaimana saya bisa mengaktifkan fitur ini?

Jawaban:


9

Saya menggunakan xbindkeysdalam kombinasi dengan xdotool.

Buat .xbindkeysrcfile di direktori home Anda. Itu harus mengandung:

# Mapping BACK to mousewheel left on old Logitech
"xdotool key Alt_L+Left"
m:0x0 + b:6

# Mapping FORWARD to mousewheel right on old Logitech
"xdotool key Alt_L+Right"
m:0x0 + b:7

Namun dengan VMware Anda tidak perlu melakukan hal lain kecuali menambahkan

mouse.vusb.enable = "TRUE"

ke file .vmx di sistem host Anda. Inilah yang VMware buka setiap kali Anda memulai sistem tamu Anda.


Terima kasih. Saya akan menguji baris vmx lain kali saya me-restart sistem (tidak terlalu sering terjadi).
ysap

Baru saja mencoba vmx file hack - dan sepertinya tidak berhasil. Apa yang saya lihat adalah ketika saya melakukan restart, VMware menghapus baris yang baru saja saya tambahkan, seolah-olah memiliki template file default yang sedang disetel ulang setiap kali Anda memulai mesin.
ysap

ok, sepertinya saya harus pergi jauh-jauh dan mematikan mesin, bukan hanya restart. Sekarang pengaturan dipertahankan. Sayangnya, bekerja dari jarak jauh sekarang, roda mouse tampak tidak efektif (sama pada mesin host). Saya akan periksa lagi ketika di situs jarak jauh dan melaporkan hasilnya.
ysap

Oh ya - baru diperiksa, dan itu berhasil!
ysap

Jelas, Anda harus menjalankan xbindkeyssetelah pengaturan.
HongboZhu

18

Saya punya mouse yang sama, dan saya ingin mengikat dua tombol di samping mouse untuk maju dan mundur. Inilah cara saya memecahkan ini:

1) Gunakan utilitas "xev" untuk menentukan nomor tombol yang ingin Anda bentuk ulang sesuai dengan. Anda mungkin harus menginstal paket ini menggunakan

sudo apt-get install xev  

Setelah xev terinstal, ketikkan "xev" ke terminal, dan sebuah jendela X yang berwarna putih dengan kotak hitam akan muncul. Memindahkan mouse Anda ke jendela itu akan mulai mendaftarkan acara ke terminal. Membaca hasil yang hati-hati akan memberi tahu Anda jumlah tombol mouse Anda. Di mouse saya, kiri dan kanan memiringkan peta ke tombol 6 dan 7 masing-masing.

2) Sekarang kita akan menggunakan utilitas "xbindkeys" untuk memetakan kembali tombol mouse ke penekanan tombol. Jika Anda belum menginstal ini, Anda mungkin harus menginstalnya

sudo apt-get install xbindkeys

3) Buat file di direktori home Anda yang disebut ".xbindkeysrc". Inilah yang akan dibaca xbindkeys untuk melihat apa yang Anda remapping. Isi file .xbindkeysrc saya adalah:

 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Left]""
   m:0x0 + b:8

 "/usr/bin/xvkbd -xsendevent -text "\[Alt_L]\[Right]""
  m:0x0 + b:9

Jadi ini memberitahu komputer saya untuk mengirim tombol keyboard menekan "Alt + Kiri" atau "Alt + Kanan" ke sistem menggunakan keyboard virtual (xvkbd) setiap kali tombol 8 pada mouse 0 ditekan atau tombol 9 pada mouse 0 ditekan masing-masing. Tombol-tombol ini sesuai dengan tombol maju dan mundur di sebagian besar aplikasi. Ini akan berfungsi, misalnya, di Nautilus, chrome /

Catatan : Anda mungkin perlu menginstal xvkbdjika belum ada di sistem Anda.sudo apt-get install xvkbd


Terima kasih. Menjalankan utilitas xev saya memang melihat banyak info, meskipun fungsi gulir ke atas dan ke bawah dipetakan ke tombol 4 dan 5, saya tidak mendapatkan acara ketika saya memiringkan roda gulir, atau ketika saya mengklik dua tombol samping. Ada ide mengapa?
ysap

Mungkin karena alasan tertentu sistem Anda tidak mengenali sinyal yang dikirim dari mouse. Jika demikian, Anda harus melihat kode kesalahan di / var / log / messages atau di dmesg. Baca lebih lanjut tentang masalah ini dan cara memperbaikinya di url ini jveweb.net/en/archives/2011/01/... Jika itu bukan masalahnya, kita harus memeriksanya lebih lanjut.
jarvisschultz

ok, saya melihat log dmesg. itu adalah daftar pesan yang cukup panjang. Apa sebenarnya yang harus saya cari?
ysap

BTW, saya tidak menyebutkannya dalam pertanyaan tetapi mungkin membantu - Saya menggunakan Ubuntu sebagai OS tamu di VMware Player di Windows 7. Dari pengalaman saya dengan beberapa perangkat, emulasi ini cukup bagus, apakah Ubuntu pasti harus melihat semua pesan yang dikirim oleh mouse.
ysap

1
Mungkinkah ada yang sudo apt-get install xvkbdhilang di sini?
c_korn

5

Inilah yang saya lakukan. Tidak ada sudoperintah atau paket baru yang diperlukan:

  • Saya menguji tombol saya dengan xev-> semua tombol sesuai dengan nilai tertentu, yang berarti mereka dikenali oleh sistem
  • periksa perangkat dengan xinput list-> mouse terdaftar dengan ID 9 dalam kasus saya
  • xinput list-props 9 menunjukkan pemetaan saat ini dan terutama bercerita tentang label tombol -> sepertinya kata pengantar / mundur terkait dengan tombol 8 dan 9 yang tidak saya miliki (kemiringan roda adalah 6 dan 7 dan dipetakan ke pengguliran horizontal)
  • mengikat ulang binding melalui xmodmapsebagaimana ditafsirkan oleh X adalah solusi paling nyaman bagi saya. Lima tombol pertama tidak boleh diubah (klik tengah kanan kiri dan naik turun atas), tetapi tombol yang melaporkan sebagai tombol 6 & 7 harus menavigasi ke depan / ke belakang
  • mengeksekusi xmodmap -e "pointer = 1 2 3 4 5 8 9 6 7 10 11 12 13 14 15 16"di terminal menukar tombol 6 dan 7 dengan 8 dan 9 (secara virtual)
  • jika pemetaan ini tidak berhasil untuk Anda mengembalikan default dengan xmodmap -e "pointer = default"dan mencoba pemetaan yang berbeda
  • Sekarang saya memiliki perintah swap tombol di Aplikasi Startup saya untuk dieksekusi setelah login
  • tampaknya juga mungkin man xmodmapuntuk menyimpan perintah ini dalam file yang dipanggil ~/.xmodmaprcatau menambahkan instruksi~/.bashrc

Bekerja untukku. Semoga ini membantu.


1
+1: xmodmapPendekatan ini langsung bekerja untuk saya, tetapi ... apakah mungkin untuk memodifikasi pemetaan untuk mouse tertentu?
MestreLion

4

Inilah yang bekerja untuk saya:

1) Instal xbindkeys

sudo apt-get install xbindkeys

2) Instal xautomation

sudo apt-get install xautomation

3) Buat file .xbindkeysrc di direktori home Anda dengan ini di dalamnya:

# History Back & Forward
"xte 'keydown Alt_L' 'key Left' 'keyup Alt_L' "
  b:6
"xte 'keydown Alt_L' 'key Right' 'keyup Alt_L' "
  b:7

4) Buka Aplikasi Startup dan tambahkan program dengan perintah xbindkeys.

5) Keluar & masuk

Sumber: Forum Ubuntu


Terima kasih, B-Scan. Saya berasumsi Anda bermaksud memasukkan file ke direktori home saya. Saya meletakkannya di sana dan menambahkan xbindkeysentri ke Startup Apps, keluar dan masuk dan ... itu tidak berfungsi :-(
ysap

Ya, direktori rumah. Sekarang saya melihat bahwa Anda menggunakan VMware. Mungkin bisa terkait dengan ini ?
B-Scan

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.