7

我最近从以前使用 Linux 切换到使用 Mac 工作。我发现了 MacVim(来自http://code.google.com/p/macvim/)并且一直在尝试移植我以前的键盘映射。

我以前的映射如下:

  • Ctrl-T: 新标签
  • Ctrl-W:关闭标签/窗口
  • Ctrl-1... Ctrl-0:切换到编号选项卡
  • Alt-Up: 新标签(与 相同Ctrl-T
  • Alt-Left/ Alt-Right:切换到上一个/下一个选项卡
  • Ctrl-Alt-E: 以文件模式打开 FuzzyFinder
  • Ctrl-Alt-B: 以缓冲模式打开 FuzzyFinder
  • Ctrl-Alt-W: 从缓冲区中清除尾随空格

现在,为了使这些映射更像“Mac”,我决定将前两个切换为使用 option(即 Apple 徽标)键,而所有其他映射都使用 command 键而不是 Alt(即Ctrl-Alt-E变为Ctrl-Command-E)。我在http://macvim.org/OSX/index.php上读到这个键可以用 D 映射(即)。我的.vimrc的新内容如下:

nmap <D-t> :tabnew<cr>
nmap <D-w> :close<cr>
nmap <D-1> 1gt
nmap <D-2> 2gt
nmap <D-3> 3gt
nmap <D-4> 4gt
nmap <D-5> 5gt
nmap <D-6> 6gt
nmap <D-7> 7gt
nmap <D-8> 8gt
nmap <D-9> 9gt
nmap <D-0> 10gt

nmap <D-Up> :tabnew<CR>
nmap <D-Right> :tabnext<CR>
nmap <D-Left> :tabprevious<CR>

"FuzzyFinder
nmap <C-D-e> :FufFileWithFullCwd<CR>
nmap <C-D-b> :FufBuffer<CR>

"Whitespace remover
nmap <C-D-w> :%s/\s\+$//<CR>

因此,在重新映射密钥之后,一些现在可以工作,而另一些则不能,原因没有明确的逻辑。

什么有效:

  • Cmd-TCmd-W成功地打开和关闭标签。
  • Cmd-1...Cmd-0成功地用于切换标签。

什么不起作用:

  • Cmd-Up打开标签不起作用。
  • Cmd-Left并且Cmd-Right切换标签不起作用。
  • Ctrl-Cmd-E并且Ctrl-Cmd-B打开 FuzzyFinder 不起作用。
  • Ctrl-Cmd-W清除空格不起作用(但它也不会关闭选项卡,因为它没有ctrl.
4

2 回答 2

7

通过做调查原因

:verbose map <D-Up>

另外尝试有选择地启用您的其他插件以查看映射是否以某种方式被清除

于 2011-11-10T10:55:07.037 回答
5

所以事实证明 Macvim (http://code.google.com/p/macvim/issues/detail?id=317) 中存在一个错误,这意味着无法映射 ctrl 键。相反,我映射了领导键(又名反斜杠),现在一切似乎都可以工作了。

于 2011-11-11T10:09:41.850 回答