在 mac 上使用自定义 vimrc 会导致语法突出显示丢失

Using custom vimrc on mac causes syntax highlighting to be lost

我正在使用 Vim 8.0(在终端中),由 Homebrew 在 Mac OS 10.12.6 上编译。我正在尝试使用通常的 yank/put 命令启用复制到剪贴板(并从剪贴板粘贴)。通过在我的主目录中创建一个 .vimrc 文件并添加单行 set clipboard=unnamed,我实际上已经成功地做到了这一点(遵循各种在线指南)。但是,这会产生不良的副作用,即在 vim 打开时(例如,当我打开一个 .py 文件文本现在全是白色)。有什么方法可以在不破坏语法突出显示的情况下启用复制到剪贴板吗?

如果您没有 vimrc,vim 会加载一个 defaults.vim 文件,但是一旦您添加自定义 vimrc,vim 就会停止加载该文件.这是在 Vim 8.0 中引入的,您可以通过在 vim 中键入 :h defaults.vim 来获取更多信息,但这里是解决问题的选项:

解决方案 1:

defaults.vim 文件导入您的 .vimrc(这是 vim 帮助文件中提到的方法 - 请参阅 :help defaults.vim)。只需将这些行添加到 .vimrc:

的顶部
unlet! skip_defaults_vim    
source $VIMRUNTIME/defaults.vim

解决方案 2:

将您喜欢的内容从 defaults.vim 复制到您自己的配置中。 这涉及几个步骤:

  1. 通过在 vim 中键入 :echo $VIMRUNTIME 并按回车键来确定 $VIMRUNTIME 的设置。
  2. 导航到它 returns 的目录(对我来说这是 /usr/local/share/vim/vim80/)并找到 defaults.vim 文件。
  3. 将您想要的任何设置复制并粘贴到您自己的 .vimrc

希望对您有所帮助!