为什么没有Vim插件在Ubuntu 20.04上工作?

qrjkbowd  于 2022-11-11  发布在  其他
关注(0)|答案(2)|浏览(330)

我在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。这是一个已知的问题吗?我该如何缓解这个问题?

fhg3lkii

fhg3lkii1#

虽然Vim可以完美地 * 编辑 * 带有Windows行尾的文件(\r\n,见另一个答案),但它对运行时文件很挑剔,这些文件 * 必须 * 带有Unix行尾(\n)。
这里的问题是,你通过插件管理器得到的运行时文件有Windows行尾,而不是预期的Unix行尾。
现在,你的插件管理器使用Git来检索这些运行时文件,而行尾最有可能被修改。如果是这样的话,here是在Git中配置行尾的指南。

zzlelutf

zzlelutf2#

在我看来,这似乎只是行尾的问题。Unix使用\n(或0xA)作为换行符。Windows使用两个字符的组合:\r\n\r的十六进制是0xD^M恰好是vim显示0xD的方式(0x0D = 13,M是英语字母表中的第13个字母)。
可以通过运行以下命令删除所有^M字符:
:%s/^M//g
一旦你对你的gruvbox.vim这样做了,我敢打赌这个错误就会消失。

相关问题