Ssh
通過 ssh 和 tmux 在 mintty 中執行的 Emacs 將 <end> 報告為 <select>
目前我需要在遠端機器上通過 ssh 編碼。我從 Cygwin 執行它
mintty
並使用它tmux
來保持 emacs 執行,即使我斷開連接也是如此。一切都很好,tmux
報告TERM=screen
,但<end>
關鍵是不工作。Emacs 將其報告為<select>
. 在 tmux 內部的 shell 中,當我做一個簡單cat
的 時,密鑰被報告為^[[4~
. 目標機器是 Ubuntu 16.04.6 LTS。end 鍵在 中按預期工作zsh
,所以我認為它必須與 emacs 有關。當我在 Cygwin 本地執行 emacs 時
tmux
,一切正常。所以我認為這與目標系統有關。我不想重新綁定<select>
,因為這看起來很尷尬。這是 Emacs 中的錯誤嗎?版本是GNU Emacs 26.3
.我可以通過使用
C-a
and來解決這個問題C-e
,但希望有一個正確的解決方案。
它部分是應用程序,部分是配置。根據終端描述是設計為模仿 VT220 還是 PC,無論是什麼,編輯鍵盤都可以為按鍵分配不同的名稱。同時,curses 應用程序只會看到第一個,因此會標記重複項(tic 警告)並通常將其刪除。
Emacs 不是一個 curses 應用程序,但它使用 ncurses 提供的終端描述。所以你的終端描述將顯示一個或另一個結束/選擇。您可以更改終端描述…
進一步閱讀:為什麼我的鍵盤不起作用?
(在 xterm 的terminfo文件中對此有更長的評論)。