Khi bạn nhấn Ctrl+ Ltrong chế độ mặc định bash, màn hình sẽ bị xóa. Nhưng khi tôi chạy set -o vi
và nhấn Ctrl+ Ltổ hợp phím được in ( ^L
). Có cách nào để giữ hành vi này?
Khi bạn nhấn Ctrl+ Ltrong chế độ mặc định bash, màn hình sẽ bị xóa. Nhưng khi tôi chạy set -o vi
và nhấn Ctrl+ Ltổ hợp phím được in ( ^L
). Có cách nào để giữ hành vi này?
Câu trả lời:
Ctrl+ Lcũng bị ràng buộc trong chế độ lệnh vi nhưng không ở chế độ chèn. Không có ràng buộc mặc định cho clear-screen
trong chế độ chèn. Các ràng buộc đọc nên được chỉ định trong ~/.inputrc
, như vậy:
set editing-mode vi
$if mode=vi
set keymap vi-command
# these are for vi-command mode
Control-l: clear-screen
set keymap vi-insert
# these are for vi-insert mode
Control-l: clear-screen
$endif
Điều này sẽ liên kết Ctrl+ Lđể xóa màn hình ở cả chế độ bình thường và chế độ chèn. Đương nhiên, nếu bạn chỉ muốn sử dụng nó trong một chế độ, chỉ cần loại bỏ tùy chọn có liên quan.
Có một danh sách rộng lớn các lệnh readline mà bạn có thể sử dụng để tùy chỉnh bash shell của mình.