tùy chọn tmux `xterm-key` không kích hoạt điều khiển + mũi tên


7

Tôi không thể làm cho tmux nhận ra Ctrl- Left-arrowtrình tự khác với chỉ một mũi tên trái và tương tự cho mũi tên phải. Theo tôi ~/.inputrc, tôi đã ánh xạ các chuỗi này (do 2 trình giả lập thiết bị đầu cuối khác nhau, cụ thể là putty và mobaxterm) để chuyển qua các từ trong dòng lệnh:

"\eOD": backward-word
"\e[1;5D": backward-word

Điều này hoạt động trong một phiên ssh tốt, nhưng cả màn hình và tmux không phân biệt giữa mũi tên và mũi tên điều khiển. Đương nhiên, giải pháp được đề xuất là kích hoạt tùy chọn xterm-key trong tmux bằng cách thêm tùy chọn toàn cầu vào ~/.tmux.conf, và có bằng chứng trực tiếp (bên cạnh các bình luận "cảm ơn" cho giải pháp trên) rằng cách này hiệu quả với người khác. Nhưng đối với tôi, Ctrl- Left-arrowgửi cùng một mã ESC D, như vậy Left-arrow.

Tôi đã xác nhận rằng tùy chọn này thực sự được đặt bằng cách kiểm tra các tùy chọn tmux với

:show-window-options -g

và thậm chí đặt nó chỉ trong trường hợp cho cửa sổ hiện tại bằng tay với

:set-window-option xterm-keys on

nhưng tất cả điều này vô ích. tmux báo cáo phiên bản số 1.8 với tmux -V.

Những gì khác tôi có thể kiểm tra để khắc phục sự cố này?

Câu trả lời:


2

Bạn nên sử dụng -gtùy chọn (toàn cầu) trong dòng này:

:set-window-option xterm-keys on

lam no

:set-window-option -g xterm-keys on

Các tmuxnhãn hiệu không phải là rất rõ ràng, nói về -g:

Nếu -gđược chỉ định, tùy chọn phiên toàn cầu hoặc cửa sổ được đặt.
Với -avà nếu tùy chọn mong đợi một chuỗi, giá trị sẽ được thêm vào
cài đặt hiện có. Các -ucờ unsets một lựa chọn, do đó, một phiên
thừa hưởng các tùy chọn từ toàn cầu lựa chọn. Không thể
bỏ đặt một tùy chọn toàn cầu .

Phần quan trọng của phần này là phiên , là tập hợp các thiết bị đầu cuối giả tạo khi bạn bắt đầu tmux .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.