Bagaimana cara saya mengubah tombol apa pada keyboard saya? (Bagaimana cara membuat perintah / pintasan keyboard khusus?)

131

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:


Saya masih mencari jawaban menggunakan dconf dan metode lainnya.

Seth
sumber
Apakah xmacro termasuk dalam jawaban ini? dapat "Rekam / Mainkan penekanan tombol dan gerakan mouse dalam tampilan X".
roadmr
@roadmr Jika saya bisa menggunakannya untuk membuat pintasan keyboard khusus, maka ya!
Seth
Terima kasih telah menambahkan utas ini. Saya mencari cara untuk menggunakan kunci seperti tombol mouse (tahan dan seret, klik, dll). Ini sepertinya hilang dari utas.
krumpelstiltskin
@ Krumpelstiltskin Saat ini saya tidak mengetahui cara untuk mencapai duplikasi yang tepat seperti mouse. Saya sarankan Anda mengajukan pertanyaan baru. Jika saya mengetahuinya saya masih bisa menjawab di sana, atau orang lain mungkin memiliki jawaban yang lebih baik :)
Seth
1
ini adalah xkb-answer: askubuntu.com/a/347382/354350
DJCrashdummy

Jawaban:

94

xbindkeys ..

sudo apt-get install 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:

xbindkeys --defaults

Yang mencetak file konfigurasi default. Jadi jika Anda ingin membuat file yang berisi nilai-nilai default yang akan Anda gunakan:

xbindkeys --defaults > $HOME/.xbindkeysrc

Yang mencetak nilai default ke file tersembunyi bernama .xbindkeysrcterletak di home ( ~).

Sekarang untuk benar-benar mengubah ikatan kunci pertama-tama kita perlu tahu apa nama atau kunci dari kunci tersebut. xbindkeysmemungkinkan kita menggunakan -kpegangan untuk menemukan nama kunci atau kombinasi tombol. Lari:

xbindkeys -k

Dan tekan tombol atau kombinasi tombol. Output Anda akan terlihat sesuatu yang mirip dengan ini (saat menekan space):

"NoCommand"
m:0x10 + c:65
Mod2 + space

"No Command"memberitahu kita bahwa saat ini tidak ada perintah yang dikaitkan dengan Spacekunci.

m:0x10 + c:65
Mod2 + space  

Merupakan nama kunci / kombinasi tombol.

file konfigurasi ..

Mari kita buka file konfigurasi yang Anda buat sebelumnya:

gedit .xbindkeysrc  

Berikut adalah kutipan dari file konfigurasi default:

#
# A list of keys is in /usr/include/X11/keysym.h and in
# /usr/include/X11/keysymdef.h
# The XK_ is not needed.
#
# List of modifier:
#   Release, Control, Shift, Mod1 (Alt), Mod2 (NumLock),
#   Mod3 (CapsLock), Mod4, Mod5 (Scroll). 
#

# The release modifier is not a standard X modifier, but you can  
# use it if you want to catch release events instead of press events

# By defaults, xbindkeys does not pay attention with the modifiers
# NumLock, CapsLock and ScrollLock.
# Uncomment the lines above if you want to pay attention to them.

#keystate_numlock = enable
#keystate_capslock = enable
#keystate_scrolllock= enable

# Examples of commands:

"xbindkeys_show" 
 control+shift + q  

Setiap baris yang diawali dengan #adalah komentar dan tidak akan dibaca atau dijalankan oleh xbindkeys.

Sejauh ini satu-satunya kalimat yang tidak dikomentari adalah:

"xbindkeys_show" 
 control+shift + q  

Kutipan ini menunjukkan sintaks dasar xbindkeysperintah:

"Command to run (in quotes)"
key to associate with command (no quotes)  

Jadi seperti yang Anda lihat:

"xbindkeys_show" 
 control+shift + q  

Jalankan perintah xbindkeys_showketika 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 -kuntuk menemukan nama kunci atau kunci, tetapi ada cara yang lebih mudah. Untuk kombinasi sederhana seperti Ctrl+ bAnda cukup menggunakan:

