Phím tùy chọn không hoạt động như Meta trong Tmux


26

Tôi đang sử dụng Mac OSX Lion. Tôi đã kiểm tra "Sử dụng phím tùy chọn làm Meta" trong tùy chọn Terminal. Mặc dù phím Tùy chọn có vẻ hoạt động tốt như Meta in Bash, nhưng khi tôi sử dụng nó trong Tmux (qua SSH) thì nó không hoạt động đúng. Tôi đang cố gắng sử dụng các phím tắt TMUX như ^b M-1 b M-2v.v. Tôi có thể lấy những phím này bằng phím ESC nhưng không phải phím Tùy chọn.


^b Spacevới chu kỳ thông qua các bố cục khác nhau
caspyin

Câu trả lời:


18

Tôi sẽ đề nghị sử dụng iTerm2 thay vì Terminal.app mặc định, vì nó tốt hơn vì nhiều lý do.

Cụ thể, bạn sẽ quan tâm đến các tùy chọn của iTerm2 để ánh xạ tùy chọn trái / phải là "+ Esc", hoạt động tốt hơn nhiều so với việc cố gắng mô phỏng Meta cho mọi mục đích tôi có thể nghĩ hoặc đã thử.

Cài đặt này nằm dưới:

  • Sở thích
    • Hồ sơ
      • [chọn một hồ sơ]
        • Chìa khóa

1
Tôi đang tìm kiếm một lý do để chuyển sang iTerm2 và ở đây tôi có nó. Cảm ơn!!
Phani

13
Tôi có thể hỏi tại sao bạn chọn đặt tùy chọn thành "+ Esc" và không thành "Meta" khi nghe có vẻ như bạn đang cố sử dụng các phím Meta? Sự khác biệt / tại sao "+ Esc" tốt hơn? Cảm ơn!
NHDaly

25

Đối với những người khác tìm đường đến đây thông qua công cụ tìm kiếm yêu thích của họ, tôi có thể giải quyết vấn đề này bằng cách chỉ cần truy cập Tùy chọn -> Cấu hình -> Bàn phím và kiểm tra "Sử dụng tùy chọn làm khóa Meta" cho cấu hình thiết bị đầu cuối tôi đang sử dụng.

Tôi đang chạy weechatbên dưới tmuxvà các ràng buộc khóa mặc định sử dụng rất nhiều metakhóa.


bạn tiết kiệm trong ngày của tôi
zx1986

Cảm ơn! Tôi đang tìm cách giải quyết vấn đề này mà không phải chuyển sang iTerm2.
Valdimar

4

Tôi đã có cùng một vấn đề và không có câu trả lời nào được cung cấp ở đây có hiệu quả. Đó là, tôi cũng đã khóa phím iTerm2 [Option] thành [+Esc](hay còn gọi là "dự phòng" - [META]) trong "Tùy chọn -> Cấu hình -> Bàn phím", như được mô tả trong các câu trả lời khác, nhưng vẫn không thể thay đổi bố cục khung tmux của tôi với [CTRL]-[b], [+Esc/META]-[DIGIT].

Sau đó, tôi thấy rằng trong "Tùy chọn -> Phím", có "Phím tắt điều hướng" trong đó [Option]+ (bất kỳ) [DIGIT]được ánh xạ thành "bảng chia tách" (nhớ [Option]được ánh xạ lại [+Esc], do đó, đó là một xung đột rõ ràng). Do đó, sau khi bỏ thiết lập đó (với một giá trị quan trọng trống), cuối cùng tôi có thể một lần nữa thoải mái thay đổi kích thước khung tmux tôi với [CTRL]-[b], [+Esc/META]-[DIGIT](thay vì phải sử dụng [CTRL]-[b], (thực tế) [Esc], và sau đó bố trí mong muốn [DIGIT]).


1

Trong tôi .zshrcthường có bộ sau:

bindkey '^[[1;9C' forward-word
bindkey '^[[1;9D' backward-word

Trong các phiên tmux, tôi đã phải thêm vào

bindkey '^[[1;3C' forward-word
bindkey '^[[1;3D' backward-word

Bạn có thể tìm ra các mã này bằng cách chạy readtrong một phiên, sau đó nhấn các phím tắt, ví dụ Alt.

Các khóa của tôi được đặt như sau trong iTerm2:


1

Tôi cũng đang theo đuổi Terminal.app, và vì không có câu trả lời nào khác giải quyết được vấn đề nên tôi thêm chính tôi đã làm việc cho tôi.

Bên cạnh việc định cấu hình Hồ sơ hiện tại Terminal -> Preferences -> Profiles -> Select the profile to configure -> Keyboardvà kiểm tra Use Option as Meta key, cũng xem qua danh sách các ràng buộc mặc định trong bảng ngay phía trên và đảm bảo rằng các kết hợp bạn muốn gán là miễn phí. Đối với tôi, có một vài Option + Arrowphím đã can thiệp vào tmuxcấu hình để dễ dàng thay đổi giữa các tấm.

nhập mô tả hình ảnh ở đây

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.