xbindkey ..
sudo apt-get install xbindkeys
Xbindkeys là một chương trình rất linh hoạt cho phép bạn sắp xếp lại các phím rất dễ dàng. Nó sử dụng một tập tin cấu hình, mặc định của tôi nằm trong thư mục chính của bạn, để thay đổi các ràng buộc chính thành các lệnh nhất định.
Để tạo một tệp cấu hình mặc định, bạn sử dụng lệnh:
xbindkeys --defaults
Mà in tập tin cấu hình mặc định. Vì vậy, nếu bạn muốn tạo tệp chứa các giá trị mặc định bạn sẽ sử dụng:
xbindkeys --defaults > $HOME/.xbindkeysrc
Mà in các giá trị mặc định thành một tệp ẩn có tên .xbindkeysrc
nằm trong home ( ~
).
Bây giờ để thực sự thay đổi các ràng buộc của các khóa, trước tiên chúng ta cần biết tên hoặc keyym của các phím đó là gì. xbindkeys
cho phép chúng ta sử dụng -k
tay cầm để tìm tên của tổ hợp phím hoặc khóa. Chạy:
xbindkeys -k
Và nhấn một phím hoặc tổ hợp phím. Đầu ra của bạn sẽ xem xét một cái gì đó tương tự như sau (khi nhấn space):
"NoCommand"
m:0x10 + c:65
Mod2 + space
"No Command"
cho chúng tôi biết rằng hiện tại không có lệnh nào được liên kết với Spacekhóa.
m:0x10 + c:65
Mod2 + space
Là tên của tổ hợp phím / khóa.
tập tin cấu hình ..
Cho phép mở tệp cấu hình bạn đã thực hiện trước đó:
gedit .xbindkeysrc
Đây là một đoạn trích từ tập tin cấu hình mặc định:
#
# 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
Mỗi dòng bắt đầu bằng #
một nhận xét và sẽ không được đọc hoặc điều hành xbindkeys
.
Cho đến nay, dòng duy nhất không được bình luận là:
"xbindkeys_show"
control+shift + q
Đoạn trích này cho thấy cú pháp cơ bản của xbindkeys
các lệnh:
"Command to run (in quotes)"
key to associate with command (no quotes)
Vì vậy, như bạn có thể thấy:
"xbindkeys_show"
control+shift + q
Chạy lệnh xbindkeys_show
khi bạn nhấn Ctrl+ Shift+ q.
liên kết các phím với các lệnh ..
Bây giờ hãy thử ràng buộc một vài phím. Tôi khuyên bạn nên xóa toàn bộ tệp mặc định để nó trống. Nó chứa các ràng buộc khóa cài sẵn mà bạn có thể không muốn.
Bây giờ hãy nói rằng bạn muốn sử dụng Ctrl+ bđể mở trình duyệt của mình. Trước tiên, bạn cần biết tên hoặc keyym của Ctrl+ blà gì. Như đã đề cập trước đó, bạn có thể sử dụng xbindkeys -k
để tìm tên của một phím hoặc khóa, nhưng có một cách dễ dàng hơn. Đối với các kết hợp đơn giản như Ctrl+ bbạn chỉ có thể sử dụng:
Control+b
Dễ dàng hơn nhiều phải không!
Bây giờ hãy tìm lệnh cho trình duyệt yêu thích của bạn:
Ghi nhớ cú pháp từ trước? Các xbindkeys
lệnh để khởi động Firefox (hoặc trình duyệt yêu thích khác của bạn) khi bạn nhấn Ctrl+ blà:
"firefox"
Control+b
Bây giờ đặt nó trong tập tin cấu hình của bạn và lưu nó. Bây giờ bạn có thể nhận thấy lệnh của bạn chưa hoạt động, đó là vì xbindkeys
không chạy. Để bắt đầu nó chỉ cần chạy xbindkeys
từ một thiết bị đầu cuối. Ctrl+ bBây giờ bạn nên khởi động trình duyệt của bạn!
liên kết các phím với các khóa khác ..
Nếu bạn muốn một phím trên bàn phím của bạn để gọi một phím khác trên bàn phím của bạn, bạn sẽ cần thêm một phần mềm vì xbindkeys
nó không hỗ trợ điều này trên chính bàn phím đó. Tôi biết hai chương trình mà chúng ta có thể sử dụng xdotool
và xte
. Tôi thích xte
vì vậy tôi sẽ sử dụng nó.
Cài đặt nó:
sudo apt-get install xautomation
Cú pháp cho xte
như thế này:
xte 'command key/mousebutton/xyCoordinates'
Ví dụ:
Để gọi một phím bấm: xte 'key keyName'
Để gọi một tổ hợp phím: xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName
Để gọi nút chuột: xte 'mouseclick buttonNumber'
(Chúng ta sẽ thảo luận về việc tìm số nút sau một chút)
Để di chuyển chuột: xte 'mousemove xCoordinate yCoordinate'
Và nhiều hơn nữa! Đọcman xte
Bây giờ bạn đã biết lệnh mô phỏng các phím bấm, bạn có thể gọi nó từ xbindkeys
tập lệnh của mình , như thế này:
"xte 'key b'"
Control+b
Như bạn có thể đoán, cuộc gọi này xte 'key b'
khi chúng tôi nhấn Ctrl+ b, sẽ nhập bvào bất kỳ tài liệu nào bạn có thể đang làm việc.
Tuy nhiên, điều tôi cần lưu ý là xbindkeys
và xte
không phải lúc nào cũng làm việc rất tốt với nhau. Đôi khi bạn phải nhấn các phím chính xác cùng một lúc để có được đầu ra, lần khác nó hoạt động tốt. Điều này có thể hoặc không liên quan đến cấu hình hệ thống và / hoặc phần cứng .. Tôi không chắc chắn. Xem câu trả lời của maggotbrain để biết cách liên kết các khóa đáng tin cậy hơn với các khóa khác.
liên kết các nút chuột với các lệnh ..
Bạn cũng có thể sử dụng xbindkeys
để liên kết các nút chuột với các lệnh (và các phím tắt từ đó, xem bên trên). Định dạng cơ bản cho các nút chuột bây giờ đã quen thuộc với bạn:
" [command to run] "
b:n
Đâu [command to run]
là lệnh bạn muốn chạy và n
số nút chuột bạn muốn sử dụng cho lệnh đó.
Nếu bạn không biết số lượng nút chuột, bạn có thể sử dụng xev
để tìm hiểu xem đó là gì:
xev | grep button
Đầu ra sẽ giống như thế này:
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
Khi tôi nhấn từng nút chuột.
Ví dụ:
" firefox "
b:2
Khởi chạy firefox khi tôi nhấn nút chuột giữa.