在 Snow Leopard(MacOs 10.6)上重新映射 Vim 键盘

在 Snow Leopard(MacOs 10.6)上重新映射 Vim 键盘

我想让我的外接键盘的HOMEENDPAGEDOWNPAGEUPLeopard 的终端上工作。因此我在终端 > 文件 > 首选项中进行了更改:

Home: \033[H  
End: \033[F  
PageUp: \033[5~  
PageDown: \033[6~  

它在命令行中 100% 有效 - 但在 VIM 中编辑文件时无效。
是否有可能重新映射 VIM 键盘以使这些键正常工作?

问候

答案1

如果根据问题,您已经知道映射,那么这很容易。

Home: \033[H  
End: \033[F  
PageUp: \033[5~  
PageDown: \033[6~

只需编辑 ~/.vimrc 并添加:

map <Esc>[H <Home>
imap <Esc>[H <Home>
map <Esc>[F <End>
imap <Esc>[F <End>
map <Esc>[5~ <PageUp>
imap <Esc>[5~ <PageUp>
map <Esc>[6~ <PageDown>
imap <Esc>[6~ <PageDown>

答案2

尝试

:imap <C-k><Home> <Home>
:map <C-k><Home> <Home>

-- 实际上同时按下 control-k 和 home 键,输入 vim 从 home 键读取的内容,然后输入第二个<Home>。其他绑定也是如此。请参阅:help :map:help <>

答案3

我已经永久地解决了它。

就我而言,我已经在 vim 中映射了它:

:imap <C-v><Home> <Home>
:map <C-v><Home> <Home>

—— 实际上是同时按下 control-v 和 home 键,输入 vim 从我的 home 键读取的内容,然后输入第二个。

它有效,但只在当前会话中有效。
因此,我只需输入以下命令,然后输入 <进入>

:map 

然后我得到了映射

<Esc>[H <Home>

现在,我只需将其添加到我的 ~/.vimrc 文件中:

map <Esc>[H <Home>
imap <Esc>[H <Home>

现在它被重新映射到我的用户的所有 vim 会话。

相关内容