Control+b

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 xbindkeysperintah untuk meluncurkan Firefox (atau browser favorit Anda yang lain) ketika Anda menekan Ctrl+ badalah:

"firefox"
Control+b

Sekarang masukkan itu ke file konfigurasi Anda dan simpan. Sekarang Anda mungkin melihat perintah Anda belum berfungsi, itu karena xbindkeystidak berjalan. Untuk memulainya jalankan xbindkeysdari 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 xbindkeystidak mendukung ini sendiri. Saya tahu dua program yang bisa kita gunakan, xdotooldan xte. Saya lebih suka xtejadi saya akan menggunakannya.

Pasang itu:

sudo apt-get install xautomation

Sintaksnya xteseperti ini:

xte 'command key/mousebutton/xyCoordinates'

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! Bacaman xte

Sekarang setelah Anda tahu perintah untuk mensimulasikan penekanan tombol, Anda dapat memanggilnya dari xbindkeysskrip Anda , seperti ini:

"xte 'key b'"
Control+b  

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 xbindkeysdan xtetidak 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 xbindkeysuntuk mengikat tombol mouse ke perintah (dan karenanya pintasan keyboard, lihat di atas). Format dasar untuk tombol mouse sudah tidak asing lagi bagi Anda sekarang:

" [command to run]  "
b:n

Di mana [command to run]perintah yang ingin Anda jalankan dan njumlah tombol mouse yang ingin Anda gunakan untuk perintah itu.

Jika Anda tidak tahu jumlah tombol mouse yang dapat Anda gunakan xevuntuk mencari tahu apa itu:

xev | grep button

Outputnya akan seperti ini:

user@host:~$ xev | grep button
    state 0x10, button 1, same_screen YES
    state 0x110, button 1, same_screen YES
    state 0x10, button 2, same_screen YES
    state 0x210, button 2, same_screen YES
    state 0x10, button 3, same_screen YES
    state 0x410, button 3, same_screen YES

Ketika saya menekan masing-masing tombol mouse saya.

Sebagai contoh:

" firefox "
b:2

Meluncurkan firefox ketika saya menekan tombol mouse tengah saya.

Seth
sumber
Apakah mungkin dengan xbindkeys untuk memetakan Meta + C / V untuk copy / paste dan Meta + Space untuk beralih bahasa?
Sonique
apakah ada cara melampirkan urutan karakter ke satu kunci, misalnya melampirkan "persamaan" ke tombol volume-up?
JPi
55

Xev dan xmodmap

Mengubah binding kunci menggunakan xevdan xmodmap.

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 xevaplikasi dari jendela terminal ( Ctrl- Alt- t).

Aplikasi akan menginisialisasi, menampilkan sejumlah baris, dan memulai jendela kosong. Jaga agar xevjendela aplikasi tetap fokus, dan tekan tombol yang properti / perilakunya ingin Anda gunakan.

  • Tekan ESCtombol

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.

KeyPress event, serial 32, synthetic NO, window 0x3e00001,
    root 0x256, subw 0x0, time 16245388, (616,73), root:(1487,535),
    state 0x10, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
    XLookupString gives 1 bytes: (1b) ""

Dalam hal ini, Esckunci (kode 9) menggunakan nama "Escape" .

  • Tekan Caps Locktombol

Kali ini kami sedang mencari kode kunci yang Caps Lockdigunakan.

Sekali lagi, perhatikan baris ke-3:

KeyRelease event, serial 32, synthetic NO, window 0x4c00001,
    root 0x256, subw 0x0, time 94702774, (862,151), root:(1733,613),
    state 0x10, keycode 66 (keysym 0xffe5, Caps_Lock), same_screen YES,
    XKeysymToKeycode returns keycode: 9
    XLookupString gives 1 bytes: (1b) ""

Menggunakan xmodmap

