vi, отримуючи кілька "Вибачте, команда недоступна в цій версії ..." після перевстановлення


49

Від мого .vimrc, отримання:

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()

Я можу видалити рядки, але я скоріше знаю, чого мені справді не вистачає чи потребує оновлення, яке викликає це, оскільки цей файл працював для мене раніше.


1
Я використовую debian, а не ubuntu, тому це може не застосовуватися. У debian jessie скинний vim-tinyпакет встановлений за замовчуванням, який не включає vim-runtimeпакет. Я виправив E319, встановивши більш роздутий vimпакет, який має vim-runtimeзалежність.
NovaDenizen

1
Я потрапив сюди через ту саму проблему. На підставі правильної відповіді я виявив, що vimне встановлений, але viбув. Після установки vimвсе працювало.
Джелмер

У моєму випадку :versionнічого не говорить про графічний інтерфейс і встановлення -gui-commmon або -runtime не усуває проблеми, вона була ввімкнена~/.vimrc .
Пабло А

Відповіді:


78

Спробуйте зсередини vim...

:version

і якщо ви отримаєте ...

Small version without GUI.

У вас відсутній пакет vim-gui-common. Можливо, це також доцільно встановити vim-runtime. Команди для встановлення:

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

Іншою причиною може бути те, що альтернативи вказують на неправильну:

update-alternatives --display vim

показати, що використовується і ...

update-alternatives --config vim

перейти на інший вим. Це може бути те, що /usr/bin/vim.gnomeвикористовується і вам потрібно/usr/bin/vim


редагувати: Майкл Дюрант зафіксував це №1 на випадок, коли хтось задумається.


+1 у відповіді, спасибі, виправлено і для мене (на puphpet.com, передбаченому VM, що працює на Ubuntu 12.04 LTS 64bit): команди, згадані у відповіді вище: 1), sudo apt-get install vim-gui-commonпотім 2) sudo apt-get install vim-runtimeвиправили це для мене - тобто більше E319: Sorry, the command is not available in this version:помилок не було . Насправді, 1) було виправленням, справді при видачі команди 2) Мені надійшло повідомлення про те, що речі вже були в курсі: ...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
Якщо ви не хочете GUI, ви можете просто sudo apt-get install vim-nox(і тоді: версія буде звітувати Huge version without GUI.)
ysth

8

Напевно, не встановлена ​​повна версія VIM. Щоб перевірити, спробуйте виконати vimабо:

readlink -f `which vi`

Наприклад, Ubuntu 16.04 LTS поставляється лише з /usr/bin/vim.tiny

Встановіть повний VIM:

sudo apt update
sudo apt install vim

Тепер ви повинні мати /usr/bin/vim.basic, і .vimrcкоманди повинні досягти успіху.


Це працювало для мене на Linux Mint, тоді як головна відповідь не відповіла.
adrianmc

6

Якщо це почалося після оновлення до 16.04, це може бути b / c зміни на python 3 як інтерпретатора за замовчуванням, як вказувало @ luka5z.

Щоб вирішити, я оновив останній файл clang-format.py з https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/clang-format.py

і редагував рядки .vimrc з:

" 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>

до:

" 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>

2

Для мене мені довелося встановити vim.nox-py2:

aptitude install vim-nox-py2

і використовуйте альтернативи оновлення для його активації:

update-alternatives --config vim

виберіть число, відповідне vim.nox-py2.


Зауважимо, що це за 16.04. У Vim на Ubuntu раніше було ввімкнено лише python2, тепер його підтримують python3 та python2 в окремому пакеті.
муру

3
Python3 - інтерпретатор за замовчуванням для Ubuntu 16.04. Якщо це повідомлення з’являється в результаті використання pyкоманди, замініть його на еквівалент Python 3 py3.
luka5z

@ luka5z ваш коментар - це найкорисніша річ, яку я знайшов на цій сторінці!
e4c5
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.