Tôi muốn ánh xạ keybinding
Ctrl+ Shift+ Tabin rxvt-unicode
. Tôi quản lý để ánh xạ Ctrl+ Tabnhư sau. Các mục tương ứng trong .Xresources
là
URxvt.keysym.Control-Tab: \033[27;5;9~
Sử dụng cat -v
xác nhận rằng ánh xạ này hoạt động:
$ cat -v
^[[27;5;9~
Trình tự ^[[27;5;9~
sau đó có thể được sử dụng trong các ứng dụng như
vim
ánh xạ Ctrl+ Tab. Tôi mong đợi các .Xresources
mục sau đây để làm việc như nhau.
URxvt.keysym.Control-Shift-Tab: \033[27;6;9~
Tuy nhiên, cat
không hiển thị ánh xạ chính xác:
$ cat -v
^[[Z
Làm thế nào để thiết lập Ctrl+ Shift+ Tablập bản đồ?
Biên tập
Bản đồ
URxvt.keysym.Control-ISO_Left_Tab: \033[27;6;9~
URxvt.keysym.Control-Shift-ISO_Left_Tab: \033[27;6;9~
cư xử như vậy Sau lần nhấn Ctrl+ đầu tiên Tab, nhả cả hai và sau đó nhấn Return hai lần rồi nhấn Ctrl+ Shift+ Tab, giải phóng tất cả và sau đó nhấn Return hai lần tôi nhận được kết quả đầu ra sau:
$ cat -v
^[[27;5;9~
^[[27;5;9~
^[[27;6;9~↵
^[[27;6;9~M-bM-^FM-5
- Trường hợp Ctrl+ Tab: Trả về đầu tiên làm cho đầu vào xuất hiện lại dưới dạng đầu ra.
- Trường hợp Ctrl+ Shift+ Tab: Lợi nhuận đầu tiên tạo ra dấu hiệu
↵
, lợi nhuận thứ hai tạo ra dòng cuối cùng được hiển thị ở trên.
Chỉnh sửa tiếp theo: Thêm thông tin
Điều gì xảy ra nếu bạn nhấn ctrl-shift (nhả cả hai mà không nhấn bất kỳ phím nào), sau đó nhập, trong một cửa sổ khác?
Trong một cửa sổ urxvt khác nhau? Khi tôi nhấn Ctrl + Shift và nhả cả hai phím, một hộp màu vàng rõ ràng xuất hiện ở góc dưới bên trái: KEYCAP PICTURE INSERT
MODE
nó dường như đến từ urxvt, nó không xuất hiện trong các ứng dụng khác.
Hoặc thậm chí chỉ cần ctrl-shift-tab sau đó nhập vào một cửa sổ khác (ý tôi không phải là rxvt, như trong cửa sổ gedit hoặc trình duyệt web hoặc một cái gì đó.)
Tôi nhận được một dòng mới.
Điều gì xảy ra nếu bạn nhấn shift + ctrl + tab [tức là dịch chuyển xuống, ctrl xuống, tab, ctrl lên, dịch chuyển lên] hoặc ngược lại nếu đó là những gì bạn đang làm?
Trong urxvt?
$ cat -v
shift+ctrl+tab then enter: ^[[27;6;9~
ctrl+shift+down: ↓
ctrl+shift+up: ↑
shift+down: ^[[b
shift+up: ^[[a
ctrl+down: ^[Ob
ctrl+up: ^[Oa
tab: | | (tab)
Tôi đang cố gắng thu hẹp mọi thứ vì tôi nghĩ rằng bạn có thể có một số loại ánh xạ trên "ctrl + shift" trong xcompose hoặc một cái gì đó.
Không phải tôi biết, nhưng bạn không bao giờ biết.
Đầu ra của xev là gì khi bạn nhấn "ctrl + shift + tab, enter"?
KeyPress event, serial 32, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311734869, (567,395), root:(567,411),
state 0x0, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311734971, (567,395), root:(567,411),
state 0x4, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311736110, (567,395), root:(567,411),
state 0x5, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311736494, (567,395), root:(567,411),
state 0x5, keycode 23 (keysym 0xfe20, ISO_Left_Tab), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311736525, (567,395), root:(567,411),
state 0x5, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311736525, (567,395), root:(567,411),
state 0x4, keycode 66 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311737530, (567,395), root:(567,411),
state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
" XmbLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb4, subw 0x0, time 311737633, (567,395), root:(567,411),
state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
" XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False
Ctrl-Tab
cat -v
đầu ra trình tự đã đề cập, Ctrl-Shift-Tab
đầu ra trình tự chính xác ^[[27;6;9~
tuy nhiên lần nhấn phím tiếp theo không được diễn giải như bình thường. Trong cat -v
đầu ra Ctrl-Shift-Tab
+ enter hiển thị dưới dạng ^[[27;6;9~↵
, thay vì hai dòng ^[[27;6;9~
(một cho đầu vào, một cho đầu ra). Ánh xạ này sẽ không hoạt động trong vim. Bạn có ý tưởng khác không?
xev
khi bạn nhấn "ctrl + shift + tab, enter" là gì?