Sekarang kami telah memperoleh informasi tentang kunci yang ingin kami ubah xev, kami akan gunakan xmodmapuntuk memodifikasi keymaps. Dari terminal perintah ( Ctrl+ Alt+ t), jalankan perintah berikut:

  • Perintah ini memodifikasi Caps Lockuntuk menggunakan perilaku yang sama denganEsc

    xmodmap -e "keycode 66 = Escape"
    
  • Opsi ini mencetak tabel keymap sebagai ekspresi ke dalam file ~/.Xmodmap

    xmodmap -pke > ~/.Xmodmap
    

Aktifkan perubahan (hanya untuk sesi login ini) dengan perintah berikut:

xmodmap ~/.Xmodmap

Membuat perubahan terus-menerus di seluruh reboot:

  • Jika tidak ada, buat file di folder rumah Anda yang disebut .xinitrc.

    touch .xinitrc
    
  • Tempatkan baris berikut dalam file dan simpan file:

    xmodmap ~/.Xmodmap
    

Memodifikasi kunci dengan perilaku status yang berbeda

(seperti Num Lock)

  • Dapatkan tabel keymap untuk kunci pengubah (keluaran disingkat di sini)

    $ xmodmap -pm
    shift       Shift_L (0x32),  Shift_R (0x3e)
    mod2        Num_Lock (0x4d)
    

Jika Anda ingin mengubah, misalnya, perilaku tanda titik pada Del/ Periodtombol pada tombol angka, ke koma, gunakan perintah berikut:

xmodmap -e "keycode 91 mod2 = KP_Delete comma"

Perhatikan bahwa ini menggunakan mod2keymapping untuk mengubah perilaku kunci ketika pengubah Num Lockditekan. Sintaks untuk ini adalah:

xmodmap -e "<KEYCODE> <MODIFIER> = <behaviour> <behaviour_with_modifier>"

Sumber

Kevin Bowen
sumber
2
+1! Saya memiliki atm keyboard korea tanpa tombol alt-gr, dan saya membutuhkannya sehingga jawaban Anda sangat membantu untuk membuatnya berfungsi. Untuk referensi di masa mendatang, dan karena kunci alt-gr bukan yang paling sederhana untuk ditetapkan, berikut adalah perintahnya (saya menggunakan kunci hanja, yang memiliki kode 130): xmodmap -e "keycode 130 = ISO_Level3_Shift Multi_key ISO_Level3_Shift Multi_key"
Shautieh
43

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 :

masukkan deskripsi gambar di sini

Kemudian pilih Pengaturan Sistem :

masukkan deskripsi gambar di sini

Di sini Anda akan menemukan 2 opsi yang dapat mengirim Anda ke bagian Pembuatan Pintasan.

masukkan deskripsi gambar di sini

Jika Anda memilih Entri Teks, Anda harus memilih Tautan Pengaturan Keyboard di Kanan Bawah yang akan mengirim Anda langsung ke opsi Pintasan.

masukkan deskripsi gambar di sini

Jika Anda memilih opsi Keyboard , Anda harus mengklik Tab Pintasan

masukkan deskripsi gambar di sini

Setelah tiba di tab Pintasan, Anda akan memilih Pintasan Khusus di bagian bawah daftar di sisi kiri:

masukkan deskripsi gambar di sini

Dan kemudian klik pada Tanda Plus di bagian bawah untuk mulai membuat Pintasan Anda sendiri:

masukkan deskripsi gambar di sini

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.

masukkan deskripsi gambar di sini

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:

masukkan deskripsi gambar di sini

Kami kemudian akan mengklik pesan "Dinonaktifkan" untuk menambahkan kombinasi kunci untuk itu:

masukkan deskripsi gambar di sini

Di bagian ini, saya menetapkan kombinasi tombol SHIFT+ CTRL+ Ssehingga ketika saya menekan kombinasi ini akan membuka Sublime Text App.

masukkan deskripsi gambar di sini

Setelah itu, Anda cukup menguji kombinasi Anda dengan menekan kombinasi tombol yang sesuai dan melihat aplikasi terbuka:

masukkan deskripsi gambar di sini

