Ssh

通過 ssh 和 tmux 在 mintty 中執行的 Emacs 將 <end> 報告為 <select>

  • January 6, 2020

目前我需要在遠端機器上通過 ssh 編碼。我從 Cygwin 執行它mintty並使用它tmux來保持 emacs 執行,即使我斷開連接也是如此。一切都很好,tmux報告TERM=screen,但&lt;end&gt;關鍵是不工作。Emacs 將其報告為&lt;select&gt;. 在 tmux 內部的 shell 中,當我做一個簡單cat的 時,密鑰被報告為^[[4~. 目標機器是 Ubuntu 16.04.6 LTS。end 鍵在 中按預期工作zsh,所以我認為它必須與 emacs 有關。

當我在 Cygwin 本地執行 emacs 時tmux,一切正常。所以我認為這與目標系統有關。我不想重新綁定&lt;select&gt;,因為這看起來很尷尬。這是 Emacs 中的錯誤嗎?版本是GNU Emacs 26.3.

我可以通過使用C-aand來解決這個問題C-e,但希望有一個正確的解決方案。

它部分是應用程序,部分是配置。根據終端描述是設計為模仿 VT220 還是 PC,無論是什麼,編輯鍵盤都可以為按鍵分配不同的名稱。同時,curses 應用程序只會看到第一個,因此會標記重複項(tic 警告)並通常將其刪除。

Emacs 不是一個 curses 應用程序,但它使用 ncurses 提供的終端描述。所以你的終端描述將顯示一個或另一個結束/選擇。您可以更改終端描述…

進一步閱讀:為什麼我的鍵盤不起作用?

(在 xterm 的terminfo文件中對此有更長的評論)。

引用自:https://unix.stackexchange.com/questions/560590