当我尝试使用 vim 时,所有这些命令都会出错(尽管 vim 可以工作):
autocmd BufWritePre *.rb :%s/\s\+$//e
set filetype off
filetype plugin on
filetype indent on
syntax on " Turn on syntax highlighting
match ExtraWhitespace /\s\+$/
autocmd BufWinEnter * match ExtraWhitespace /\s\+$/
autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@<!$/
autocmd InsertLeave * match ExtraWhitespace /\s\+$/
autocmd BufWinLeave * call clearmatches()
let mapleader = ","
set foldmethod=indent "fold based on indent
set foldnestmax=10 "deepest fold is 10 levels
set nofoldenable "dont fold by default
set foldlevel=1 "what I use
let loaded_matchparen = 1 " MDD Turn off matching bracket " Ubuntu14 filetype plugin indent on " required
如果我在 .vimrc 中注释掉这些行,就不会出现任何错误。
但我怀疑我现在可能已经“丢失”了这些设置。
在 Ubuntu 13 的 vim 中,它们是否有不同的形式或者其他东西?
错误:
三个类别:
- 抱歉,此版本不提供该命令
- 不支持该选项
- 未知选项
细节:
$ vi .vimrc
Error detected while processing /home/durrantm/.vimrc:
line 20:
E319: Sorry, the command is not available in this version: autocmd BufWritePre *.rb :%s/\s\+$//e
line 24:
E519: Option not supported: filetype
line 25:
E319: Sorry, the command is not available in this version: filetype plugin on
line 26:
E319: Sorry, the command is not available in this version: filetype indent on
line 27:
E319: Sorry, the command is not available in this version: syntax on " Turn on syntax highlighting
line 37:
E319: Sorry, the command is not available in this version: match ExtraWhitespace /\s\+$/
line 38:
E319: Sorry, the command is not available in this version: autocmd BufWinEnter * match ExtraWhitespace /\s\+$/
line 39:
E319: Sorry, the command is not available in this version: autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@
<!$/
line 40:
E319: Sorry, the command is not available in this version: autocmd InsertLeave * match ExtraWhitespace /\s\+$/
line 41:
E319: Sorry, the command is not available in this version: autocmd BufWinLeave * call clearmatches()
line 48:
E319: Sorry, the command is not available in this version: let mapleader = ","
line 52:
E518: Unknown option: foldmethod=indent
line 53:
E518: Unknown option: foldnestmax=10
line 54:
E518: Unknown option: nofoldenable
line 55:
E518: Unknown option: foldlevel=1
line 57:
E319: Sorry, the command is not available in this version: let loaded_matchparen = 1 " MDD Turn off matching brac
ket highlighting.
line 58:
E319: Sorry, the command is not available in this version: filetype plugin indent on
答案1
事实证明,我没有 vim,只有 vi,这是由于升级后的依赖问题。
tl;dr; - 需要较旧依赖项的版本。已修复:
$ sudo apt-get remove vim-common
$ sudo apt-get remove vim-runtime
$ sudo apt-get update && sudo apt-get install vim
Change .vimrc setting "set filetype off" => "filetype off"
完整版...
修复是:
尝试做:
apt-get install vim
但收到消息
...
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
vim : Depends: vim-common (= 2:7.4.052-1ubuntu3) but 2:7.4.335-1~ppa1~s is to be installed
Depends: vim-runtime (= 2:7.4.052-1ubuntu3) but 2:7.4.335-1~ppa1~s is to be installed
E: Unable to correct problems, you have held broken packages.
$
于是我尝试:
$ sudo apt-get install vim-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
vim-common is already the newest version.
最后,我意识到消息表明依赖关系是,2:7.4.052
但是我有2:7.4.335
vim-common 和 vim-runtime,换句话说,我有更多最近的版本。意识到这一点,最终的修复是:
$ sudo apt-get remove vim-common
...
$ sudo apt-get remove vim-runtime
然后我就能做到;
$ sudo apt-get update && sudo apt-get install vim
这解决了除一行之外的所有问题
set filetype off
我将其改为
filetype off