CATATAN: Untuk kombinasi khusus seperti yang membunuh X Server, saya sarankan mengunjungi tautan berikut: Bagaimana cara mengaktifkan Ctrl-Alt-Backspace untuk membunuh X server?

Luis Alvarado
sumber
Saya pada 13.10 dan saya tidak memiliki ikon 'Entri Teks' ini di Pengaturan Sistem saya sama sekali. :(
wim
Hai wim dapatkah Anda memberikan tautan ke gambar yang menunjukkan pengaturan sistem Anda.
Luis Alvarado
2
Sayangnya sekarang kita berada di 15,04 jawaban ini berantakan. Layout Keyboard hilang, dan dengan itu kemampuan untuk Membunuh X Server. Tangkapan layar menggabungkan pra-13.04 (siapa yang peduli!?!) Dan tangkapan layar yang lebih baru, dan seseorang memasukkannya di tempat yang salah, jadi "klik Opsi di kanan bawah)" jauh dari tangkapan layar yang sebenarnya, usang, aktual. :-(
skierpage
@skierpage Itulah sebabnya saya membuat jawaban ini: askubuntu.com/questions/367983/… semoga membantu.
Luis Alvarado
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?
dinosaurus
21

Buka Pengaturan SistemKeboard , pilih tab Pintasan dan tambahkan pintasan khusus baru untuk browser Anda. Jika brouser default Anda adalah Firefox, gunakan firefoxuntuk di kolom perintah; jika brouser default Anda adalah Firefox, gunakan chromium-browser, dan sebagainya:

tambahkan pintasan khusus

Radu Rădeanu
sumber
Terima kasih. Lihat juga jawaban saya sendiri untuk beberapa kekhasan tentang benar-benar mengatur kunci. Apakah saya bingung pada awalnya meskipun saya berada di tempat yang tepat.
Michael Durrant
2
Tetapi ini tidak berhasil dalam kasus saya. Ubuntu (karena alasan tertentu) tidak akan membiarkan saya mengatur tombol pintas sama sekali! Saya telah mengikuti sampai langkah 4 (seperti yang ditunjukkan pada gambar). Apakah saya melewatkan sesuatu?
Vaibhav Kaushal
2
Saya lebih suka jawaban ini dari yang tersedia pada pertanyaan rangkap.
Tn. B
3
@VaibhavKaushal: pada Langkah 5 Anda harus mengklik kanan pada "nonaktifkan" kemudian lakukan jalan pintas yang Anda suka, yang akan segera ditampilkan di sana
rubo77
Mulai ulang mungkin diperlukan agar perubahan diterapkan
Shirley Temple
18

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:

masukkan deskripsi gambar di sini

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

  1. Pilih File> Baru> Frasa.
  2. Pastikan "Tempel menggunakan" diatur ke "Keyboard".
  3. Ketik kunci yang Anda inginkan untuk memetakan ke dalam kotak teks.

    • Kunci khusus (bukan karakter) diwakili dengan kode yang didokumentasikan di sini .
    • Jika Anda mengetik beberapa kunci, mereka akan dikirim secara berurutan kecuali Anda menempatkan di +antara mereka (misalnya <ctrl>+cakan menyalin di sebagian besar aplikasi; <ctrl>+c<ctrl>+n<ctrl>+vakan membuat dokumen baru yang berisi pilihan; <shift>+ubuntuakan mengetik teks "Ubuntu")
  4. Tekan tombol "Set" di sebelah "Hotkey". Ini akan memunculkan dialog yang memungkinkan Anda untuk menentukan kombinasi tombol yang Anda inginkan untuk memetakan dari :

    masukkan deskripsi gambar di sini

  5. Pilih File> Simpan

Contoh konfigurasi yang selesai (yang dikirim <enter>saat Anda menekan <ctrl>+m) terlihat seperti ini:

masukkan deskripsi gambar di sini

cscarney
sumber
Catatan: Saat ini, Debian (di mana Ubuntu mendapatkan paket AutoKey) tidak mempertahankan paket AutoKey mereka. Untuk petunjuk pemasangan saat ini, lihat: github.com/autokey/autokey/wiki/Instaling
Joe
15

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:

sudo apt-get install xkeycaps

Setelah diinstal, Anda dapat melakukan xkeycaps saat diminta untuk menjalankan program. Setelah berjalan, pilih tata letak keyboard yang tepat, dan klik OK

masukkan deskripsi gambar di sini

Kemudian ketika Anda mendapatkan keyboard di layar klik kanan tombol yang Anda inginkan, dalam kasus Anda itu S, dan pilih tombol pertukaran.

masukkan deskripsi gambar di sini

Pastikan untuk menambahkan baris di bawah ini ke sesi Anda sehingga autostart setiap kali Anda boot.

xmodmap ~/.xmodmap-`uname-n`

Sumber: UFM ytsejam1138

Mitch
sumber
Apakah uname-nseharusnya uname -n?
wjandrea
Menurut sumbernya unmae-n. Saya tidak memiliki akses ke mesin Ubuntu untuk diuji, tetapi begitu saya melakukannya, saya akan memeriksanya lebih lanjut.
Mitch
8

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.

Joe
sumber
1
Bisakah Anda menambahkan beberapa informasi tentang menginstalnya dan mungkin menggunakannya juga? Itu akan luar biasa!
Seth
AutoKey telah dimigrasi sebagian dari code.google ke GitHub. Lihat github.com/autokey/autokey . Ada juga cabang Python 3 - github.com/guoci/autokey-py3 .
Joe
Versi AutoKey saat ini ada di github.com/autokey/autokey Cabang Python 2 telah didepresiasi.
Joe
7

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.

  1. instal beberapa utilitas:

    sudo apt-get install x11-utils xkbset x11-xserver-utils
    
  2. temukan kode kunci untuk kunci yang ingin Anda petakan:

    • ketik xev | grep keycodeterminal
    • tekan tombol minat dan garis seperti ini akan muncul:

      state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,  
      
  3. menggunakan kode kunci, remap kunci untuk melakukan hal yang sama seperti tombol kiri mouse:

    • xkbset m
    • xmodmap -e "keycode 64 = Pointer_Button1"

Pointer_Button3adalah tombol kanan mouse dan Pointer_Button2tengah.

krumpelstiltskin
sumber
4

Menggunakan xkb

xkbadalah ekstensi X Keyboard. Ini bertanggung jawab untuk memetakan kunci keyboard Anda ke fungsi yang ditentukan. xkbsimbol dapat ditemukan di /usr/share/X11/xkb/symbols/. Kunci pengubah dipetakan /usr/share/X11/xkb/symbols/pc.

Katakanlah, saya perlu mengganti fungsi Caps Lockdan Left Controltombol. Perubahan ini diperlukan untuk pcfile:

key <CAPS> {        [ Control_L             ]       };
key <LCTL> {        [ Caps_Lock             ]       };

Untuk menerapkan pemetaan baru, Anda perlu menghapus xkbcache dari /var/lib/xkb:

rm -rf /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 lsdalam symbolsdirektori memberikan ini:

af        cm            gn       kz              nec_vndr    sk
al        cn            gr       la              ng          sn
altwin    compose       group    latam           nl          sony_vndr
am        ctrl          hp_vndr  latin           no          srvr_ctrl
apl       cz            hr       level3          nokia_vndr  sun_vndr
ara       de            hu       level5          np          sy
at        digital_vndr  ie       lk              olpc        terminate
az        dk            il       lt              pc          th
ba        ee            in       lv              ph          tj
bd        empty         inet     ma              pk          tm
be        epo           iq       macintosh_vndr  pl          tr
bg        es            ir       mao             pt          tw
br        et            is       md              ro          typo
brai      eurosign      it       me              rs          tz
bt        fi            jp       mk              ru          ua
bw        fo            ke       ml              rupeesign   us
by        fr            keypad   mm              se          uz
ca        fujitsu_vndr  kg       mn              sgi_vndr    vn
capslock  gb            kh       mt              sharp_vndr  xfree68_vndr
cd        ge            kpdl     mv              shift       za
ch        gh            kr       nbsp            si

Pemetaan di dalam file rudidasarkan pada keyboard standar Rusia. The macintosh_vndrfolder berisi pemetaan untuk keyboard Apple. Singkatnya, pendekatan ini sangat fleksibel. Silakan bermain dengan itu :)

crisron
sumber
Anda menyebutkan 2 file. File apa yang membuat perubahan? :)
Seth
Saya hanya menyebutkan satu file - /usr/share/X11/xkb/symbols/pc.
crisron
Salahku. Butuh pandangan kedua untuk menyadari bahwa jalur pertama adalah folder, bukan file. Diedit untuk membuatnya sedikit lebih jelas :)
Seth
3

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.

