[英]Vim/GVim key mappings
幾周以來,我一直在專門使用 Vim,到目前為止,有幾件事讓我對自己的體驗感到非常興奮。 一方面,我無法將一些鍵序列映射到命令。
我想 map Ctrl + Shift + Z到:redo<CR>
或交替<CR>
,但顯然Vim 無法識別移位和未移位的控制鍵序列之間的區別:
Ctrl-b 和 Ctrl-B 是同義詞,它們都表示 0x02。 這不能改變,它可以追溯到 ASCII,它可以追溯到 7 孔紙帶(不計算奇偶校驗)。
這對我來說似乎很愚蠢。 自 7 孔紙帶以來,我們已經走了很長一段路,根據我的經驗,許多程序都認識到<CSZ>
和<CZ>
之間的區別。 事實上,MacVim 甚至認識到了其中的差異。 但是 GVim 或 GNOME 終端沒有樂趣? 有沒有解決的辦法? 也許是一個插件,甚至是一些編譯時選項?
我遇到問題的另一個組合鍵是Ctrl + , (control+comma)。 我不確定我的.vimrc
中是否配置錯誤,或者它是否是 Vim 的真正問題,但映射后我無法得到<C-,>
響應(例如: map <C-,>:TComment<CR>
)。 FWIW,我已將領導密鑰重新映射到;
. 我做錯了嗎? 還是有其他原因導致 Vim 無法識別<C-,>
組合鍵?
我花了太多時間在谷歌上搜索和擺弄鍵映射,我即將宣布 Vim 不像我被認為的那樣靈活......我什至無法配置它我習慣的鍵映射,其中一些我不願意重新/忘記,因為它們在我每天使用的其他程序中工作。
看起來您發布的鏈接已經回答了您關於<Cb>
與<CB>
的問題。 根據常見問題解答,您似乎對<C-,>
也不走運,因為此組合鍵不在 Vim 可以檢測到的 Ctrl-printable-key 和弦列表中(可能是因為它甚至不是可打印的ASCII 和弦?)。
諸如<CSw>
之類的組合鍵非常不像 Vim ,因為它們會破壞模態編輯器的效率。 當然,有時<CTRL>
-轉義組合是必要的(例如在插入模式映射中,例如<Cx>
- <Co>
用於全完成),但對於撤消和重做等操作而言,情況並非如此。
很抱歉,這個回復不能讓您滿意,但從長遠來看,“按照 Vim 的方式來做”,而不是試圖讓 Vim 屈服於您的意願,會收獲很多。
嘗試將set nocompatable
添加到您的 vimrc。 沒有這個,你基本上是在運行 vi,它比 vim 更受限制。 這應該允許您 map <CSr>
或<F11>
或任何其他您想要的。 賈梅森完全正確。 在它們存在的地方使用默認映射要好得多。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.