0
我有一個映射(比如ctrl-m),在某些情況下(例如,多個緩衝區打開),我希望遵循vim。在其他情況下,我希望vim忽略它。這可以相對容易地編碼成一個功能。允許vim映射轉發命令以封閉應用程序(例如tmux)
下一個約束是,如果我決定忽略鍵盤命令,我希望封閉的應用程序來處理它。例如,ctrl-m會級聯到封閉的tmux會話。
這樣的事情可能嗎?
我有一個映射(比如ctrl-m),在某些情況下(例如,多個緩衝區打開),我希望遵循vim。在其他情況下,我希望vim忽略它。這可以相對容易地編碼成一個功能。允許vim映射轉發命令以封閉應用程序(例如tmux)
下一個約束是,如果我決定忽略鍵盤命令,我希望封閉的應用程序來處理它。例如,ctrl-m會級聯到封閉的tmux會話。
這樣的事情可能嗎?
一旦擊鍵被Vim接收和使用,它們就從tmux的角度消失並完成了。當Vim函數意識到接收到的密鑰應該在tmux中執行動作時,必須以某種方式將它反饋回tmux(但可能不是通過發出擊鍵,而是通過以連接到現有實例的方式調用tmux,像vim --remove-send
;我對tmux知之甚少,但是有一些與tmux集成的Vim插件,可能會這樣做)。
一般來說,我會盡量避免跨應用程序的這種重要的重載,而是解決單獨的組合鍵。
這個問題的一個重要部分缺少:你的功能。 – romainl
不重要,不相關。下面清楚地回答這個概念的理解 – muckabout