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

Macos 在mac上使用自定义vimrc会导致语法突出显示丢失,macos,vim,clipboard,macos-sierra,vim-syntax-highlighting,Macos,Vim,Clipboard,Macos Sierra,Vim Syntax Highlighting,我正在Mac OS 10.12.6上使用由自制编译的Vim 8.0(在终端中)。我正在尝试使用常用的yank/put命令启用“复制到剪贴板”(并从剪贴板粘贴)。实际上,通过在我的主目录中创建一个.vimrc文件并添加单行set clipboard=unnamed,我已经成功地做到了这一点(遵循各种在线指南)。然而,这产生了不希望的副作用,即当vim打开时(例如,当我打开一个.py文件时,文本现在都是白色的),阻止加载特定于扩展名的语法高亮显示(安装时默认启用)。是否有某种方法可以在不破坏语法突出

我正在Mac OS 10.12.6上使用由自制编译的Vim 8.0(在终端中)。我正在尝试使用常用的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
复制到您自己的配置中。 这包括几个步骤:

  • 通过在vim内部键入
    :echo$VIMRUNTIME
    并点击enter键,确定$VIMRUNTIME的设置
  • 导航到它返回的目录(对我来说这是
    /usr/local/share/vim/vim80/
    ),并找到
    defaults.vim
    文件
  • 将您想要的任何设置复制并粘贴到您自己的
    .vimrc

  • 希望这有帮助

    您好@paul,我相信您需要在
    .vimrc
    中的某个位置启用
    语法。你明白了吗?如果没有,你能粘贴你的配置,这样我可以帮助你进一步排除故障吗?这很有效,谢谢!我想知道为什么没有提到这一点,例如,不幸的是,还有其他问题:vim没有像往常一样缩进,退格键已经停止工作。我相信这些问题也可以单独解决,但我真正想要的是加载所有常规设置,就像不加载
    .vimrc
    文件一样,除了我还想启用“复制到剪贴板”。为什么拥有自己的
    .vimrc
    会覆盖
    .vimrc
    文件中未提及的其他设置?如果您没有自己的vimrc,看起来您的系统会使用vimrc。删除您的vimrc并运行命令:echo$MYVIMRC
    将回显文件复制为您的vimrc
    ~/.vimrc
    ,然后添加
    set clipboard=unnamed
    lineFantastic,这正是我要找的。