Saya ingin mengubah binding tombol pada beberapa tombol di keyboard saya. Saya ingin beberapa menjalankan perintah dan yang lainnya untuk mengaktifkan kunci yang berbeda.
Aplikasi apa yang dapat saya gunakan untuk melakukan ini?
Indeks:
Keyboard standar dan pengaturan pintasan (dari dalam Pengaturan Sistem)
- xkb
xkb
-answer: askubuntu.com/a/347382/354350Jawaban:
xbindkeys ..
Xbindkeys adalah program yang sangat serbaguna yang memungkinkan Anda memetakan kembali kunci dengan sangat mudah. Ini menggunakan file konfigurasi, default saya terletak di direktori home Anda, untuk mengubah binding kunci menjadi perintah tertentu.
Untuk membuat file konfigurasi default, Anda menggunakan perintah:
Yang mencetak file konfigurasi default. Jadi jika Anda ingin membuat file yang berisi nilai-nilai default yang akan Anda gunakan:
Yang mencetak nilai default ke file tersembunyi bernama
.xbindkeysrc
terletak di home (~
).Sekarang untuk benar-benar mengubah ikatan kunci pertama-tama kita perlu tahu apa nama atau kunci dari kunci tersebut.
xbindkeys
memungkinkan kita menggunakan-k
pegangan untuk menemukan nama kunci atau kombinasi tombol. Lari:Dan tekan tombol atau kombinasi tombol. Output Anda akan terlihat sesuatu yang mirip dengan ini (saat menekan space):
"No Command"
memberitahu kita bahwa saat ini tidak ada perintah yang dikaitkan dengan Spacekunci.Merupakan nama kunci / kombinasi tombol.
file konfigurasi ..
Mari kita buka file konfigurasi yang Anda buat sebelumnya:
Berikut adalah kutipan dari file konfigurasi default:
Setiap baris yang diawali dengan
#
adalah komentar dan tidak akan dibaca atau dijalankan olehxbindkeys
.Sejauh ini satu-satunya kalimat yang tidak dikomentari adalah:
Kutipan ini menunjukkan sintaks dasar
xbindkeys
perintah:Jadi seperti yang Anda lihat:
Jalankan perintah
xbindkeys_show
ketika Anda menekan Ctrl+ Shift+ q.ikat kunci ke perintah ..
Sekarang mari kita coba mengikat beberapa tombol. Saya sarankan membersihkan seluruh file default sehingga kosong. Ini berisi binding kunci preset yang mungkin tidak Anda inginkan.
Sekarang katakanlah Anda ingin menggunakan Ctrl+ buntuk membuka browser Anda. Pertama, Anda perlu tahu apa nama atau Keysym dari Ctrl+ badalah. Seperti yang disebutkan sebelumnya, Anda dapat menggunakan
xbindkeys -k
untuk menemukan nama kunci atau kunci, tetapi ada cara yang lebih mudah. Untuk kombinasi sederhana seperti Ctrl+ bAnda cukup menggunakan:Jauh lebih mudah, bukan!
Sekarang temukan perintah untuk browser favorit Anda:
Untuk Firefox:
firefox
Untuk Chromium:
chromium-browser
Untuk Opera:
opera
Ingat sintaks dari sebelumnya? The
xbindkeys
perintah untuk meluncurkan Firefox (atau browser favorit Anda yang lain) ketika Anda menekan Ctrl+ badalah:Sekarang masukkan itu ke file konfigurasi Anda dan simpan. Sekarang Anda mungkin melihat perintah Anda belum berfungsi, itu karena
xbindkeys
tidak berjalan. Untuk memulainya jalankanxbindkeys
dari terminal. Ctrl+ Anda bsekarang harus memulai browser Anda!ikat kunci ke kunci lain ..
Jika Anda ingin kunci pada keyboard Anda memanggil tombol lain pada keyboard Anda, Anda akan memerlukan perangkat lunak tambahan karena
xbindkeys
tidak mendukung ini sendiri. Saya tahu dua program yang bisa kita gunakan,xdotool
danxte
. Saya lebih sukaxte
jadi saya akan menggunakannya.Pasang itu:
Sintaksnya
xte
seperti ini:Contoh:
Untuk memanggil satu tombol tekan:
xte 'key keyName'
Untuk memanggil kombinasi tombol:
xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName
Untuk memanggil tombol mouse:
xte 'mouseclick buttonNumber'
(Kami akan membahas menemukan nomor tombol sedikit kemudian)Untuk memindahkan mouse:
xte 'mousemove xCoordinate yCoordinate'
Dan lagi! Baca
man xte
Sekarang setelah Anda tahu perintah untuk mensimulasikan penekanan tombol, Anda dapat memanggilnya dari
xbindkeys
skrip Anda , seperti ini:Seperti yang Anda duga, ini akan memanggil
xte 'key b'
ketika kita menekan Ctrl+ b, yang akan memasukkan bke dalam dokumen apa pun yang sedang Anda kerjakan.Namun yang perlu saya perhatikan adalah itu
xbindkeys
danxte
tidak selalu bekerja dengan sangat baik. Terkadang Anda harus menekan tombol tepat pada saat yang sama untuk mendapatkan output, di lain waktu itu berfungsi dengan baik. Ini mungkin atau mungkin tidak ada hubungannya dengan konfigurasi sistem dan / atau perangkat keras .. Saya tidak yakin. Lihat jawaban maggotbrain untuk cara yang lebih dapat diandalkan untuk mengikat kunci ke kunci lain.ikat tombol mouse ke perintah ..
Anda juga dapat menggunakan
xbindkeys
untuk mengikat tombol mouse ke perintah (dan karenanya pintasan keyboard, lihat di atas). Format dasar untuk tombol mouse sudah tidak asing lagi bagi Anda sekarang:Di mana
[command to run]
perintah yang ingin Anda jalankan dann
jumlah tombol mouse yang ingin Anda gunakan untuk perintah itu.Jika Anda tidak tahu jumlah tombol mouse yang dapat Anda gunakan
xev
untuk mencari tahu apa itu:Outputnya akan seperti ini:
Ketika saya menekan masing-masing tombol mouse saya.
Sebagai contoh:
Meluncurkan firefox ketika saya menekan tombol mouse tengah saya.
sumber
Xev dan xmodmap
Mengubah binding kunci menggunakan
xev
danxmodmap
.Kedua aplikasi baris perintah tersedia secara default, sehingga tidak perlu menginstal perangkat lunak tambahan.
Xev "membuat jendela dan kemudian meminta server X untuk mengirimkannya peristiwa kapan pun sesuatu terjadi pada jendela (seperti dipindahkan, diubah ukurannya, diketik, diklik, dll.)." halaman manual xev
xmodmap adalah "program yang digunakan untuk mengedit dan menampilkan peta pengubah keyboard dan tabel keymap yang digunakan oleh aplikasi klien untuk mengonversi kode acara ke dalam keysyms." halaman manual xmodmap
Contoh berikut akan memetakan ulang Caps_Lockkunci perilaku Esckunci (Banyak pengguna vi / vim menemukan ini sebagai pemetaan keyboard yang berguna).
Menggunakan xev
Mulai
xev
aplikasi dari jendela terminal ( Ctrl- Alt- t).Aplikasi akan menginisialisasi, menampilkan sejumlah baris, dan memulai jendela kosong. Jaga agar
xev
jendela aplikasi tetap fokus, dan tekan tombol yang properti / perilakunya ingin Anda gunakan.Di jendela terminal, Anda akan melihat beberapa jalur output. Catat baris ke-3 yang dikembalikan. Ini akan berisi nama properti yang ingin Anda pindahkan ke kunci lainnya.
Dalam hal ini, Esckunci (kode 9) menggunakan nama "Escape" .
Kali ini kami sedang mencari kode kunci yang Caps Lockdigunakan.
Sekali lagi, perhatikan baris ke-3:
Menggunakan xmodmap
Sekarang kami telah memperoleh informasi tentang kunci yang ingin kami ubah
xev
, kami akan gunakanxmodmap
untuk memodifikasi keymaps. Dari terminal perintah ( Ctrl+ Alt+ t), jalankan perintah berikut:Perintah ini memodifikasi Caps Lockuntuk menggunakan perilaku yang sama denganEsc
Opsi ini mencetak tabel keymap sebagai ekspresi ke dalam file
~/.Xmodmap
Aktifkan perubahan (hanya untuk sesi login ini) dengan perintah berikut:
Membuat perubahan terus-menerus di seluruh reboot:
Jika tidak ada, buat file di folder rumah Anda yang disebut
.xinitrc
.Tempatkan baris berikut dalam file dan simpan file:
Memodifikasi kunci dengan perilaku status yang berbeda
(seperti Num Lock)
Dapatkan tabel keymap untuk kunci pengubah (keluaran disingkat di sini)
Jika Anda ingin mengubah, misalnya, perilaku tanda titik pada Del/ Periodtombol pada tombol angka, ke koma, gunakan perintah berikut:
Perhatikan bahwa ini menggunakan
mod2
keymapping untuk mengubah perilaku kunci ketika pengubah Num Lockditekan. Sintaks untuk ini adalah:Sumber
sumber
Secara default (Ini hanya untuk melengkapi jawaban Excellent oleh Seth), Ubuntu (Dalam contoh ini saya menggunakan 16,04) memiliki 2 kategori yang datang secara default di Pengaturan Sistem:
Untuk masuk ke Pengaturan Sistem, di Atas Klik kanan pada ikon Roda Gigi :
Kemudian pilih Pengaturan Sistem :
Di sini Anda akan menemukan 2 opsi yang dapat mengirim Anda ke bagian Pembuatan Pintasan.
Jika Anda memilih Entri Teks, Anda harus memilih Tautan Pengaturan Keyboard di Kanan Bawah yang akan mengirim Anda langsung ke opsi Pintasan.
Jika Anda memilih opsi Keyboard , Anda harus mengklik Tab Pintasan
Setelah tiba di tab Pintasan, Anda akan memilih Pintasan Khusus di bagian bawah daftar di sisi kiri:
Dan kemudian klik pada Tanda Plus di bagian bawah untuk mulai membuat Pintasan Anda sendiri:
Dari sana, hanya masalah Anda menambahkan nama jalan pintas (Jangan bingung nama jalan pintas, untuk nama perintah yang sebenarnya Anda akan jalankan). Dan di bawah ini, di bidang Command, adalah tempat Anda akan meletakkan perintah apa yang akan dieksekusi untuk pintasan ini. Dalam contoh berikut ini saya beri nama Pintasan "Sublime Text 3" untuk mengetahui apa kaitannya dengan pintasan tertentu. Dan di bidang perintah saya menambahkan perintah yang sebenarnya
subl
.Anda akan berakhir dengan yang berikut di layar yang menunjukkan bahwa, karena pintasan belum memiliki kunci atau kombinasi tombol yang ditetapkan, itu Dinonaktifkan secara default:
Kami kemudian akan mengklik pesan "Dinonaktifkan" untuk menambahkan kombinasi kunci untuk itu:
Di bagian ini, saya menetapkan kombinasi tombol SHIFT+ CTRL+ Ssehingga ketika saya menekan kombinasi ini akan membuka Sublime Text App.
Setelah itu, Anda cukup menguji kombinasi Anda dengan menekan kombinasi tombol yang sesuai dan melihat aplikasi terbuka:
CATATAN: Untuk kombinasi khusus seperti yang membunuh X Server, saya sarankan mengunjungi tautan berikut: Bagaimana cara mengaktifkan Ctrl-Alt-Backspace untuk membunuh X server?
sumber
If you click on the Options button at the bottom right (Found on 13.04 or previous versions)...
Di mana tombol opsi pada versi> 13.04?Buka Pengaturan Sistem → Keboard , pilih tab Pintasan dan tambahkan pintasan khusus baru untuk browser Anda. Jika brouser default Anda adalah Firefox, gunakan
firefox
untuk di kolom perintah; jika brouser default Anda adalah Firefox, gunakanchromium-browser
, dan sebagainya:sumber
Anda dapat membuat pintasan keyboard yang rumit (multi-tombol) dengan menginstal AutoKey dari pusat perangkat lunak. Tidak seperti xmodmap, AutoKey tidak mengubah kunci yang sebenarnya pada keyboard Anda; ini berjalan di latar belakang dan memotong pintasan keyboard yang Anda tentukan, kemudian mengirimkan penekanan tombol yang disimulasikan ke aplikasi Anda.
Pertama kali Anda meluncurkan AutoKey, itu akan memulai layanan di latar belakang (ikon pemberitahuan belum diperbarui untuk persatuan, jadi tidak ada indikasi visual). Setelah berjalan, Anda dapat membuka antarmuka konfigurasi dengan menjalankan peluncur lagi:
Sekarang buka Edit> Preferences dan pilih "Mulai AutoKey secara otomatis saat login" untuk memastikan bahwa pintasan Anda berfungsi kapan pun Anda masuk.
Memetakan pintasan keyboard ke pintasan keyboard lain
Ketik kunci yang Anda inginkan untuk memetakan ke dalam kotak teks.
+
antara mereka (misalnya<ctrl>+c
akan menyalin di sebagian besar aplikasi;<ctrl>+c<ctrl>+n<ctrl>+v
akan membuat dokumen baru yang berisi pilihan;<shift>+ubuntu
akan mengetik teks "Ubuntu")Tekan tombol "Set" di sebelah "Hotkey". Ini akan memunculkan dialog yang memungkinkan Anda untuk menentukan kombinasi tombol yang Anda inginkan untuk memetakan dari :
Pilih File> Simpan
Contoh konfigurasi yang selesai (yang dikirim
<enter>
saat Anda menekan<ctrl>+m
) terlihat seperti ini:sumber
Coba ini:
Instal program yang disebut XKeyCaps. Untuk menginstal, cukup tekan Ctrl+ Alt+ Tdi keyboard Anda untuk membuka Terminal. Saat terbuka, jalankan perintah di bawah ini:
Setelah diinstal, Anda dapat melakukan xkeycaps saat diminta untuk menjalankan program. Setelah berjalan, pilih tata letak keyboard yang tepat, dan klik OK
Kemudian ketika Anda mendapatkan keyboard di layar klik kanan tombol yang Anda inginkan, dalam kasus Anda itu S, dan pilih tombol pertukaran.
Pastikan untuk menambahkan baris di bawah ini ke sesi Anda sehingga autostart setiap kali Anda boot.
Sumber: UFM ytsejam1138
sumber
uname-n
seharusnyauname -n
?unmae-n
. Saya tidak memiliki akses ke mesin Ubuntu untuk diuji, tetapi begitu saya melakukannya, saya akan memeriksanya lebih lanjut.Jika Anda hanya ingin memetakan kembali kunci, jawaban lainnya sangat bagus.
Namun, ada cara lain untuk mendekatinya. AutoKey adalah prosesor makro keyboard yang memungkinkan Anda untuk mengaitkan kombinasi tombol / pengubah dengan skrip yang dapat melakukan hampir semua hal yang dapat Anda lakukan dari keyboard dan banyak lagi.
AutoKey memiliki perekam skrip dan cara sederhana untuk memasukkan urutan kunci dasar, tetapi skripnya ditulis dengan Python dan dapat melakukan hampir semua hal yang Anda bisa kodekan.
Cara termudah untuk menggunakannya adalah mengirimkannya keystrokes ke aplikasi / desktop Anda. Ketika digunakan dengan cara ini, sistem / aplikasi tidak dapat mengatakan bahwa itu bukan Anda mengetik, jadi tidak ada API atau antarmuka lain yang diperlukan, mereka hanya melakukan apa yang Anda "ketikkan".
AutoKey juga dapat memproses frasa. Saat Anda mengetik string karakter pemicu, itu dapat menggantikan teks baru untuk string itu (baik segera atau setelah Anda mengetik karakter pemisah seperti baris atau tab baru.)
Ini juga memiliki filter jendela sehingga Anda dapat membatasi frase atau skrip tertentu untuk hanya berjalan di jenis jendela tertentu (seperti yang memiliki Mozilla dalam judul sehingga mereka hanya bekerja dalam hal-hal seperti Firefox atau Thunderbird).
AutoKey saat ini memiliki versi Gtk dan Qt.
Suntingan:
Petunjuk pemasangan
Forum Pengguna Forum pengguna aktif.
Ada beberapa contoh skrip di wiki. Karena ini terutama aplikasi GUI dengan banyak opsi, contohnya akan memerlukan banyak tangkapan layar dan seluruh artikel.
Saya memiliki frasa yang ditentukan sehingga ketika saya mengetik " Jmail! ", Itu langsung menggantikannya dengan alamat email saya yang agak panjang.
Saya menulis sebuah skrip yang dipicu oleh pengetikan Ctrl- Pyang hanya aktif di windows yang memiliki "Mozilla" pada judulnya. Mengetik Ctrl- Pmemunculkan dialog cetak (Firefox atau Thunderbird), memilih Cetak ke File dan kemudian mengisi nama file cetak berikutnya yang tersedia dalam antrian cetak saya (saya beri nomor 01, 02, ... dan skrip membaca antrian direktori, temukan nomor file terakhir dan tambahkan 1). Saya menggunakannya dengan perangkat lunak emulasi pencetakan dupleks ( duplexpr ) untuk menghilangkan satu ton penekanan tombol dan gerakan mouse.
Saya telah melihat beberapa skrip lain dari gamer yang memungkinkan mereka mengakses informasi tentang karakter dan sumber daya mereka dengan sangat cepat sehingga mereka dapat tetap fokus pada aksinya.
sumber
MENGGUNAKAN KUNCI KEYBOARD SEBAGAI TOMBOL MOUSE
Anda mungkin ingin memetakan tombol keyboard ke tombol mouse. Jika Anda ingin mengklik menggunakan tombol keyboard (berguna jika Anda memiliki macbook atau tombol trackpad yang buruk) maka Anda dapat melakukan hal berikut.
instal beberapa utilitas:
temukan kode kunci untuk kunci yang ingin Anda petakan:
xev | grep keycode
terminaltekan tombol minat dan garis seperti ini akan muncul:
menggunakan kode kunci, remap kunci untuk melakukan hal yang sama seperti tombol kiri mouse:
xkbset m
xmodmap -e "keycode 64 = Pointer_Button1"
Pointer_Button3
adalah tombol kanan mouse danPointer_Button2
tengah.sumber
Menggunakan xkb
xkb
adalah ekstensi X Keyboard. Ini bertanggung jawab untuk memetakan kunci keyboard Anda ke fungsi yang ditentukan.xkb
simbol dapat ditemukan di/usr/share/X11/xkb/symbols/
. Kunci pengubah dipetakan/usr/share/X11/xkb/symbols/pc
.Katakanlah, saya perlu mengganti fungsi
Caps Lock
danLeft Control
tombol. Perubahan ini diperlukan untukpc
file:Untuk menerapkan pemetaan baru, Anda perlu menghapus
xkb
cache dari/var/lib/xkb
:Sekarang, restart saja sesi X Anda dan Anda siap melakukannya.
Sumber: https://radu.cotescu.com/remapping-keys-in-ubuntu-14.04/
Sunting: Melakukan bagian
ls
dalamsymbols
direktori memberikan ini:Pemetaan di dalam file
ru
didasarkan pada keyboard standar Rusia. Themacintosh_vndr
folder berisi pemetaan untuk keyboard Apple. Singkatnya, pendekatan ini sangat fleksibel. Silakan bermain dengan itu :)sumber
/usr/share/X11/xkb/symbols/pc
.Ternyata itu di bawah aplikasi 'keyboard'.
Jika Anda memunculkannya, Anda dapat mengubah pintasan sesuai kebutuhan ...
Perubahan agak aneh pada penggunaan pertama. Anda mengklik di sebelah kanan (kolom yang memiliki ctrl-alt-T, Dinonaktifkan, dll. Lalu klik tombol yang sebenarnya, misalnya ctrlaltbyang Anda inginkan. Anda akan melihat urutan kunci baru muncul sekarang di ruang itu. Tutup jendela ( atau klik saja) dan pintasan baru sekarang akan berfungsi.
sumber
Pintasan sudah ada sebagai WWW, cukup ubah ke Ctrl+ Alt+ b. Tidak perlu membuat yang baru.
sumber
Manajer Pengaturan CompizConfig (CCSM)
CCSM memungkinkan Anda mengubah beberapa pintasan keyboard sistem.
Untuk menginstalnya, gunakan Pusat Perangkat Lunak, atau perintah ini:
Sebagai contoh
Saya menggunakannya untuk mengubah pintasan "Window spread" dari Super+ default Wke Super+ Tab, seperti pada Windows 10. Dari jawaban saya di utas lain :
sumber
Saya ingin menekan Print Screen untuk menyimpan tangkapan layar menggunakan
gnome-screenshot
aplikasi, seperti pada MintTapi saya ingin melakukannya dengan menggunakan terminal, bukan GUI, karena saya ingin menjadikannya default saat membuat ISO kustom menggunakan
squashfs
alat.Pertama saya menginstal gnome-screenshot menggunakan perintah
Kemudian saya menetapkan pintasan khusus menggunakan Pengaturan -> Keyboard -> Pintasan khusus -> tombol Tambah (+) ->
Dalam dialog:
Tekan Tambah Tombol
Kemudian tekan Print screentombol.
Kunci sekarang terikat, dan saya dapat menyimpan tangkapan layar sesuai kebutuhan.
Tetapi tidak menggunakan terminal, itu cara GUI
Kemudian saya instal
dconf-editor
menggunakanDan mencari
gnome-screenshot
saya menemukan binding kunci kustom saya di jalur ini
Nilai kunci adalah:
Sekarang saya menyalin ini dan menghapus kunci pintas kustom GUI
Saya membuka terminal dan mengetik perintah ini
Dan voila
Sekarang saya dapat menyimpan tangkapan layar tanpa menggunakan GUI
dconf
dan terminal saja. Saya tidak perludconf-editor
lagi, itu hanya diinstal untuk mendapatkan nilai.sumber
Saya mencoba solusi Kevin (pendekatan xmodmap) di ubuntu 18.04. Itu tidak berhasil dalam kasus saya. Namun prosedur ini akhirnya berhasil:
xmodmap .Xmodmap
dalam file yang disebut.xsession
bukan.xinitrc
./home/<YOUR_USER_NAME>/.xsession
sebagai perintah.sumber