Michael Durrant
sumber
1

Pintasan sudah ada sebagai WWW, cukup ubah ke Ctrl+ Alt+ b. Tidak perlu membuat yang baru.

masukkan deskripsi gambar di sini

Mitch
sumber
1

Manajer Pengaturan CompizConfig (CCSM)

CCSM memungkinkan Anda mengubah beberapa pintasan keyboard sistem.

Untuk menginstalnya, gunakan Pusat Perangkat Lunak, atau perintah ini:

sudo apt-get install compizconfig-settings-manager

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 :

  1. Jalankan CCSM dari Dash.
  2. Pergi ke Window management -> Scale -> tab Bindings -> Initiate Window Picker
  3. Klik pintasan keyboard ( <Super>wdi PC Anda, tetapi <Super>Tabdi tangkapan layar ini).

    CCSM - Manajemen jendela - Skala

  4. Klik Ambil kombinasi tombol , tekan tombol yang diinginkan, lalu klik OK.

    Edit Initiate Window Picker

wjandrea
sumber
1

Saya ingin menekan Print Screen untuk menyimpan tangkapan layar menggunakan gnome-screenshotaplikasi, seperti pada Mint

Tapi saya ingin melakukannya dengan menggunakan terminal, bukan GUI, karena saya ingin menjadikannya default saat membuat ISO kustom menggunakan squashfsalat.

