Ubuntu 16.04 VIM senza supporto per Python!


22

Sebbene le note di rilascio di Ubuntu 16.04 menzionino che:

Il pacchetto VIM predefinito è stato creato su python3 anziché su python2.

Eppure dopo aver installato vim con il seguente comando:

sudo apt-get install vim

E controllato:

vim --version

Mostrava:

-python
-python3

è un insetto? Come posso ottenere VIM con il supporto Python?

Risposte:


27

Se vuoi il supporto per Python 3 in vim, installa il vim-noxpacchetto ( sudo apt install vim-nox) vedi modifica sotto .

Tuttavia, se hai ancora bisogno del supporto per Python 2, installa il vim-nox-py2pacchetto ( sudo apt install vim-nox-py2).

Modifica : è vimstato recentemente aggiornato per risolvere questo problema e non è necessario installare più il vim-noxpacchetto per ottenere il supporto di Python 3.


1
si l'ho fatto..ma perché il pacchetto vim non supporta python?
Saprativa Bhattacharjee,

Ubuntu ha diviso il supporto Python dal pacchetto principale in altri due pacchetti: uno che supporta Python 2 e uno che supporta Python 3. Dopo aver installato uno dei pacchetti sopra, dovresti essere in grado di usare vim con il supporto Python 2/3.
saiarcot895,

1
non sorprende che il pacchetto vim stesso non supporti nessuno dei pitoni? le note di rilascio menzionano diversamente. wiki.ubuntu.com/XenialXerus/ReleaseNotes
Saprativa Bhattacharjee

@ saiarcot895 Apparentemente funziona per me. Ma dove hai trovato queste informazioni? Esiste una wiki di Ubuntu che documenta come distribuiscono le cose?
Qweruiop,

2
Volevo solo aggiungere che dopo l'installazione vim-nox-py2avevo bisogno di correre sudo update-alternatives --set vim /usr/bin/vim.nox-py2. Credo, per favore, correggimi altrimenti, senza questi vimpunti vim.tinyo alcuni di questi pacchetti che non hanno il supporto Python.
DBS,

3

Nel 17.10-18.10 è difficile ottenere una copia di vim con supporto sia python2 che python3. La configurazione PPA di pi-rho ha tali pacchetti per le versioni precedenti, ma nulla ancora per la 17.10 e successive.

Questo è quello che ho fatto per far funzionare i pacchetti pi-rho:

  1. disinstallare tutti i pacchetti vim (questo ti costringerà a disinstallare "ubuntu-minimal")
  2. scarica i pacchetti vim da qui che terminano in "~ z"
  3. scarica i pacchetti perl-modules-5.24 , libgdbm3 e libperl5.24
  4. installali usando dpkg: vai alla directory di download ed esegui sudo dpkg -i libgdbm3_1.8.3-14_amd64.deb libperl5.24_5.24.1-2ubuntu1.1_amd64.deb perl-modules-5.24_5.24.1-2ubuntu1.1_all.deb vim*.deb
  5. reinstallare "Ubuntu-minimal": sudo apt install ubuntu-minimal
  6. blocca la versione di vim
    • apri il gestore pacchetti synaptic ed evidenzia i pacchetti vim che hai appena installato. Vai al pacchetto -> "Versione blocco"
    • potrebbe anche essere necessario "conservare" i pacchetti con sudo apt-mark holdper ciascuno di quei pacchetti (ad es. sudo apt-mark hold vim-common vim-gnome)


1

Su Ubuntu 17.10 , la compilazione è la soluzione che ha funzionato per me:

Direttamente ispirato da questa sostanza , ho fatto quanto segue:

sudo apt-get remove --purge vim vim-runtime vim-gnome vim-tiny vim-gui-common
sudo apt-get install checkinstall
sudo rm -rf /usr/local/share/vim /usr/bin/vim
cd /tmp && git clone https://github.com/vim/vim
cd vim/src
make distclean
cd ..
./configure --enable-multibyte --enable-perlinterp=dynamic --enable-pythoninterp=dynamic --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu --enable-cscope --enable-gui=auto --with-features=huge --with-x --enable-fontset --enable-largefile --disable-netbeans --with-compiledby="put your name here" --enable-fail-if-missing
make
sudo make install
sudo ln -s /usr/local/bin/vim /usr/bin/vim

Non dimenticare di adattare i ./configureparametri in modo da avere tutte le altre funzionalità di cui hai bisogno.

Ora puoi aprire vim ed eseguire il comando :echo has('python')per confermare che hai abilitato python 2.


1

Installazione vim-nox-py2e quindi esecuzione

sudo update-alternatives --config vim

ha funzionato per me.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.