vi, mendapatkan beberapa "Maaf, perintah tidak tersedia dalam versi ini ..." setelah menginstal ulang


49

Dari .vimrc saya, dapatkan:

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

Saya dapat menghapus baris, tetapi saya lebih suka tahu apa yang saya benar-benar hilang atau perlu memutakhirkan yang menyebabkan ini karena file ini bekerja untuk saya sebelumnya.


1
Saya menggunakan debian, bukan ubuntu, jadi ini mungkin tidak berlaku. Pada debian jessie, vim-tinypaket kurus diinstal secara default, yang tidak termasuk vim-runtimepaket. Saya memperbaiki E319 saya dengan menginstal vimpaket yang lebih besar, yang memiliki vim-runtimeketergantungan.
NovaDenizen

1
Saya tiba di sini karena masalah yang sama. Berdasarkan jawaban yang benar, saya menemukan vimtidak diinstal, tetapi viternyata. Setelah menginstal vimsemuanya bekerja.
Jelmer

Dalam kasus saya :versiontidak mengatakan apa-apa tentang GUI dan menginstal -gui-commmon atau -runtime tidak memperbaiki masalah, itu aktif~/.vimrc .
Pablo A

Jawaban:


78

Coba dari dalam vim...

:version

dan jika Anda mendapatkan ...

Small version without GUI.

Anda kehilangan paket vim-gui-common. Mungkin juga disarankan untuk menginstal vim-runtime. Perintah untuk menginstal:

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

Penyebab lain mungkin karena alternatif menunjuk ke yang salah:

update-alternatives --display vim

untuk menunjukkan apa yang digunakan dan ...

update-alternatives --config vim

untuk mengubah ke vim lain. Bisa jadi yang /usr/bin/vim.gnomedigunakan dan Anda butuhkan/usr/bin/vim


sunting: Michael Durrant memperbaikinya dengan # 1 seandainya ada yang bertanya-tanya.


Memberi +1 pada jawaban, terima kasih, tetap untuk saya juga (pada VM yang disediakan puphpet.com yang menjalankan Ubuntu 12.04 LTS 64bit): perintah yang disebutkan dalam jawaban di atas: 1) sudo apt-get install vim-gui-commonlalu 2) sudo apt-get install vim-runtimememperbaikinya untuk saya - yaitu tidak ada lagi E319: Sorry, the command is not available in this version:kesalahan . Faktanya, 1) adalah perbaikannya, benar-benar ketika mengeluarkan perintah 2) Saya mendapat pesan yang mengatakan bahwa semuanya sudah mutakhir: ...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
Jika Anda tidak menginginkan GUI, Anda dapat sudo apt-get install vim-nox(dan kemudian: versi akan melaporkan Huge version without GUI.)
ysth

8

Anda mungkin belum menginstal versi lengkap VIM. Untuk memeriksa, coba jalankan vimatau:

readlink -f `which vi`

Sebagai contoh, Ubuntu 16.04 LTS hanya datang dengan /usr/bin/vim.tiny

Pasang VIM lengkap:

sudo apt update
sudo apt install vim

Sekarang Anda harus sudah /usr/bin/vim.basic, dan .vimrcperintah harus berhasil.


Ini bekerja untuk saya di Linux Mint sedangkan jawaban atas tidak.
adrianmc

6

Jika ini dimulai setelah Anda memperbarui ke 16,04, itu mungkin b / c dari perubahan ke python 3 sebagai penerjemah default seperti yang ditunjukkan oleh @ luka5z.

Untuk menyelesaikannya, saya memperbarui ke file clang-format.py terbaru dari https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/clang-format.py

dan mengedit baris .vimrc dari:

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

untuk:

" 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

Bagi saya, saya harus menginstal vim.nox-py2:

aptitude install vim-nox-py2

dan gunakan pembaruan-alternatif untuk mengaktifkannya:

update-alternatives --config vim

pilih nomor yang sesuai dengan vim.nox-py2.


Perlu dicatat bahwa ini untuk 16,04. Vim di Ubuntu dulu hanya memiliki python2 diaktifkan, sekarang ini python3-enabled dan python2 dalam paket terpisah.
muru

3
Python3 adalah penerjemah default untuk Ubuntu 16.04. Jika pesan ini muncul sebagai hasil dari menggunakan pyperintah, ganti dengan setara Python 3 py3.
luka5z

@ luka5z komentar Anda adalah hal paling berguna yang saya temukan di halaman ini!
e4c5
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.