Pertama saya menginstal gnome-screenshot menggunakan perintah

sudo apt-get install gnome-screenshot

Kemudian saya menetapkan pintasan khusus menggunakan Pengaturan -> Keyboard -> Pintasan khusus -> tombol Tambah (+) ->

Dalam dialog:

  • Nama: Tangkapan layar
  • Perintah: gnome-screentshot

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-editormenggunakan

sudo apt-get install dconf-editor

Dan mencari gnome-screenshot
saya menemukan binding kunci kustom saya di jalur ini

/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/

Nilai kunci adalah:

  • mengikat 'Cetak'
  • command 'gnome-tangkapan layar'
  • nama 'layar cetak'

Sekarang saya menyalin ini dan menghapus kunci pintas kustom GUI

Saya membuka terminal dan mengetik perintah ini

dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/command "'gnome-screenshot'"
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/binding  "'Print'"
dconf write /org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/name "'print screen'"

Dan voila

Sekarang saya dapat menyimpan tangkapan layar tanpa menggunakan GUI dconfdan terminal saja. Saya tidak perlu dconf-editorlagi, itu hanya diinstal untuk mendapatkan nilai.

Subhani Minhas
sumber
1

Saya mencoba solusi Kevin (pendekatan xmodmap) di ubuntu 18.04. Itu tidak berhasil dalam kasus saya. Namun prosedur ini akhirnya berhasil:

  • salin xmodmap .Xmodmapdalam file yang disebut .xsessionbukan .xinitrc.
  • mengubah izin file (klik kanan, properti, tab izin, mengubah izin untuk "membaca dan menulis" dan mencentang kotak di jendela)
  • tambahkan aplikasi startup dengan /home/<YOUR_USER_NAME>/.xsessionsebagai perintah.
arash
sumber