我在VMBox上运行Ubuntu 20.04,并试图充分利用Vim。所以我按照这个指南https://techinscribed.com/how-to-set-up-vim-as-an-ide-for-react-and-typescript-in-2020/安装了不同的插件,从gruvbox开始。不幸的是,gruvbox和其他插件都不起作用,尽管我严格按照指南安装。所以这里是我的.vimrc文件在我的home文件夹中:
call plug#begin()
" This is where we will add plugins to install
Plug 'morhetz/gruvbox'
call plug#end()
colorscheme gruvbox
以下是错误消息:
Error detected while processing /home/marcel/.vim/plugged/gruvbox/colors/gruvbox.vim:
line 8:
E492: Not an editor command: ^M
line 11:
E492: Not an editor command: ^M
line 12:
E15: Invalid expression: version > 580^M
line 1419:
E171: Missing :endif
Press ENTER or type command to continue
类似的错误发生在任何其他插件...我已经尝试了不同的配色方案和NERDTree。这是一个已知的问题吗?我该如何缓解这个问题?
2条答案
按热度按时间fhg3lkii1#
虽然Vim可以完美地 * 编辑 * 带有Windows行尾的文件(
\r\n
,见另一个答案),但它对运行时文件很挑剔,这些文件 * 必须 * 带有Unix行尾(\n
)。这里的问题是,你通过插件管理器得到的运行时文件有Windows行尾,而不是预期的Unix行尾。
现在,你的插件管理器使用Git来检索这些运行时文件,而行尾最有可能被修改。如果是这样的话,here是在Git中配置行尾的指南。
zzlelutf2#
在我看来,这似乎只是行尾的问题。Unix使用
\n
(或0xA
)作为换行符。Windows使用两个字符的组合:\r
\n
。\r
的十六进制是0xD
。^M
恰好是vim显示0xD
的方式(0x0D
= 13,M是英语字母表中的第13个字母)。可以通过运行以下命令删除所有^M字符:
:%s/^M//g
一旦你对你的gruvbox.vim这样做了,我敢打赌这个错误就会消失。