首先,我知道我可以在 Midnight Commander 中使用Alt+ 1(到 9 和 0)來合成對應的功能鍵(F1到)。F10它幫助了我很多次,但默認情況下我仍然按實際的功能鍵直觀。
重點:我嘗試tmux
使用 PuTTY 在會話(有時是窗口,有時是窗格)內運行 Vim 和 Midnight Commander。
所以預設情況下我有以下 PuTTY 配置:
附ESC[n~
測繪
現在的問題是,在 Vim 中映射 ( 、 以及 ) 時,map <F1> :tab help<CR>
它會產生(切換大小寫)的效果。事實上,如果我在 shell 中按下,波形符號 ( )就是結果,nmap
imap
F1~F1F5~
沿著有鈴鐺。不過,使用此設定後,功能鍵在 Midnight Commander 中運作得非常好。
除了我的問題之外,上述設定還有一件奇怪的事情:我還在Vim 中F1「映射」F5( ) 。set pastetoggle=<F5>
奇怪的是那工作起來就像一個魅力,即使F5外殼上的鑰匙給了一個~
類似的F1東西。
筆記:當在 之外運行 Vim 時tmux
,預設綁定(和我的覆蓋)F1工作正常!
與“Linux”映射
所以很自然地我嘗試使用上面對話框中的“Linux”設定。因此,當我按下Vim 時F1,Vim 將在行尾進入插入模式( 的效果A)。 Midnight Commander 無法辨識具有此設定的任何功能鍵。果不其然,外殼上F1給了我A
和一個鈴鐺(F2aB
等)。
我在這裡缺少什麼?我怎麼才能獲得統一的行為,讓 Midnight Commander 和 Vim 都能辨識功能鍵?
附加資訊:
遠端系統是 Ubuntu 14.04,附LANG=en_US.UTF-8
.
TERM
設定為會話TERM=xterm
外部tmux
並且TERM=screen
從窗格或視窗內部檢視時。
我沒有使用:
set-option -g default-terminal "screen-256color"
覆蓋裡面的終端類型tmux
。
答案1
問題出在TERM=xterm
外面tmux
。有不PuTTY 的配置與xterm
終端描述相匹配,不匹配的情況將輸入到screen
或tmux
(任您選擇)。
例如,請參閱 ncurses 常見問題解答為什麼不直接使用 TERM 設定為「xterm」?。那裡的建議當然是設置
TERM=putty
使用快速檢查tack
顯示此組合 ( TERM=putty
, tmux
) 適用於 Ubuntu 14.04(您應該已經安裝了ncurses-term
包含此內容的軟體包)。