Phím tắt chức năng trong PuTTY / MinTTY và Tmux / Byobu


18

Là một người ẩn giấu lâu năm trên Stack Exchange, tôi đã tìm thấy câu trả lời cho hầu hết các vấn đề của mình mà không cần phải tạo nhiều tài khoản. Nhưng hôm nay tôi hoàn toàn bối rối với vấn đề này, vì vậy tôi đang tìm kiếm sự giúp đỡ.

Gần đây tôi đã phát hiện ra Byobu, một lối vào cho Tmux sử dụng các phím Fn cho các tác vụ thông thường. Đó là một phước lành thực sự cho đa nhiệm thông qua SSH đến một máy chủ linux từ xa từ PC Windows mà tôi phải sử dụng tại nơi làm việc.

Hiện tại, tôi đang sử dụng gnome-terminal thông qua một đường hầm SSH vì cả PuTTY và MinTTY (thiết bị đầu cuối mặc định với Cygwin) dường như gửi mã khóa sai cho các phím chức năng.

Tôi đã tự hỏi liệu có cách nào để ánh xạ lại một số mã thoát nhất định để ít nhất một trong số các thiết bị đầu cuối dựa trên cửa sổ của tôi có thể hoạt động chính xác với Tmux. (Tôi đoán rằng tôi chỉ có thể học Ctrl + b / Ctrl + một tổ hợp phím, nhưng thực hiện tổ hợp phím theo sau là một phím khác không thực sự tấn công tôi như công thái học.)

Trong PuTTY, cài đặt Terminal> Bàn phím> "Phím chức năng và bàn phím" thành "XtermR6" dường như đẩy các chuỗi thoát chính xác cho các phím Fn một cách bình thường, nhưng bộ điều chỉnh Shift và Ctrl bị hỏng. Tôi có thể sử dụng vim để tìm ra mã nào đang được gửi bởi mỗi thiết bị đầu cuối. Trong khi đó, tôi nghĩ rằng tôi có thể đã tìm kiếm sự kết hợp mà tmux đang tìm kiếm trong mã nguồn của nó , nhưng tôi không chắc chắn:

Key              Tmux Expects    Gnome-Terminal   PuTTY    MinTTY
Normal F3:                       ^[0R             ^[0R     ^[0R
Ctrl+F3          "\033[13^"      ^[01;5R          ^[0R     ^[[1;5R
Shift+F3         "\033[13$"      ^[01;2R          ^[[25~   ^[[1;2R
Ctrl+Shift+F3    "\033[13@"      ^[01;6R          ^[[25~   ^[[1;6R

Cho đến nay, MinTTY trông giống như ứng cử viên tốt nhất, nhưng nó mang đến cho tôi một vấn đề hoàn toàn khác, trong đó byobu bỏ qua 95% các lần nhấn phím Fn, chuyển chúng trực tiếp đến ứng dụng khách. Tôi có thể chạy cat -v và spam phím F2 (cửa sổ mới) và nó sẽ in ra "^ [0Q" bốn hoặc năm lần trước khi đột nhiên xuất hiện một cửa sổ mới.

Nếu ai có lời khuyên, nó sẽ được chào đón. Hầu hết những thứ tôi tìm thấy trên internet đều nói là thay đổi loại thiết bị đầu cuối, nhưng tôi đã thử theo nghĩa đen mỗi sự kết hợp của mỗi hai chương trình.

Cảm ơn!


3
Các trình tự bạn liệt kê cho tmux chỉ là các trình tự khóa được sửa đổi theo kiểu rxvt mà nó nhận ra. tmux cũng nhận ra chuỗi (chưa sửa đổi) được chỉ định bởi mục nhập terminfo của TERM (ví dụ: kf3từ bất kỳ TERM nào bạn đang sử dụng khi gắn vào tmux ) cũng như các chuỗi khóa được sửa đổi theo kiểu xterm từ đó xterm-keys.c. Vì vậy, các chuỗi mà bạn báo cáo từ Gnome-Terminal và MinTTY (mặc dù lối thoát + số không trong chuỗi của bạn phải là lối thoát + chữ-ohs (còn gọi là SS3) nên được tmux nhận ra , nhưng nó sẽ chỉ vượt qua chúng nếu bạn có xterm-keystùy chọn được bật.
Chris Johnsen

Câu trả lời:


1

Tôi đã gặp rắc rối tương tự với PuTTY và màn hình (tôi không thể sử dụng công cụ Ctrlsửa đổi). Giải pháp tôi đã tìm thấy là KiTTY - ngã ​​ba của PuTTY, được duy trì tốt hơn (bản cập nhật mới nhất từ ​​2015/06/02 22:02). Vấn đề của tôi với Ctrlchìa khóa đã biến mất.

Theo mặc định, Kitty sử dụng các phím Fn cho các phím tắt riêng, nhưng bạn có thể định cấu hình theo cách khác , do đó, phím Fn sẽ được gửi đến ứng dụng của bạn.


0

Tôi sử dụng BYOBU theo cách tương tự. Tôi chỉ sử dụng cygwin những ngày này là F2,3,4 và F6 chỉ hoạt động với tôi và đó là những người duy nhất tôi thực sự quan tâm. Tuy nhiên, khi tôi đang sử dụng putty, tôi đã thành công nhất với cài đặt 'Phím chức năng và bàn phím' để mô phỏng VT100 +

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.