vi, obtendo vários "Desculpe, o comando não está disponível nesta versão…" após a reinstalação

49

Do meu .vimrc, obtendo:

line   16:
E319: Sorry, the command is not available in this version: filetype on
line   17:
E319: Sorry, the command is not available in this version: filetype plugin on
line   18:
E319: Sorry, the command is not available in this version: filetype indent on
line   21:
E319: Sorry, the command is not available in this version: syntax on
line   45:
E319: Sorry, the command is not available in this version: match ExtraWhitespace /\s\+$/
line   46:
E319: Sorry, the command is not available in this version: autocmd BufWinEnter * match ExtraWhitespace /\s\+$/
line   47:
E319: Sorry, the command is not available in this version: autocmd InsertEnter * match ExtraWhitespace /\s\+\%#\@<!$/
line   48:
E319: Sorry, the command is not available in this version: autocmd InsertLeave * match ExtraWhitespace /\s\+$/
line   49:
E319: Sorry, the command is not available in this version: autocmd BufWinLeave * call clearmatches()

Posso remover as linhas, mas prefiro saber o que realmente está faltando ou precisar de atualização que esteja causando isso, pois esse arquivo funcionou para mim antes.

Michael Durrant
fonte
1
Estou usando o debian, não o ubuntu, então isso pode não se aplicar. No debian jessie, o vim-tinypacote skinny é instalado por padrão, o que não inclui o vim-runtimepacote. Corrigi meus E319's instalando o vimpacote mais inchado , que tem vim-runtimecomo uma dependência.
NovaDenizen
1
Eu cheguei aqui por causa do mesmo problema. Com base na resposta correta, descobri que vimnão estava instalado, mas viestava. Depois de instalar vimtudo funcionou.
Jelmer
No meu caso :version, não diz nada sobre a GUI e a instalação de -gui-commmon ou -runtime não corrige o problema, estava~/.vimrc ativado .
Pablo A

Respostas:

78

Tente de dentro vim...

:version

e se você conseguir ...

Small version without GUI.

Está faltando pacote vim-gui-common. Provavelmente também é aconselhável instalar vim-runtime. Comandos para instalar:

sudo apt-get install vim-gui-common
sudo apt-get install vim-runtime

Outra causa pode ser que alternativas estão apontando para a errada:

update-alternatives --display vim

para mostrar o que é usado e ...

update-alternatives --config vim

para mudar para outro vim. Pode ser que /usr/bin/vim.gnomeseja usado e você precise/usr/bin/vim


editar: Michael Durrant o corrigiu com o número 1 no caso de alguém se perguntar.

Rinzwind
fonte
+1 na resposta, obrigado, corrigido para mim também (em uma VM provisionada pelo puphpet.com que executa o Ubuntu 12.04 LTS 64bit): os comandos mencionados na resposta acima: 1) sudo apt-get install vim-gui-commondepois 2) o sudo apt-get install vim-runtimecorrigiu para mim - ou seja, não há mais E319: Sorry, the command is not available in this version:erros . De fato, 1) foi a correção, realmente ao emitir o comando 2) recebi mensagens dizendo que as coisas já estavam atualizadas: ...vim-runtime is already the newest version. vim-runtime set to manually installed. 0 upgraded, 0 newly installed, 0 to remove and 59 not upgraded.
therobyouknow
1
Se você não quiser que a GUI, você pode simplesmente sudo apt-get install vim-nox(e, em seguida: Versão reportará Huge version without GUI.)
ysth
8

Você provavelmente não tem a versão completa do VIM instalada. Para verificar, tente executar vimou:

readlink -f `which vi`

Por exemplo, o Ubuntu 16.04 LTS veio apenas com /usr/bin/vim.tiny

Instale o VIM completo:

sudo apt update
sudo apt install vim

Agora você deve ter /usr/bin/vim.basic, e os .vimrccomandos devem ter sucesso.

wisbucky
fonte
Isso funcionou para mim no Linux Mint, enquanto a resposta principal não.
adrianmc
6

Se isso começou depois que você atualizou para 16.04, pode ser b / c da alteração para python 3 como intérprete padrão como @ luka5z apontado.

Para resolver, atualizei para o arquivo clang-format.py mais recente em https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/clang-format.py

e linhas .vimrc editadas de:

" Add hook for clang-format
map <C-K> ggVG :pyf /usr/local/bin/clang-format.py<cr>
imap <C-K> <c-o>:pyf /usr/local/bin/clang-format.py<cr>

para:

" Add hook for clang-format
map <C-K> ggVG :py3f /usr/local/bin/clang-format.py<cr>
imap <C-K> <c-o>:py3f /usr/local/bin/clang-format.py<cr>
Daniel
fonte
2

Para mim, eu tive que instalar o vim.nox-py2:

aptitude install vim-nox-py2

e use as alternativas de atualização para ativá-lo:

update-alternatives --config vim

selecione o número correspondente a vim.nox-py2.

Davim
fonte
Note-se que isso é para 16.04. O Vim no Ubuntu costumava ter apenas o python2 ativado, agora é o python3-enabled e o python2 em um pacote separado.
muru 27/03
3
Python3 é o intérprete padrão para o Ubuntu 16.04. Se esta mensagem aparecer como resultado do uso do pycomando, substitua-o pelo equivalente em Python 3 py3.
Luka5z 01/09/19
@ luka5z seu comentário é a coisa mais útil que encontrei nesta página!
e4c5