![Vim:在 Linux 上重新映射“D”修饰符](https://linux22.com/image/1360731/Vim%EF%BC%9A%E5%9C%A8%20Linux%20%E4%B8%8A%E9%87%8D%E6%96%B0%E6%98%A0%E5%B0%84%E2%80%9CD%E2%80%9D%E4%BF%AE%E9%A5%B0%E7%AC%A6.png)
我使用的是 Mac 版vim文件使用 linux。在此配置中,修饰符D
(Mac 上的 Cmd 键)被大量使用。我不想将每个都更改为D
,M
但我想重新映射D
到类似Meta
或 的内容Alt
。可以吗?
答案1
D
是“Apple/Cmd”键。唯一能识别它的 Vim 版本是 MacVim,并且只在其 GUI 版本中:D
对于任何终端仿真器中的 CLI Vim 和任何平台上的 GVim 来说,它只是一个不存在的键。
直接的后果是你实际上需要替换/复制全部<D-
如果您希望它可以跨环境移植,请在您的配置中进行映射。
处理此问题的另一种稍微温和的方法是分支~/.vimrc
。 这是我的方法,可能有更好的方法:
let os=substitute(system('uname'), '\n', '', '')
if has('gui_running')
if os == 'Darwin' || os == 'Mac'
" GUI-only stuff for Mac OS X
elseif os == 'Linux'
" GUI-only stuff for Linux
endif
else
if os == 'Darwin' || os == 'Mac'
" CLI-only stuff for Mac OS X
elseif os == 'Linux'
" CLI-only stuff for Linux
endif
endif
~/.vimrc
考虑到将一个诚实分成多个vimrc.after
和会引入不必要的混乱plugin_name.vim
,我会让您自己找到该代码块的正确位置。
Vim 的普遍性强的另外:使用和维护特定于平台的映射既不切实际,又适得其反。我强烈建议您为自定义映射选择更好、更便携的策略:使用“Control”键,甚至更好的键<leader>
。请参阅:h mapleader
。
此外,使用其他人的配置是很坏想法。你应该放弃那个“包裹”并照顾你的自己的配置你自己。