Comment activer la fonctionnalité + python dans vim

17

Je veux installer un plugin vim, ce plugin a besoin d'une +pythonfonctionnalité, donc quand j'ouvre vim et que je tape :versionil s'affiche -python. Comment puis-je l'activer?.

Merci.

Enrique GF
la source

Réponses:

15

Vous devez compiler Vim vous-même ou obtenir un package Vim précompilé qui a été compilé avec le support Python.

Si vous utilisez un système basé sur Debian, le moyen le plus simple est de télécharger le paquet vim-gnome ou vim-gtk depuis apt( apt install vim-gtkpar exemple). D'autres distributions peuvent avoir un package similaire avec le support python intégré.

Si vous préférez compiler Vim vous-même, téléchargez le référentiel Vim et passez --enable-pythoninterpcomme ceci:

cd /tmp && git clone https://github.com/vim/vim.git && cd vim
./configure --enable-pythoninterp --prefix=/usr
make && sudo make install

Sous Windows, vous pouvez obtenir le package Gvim à partir d' ici qui inclut le support Python.

akshay
la source
Merci. J'ai également trouvé cela, vi.stackexchange.com/questions/10242/vim-8-0-python-support
Enrique GF
1
Pour vos propres packages compilés, il doit être installé sous / usr / local et non / usr. Cela peut gâcher les choses installées par le gestionnaire de paquets. La meilleure façon d'installer des dépendances est quelque chose commeapt build-dep vim-nox
wbkang
6

Solution 1:

  • Installer le vim-gtkpackage

    sudo apt install vim-gtk   
    
  • Définir Vim comme éditeur par défaut

    sudo update-alternatives --install /usr/bin/editor editor /usr/bin/vim.gtk 1   
    sudo update-alternatives --set editor /usr/bin/vim.gtk   
    sudo update-alternatives --install /usr/bin/vi vi /usr/bin/vim.gtk 1  
    sudo update-alternatives --set vi /usr/bin/vim.gtk   
    sudo update-alternatives --install /usr/bin/vi vim /usr/bin/vim.gtk 1  
    sudo update-alternatives --set vim /usr/bin/vim.gtk    
    

Solution 2:

Sinon, vous devez compiler Vim à partir du code source (en supposant que vous utilisez un système basé sur Debian)

Préparez votre système

  • Installer

    sudo apt install libncurses5-dev \
    libgtk2.0-dev libatk1.0-dev \
    libcairo2-dev python-dev \
    python3-dev git
    
  • Supprimer Vim si vous en avez déjà

    sudo apt remove vim vim-runtime gvim  
    

configurer et faire

cd /usr && sudo git clone https://github.com/vim/vim.git && cd vim  

sudo ./configure --with-features=huge \
--enable-multibyte \
--enable-pythoninterp=yes \
--with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu/ \  # pay attention here check directory correct
--enable-python3interp=yes \
--with-python3-config-dir=/usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/ \  # pay attention here check directory correct
--enable-gui=gtk2 \
--enable-cscope \ 
--prefix=/usr/local/

sudo make VIMRUNTIMEDIR=/usr/local/share/vim/vim81 

Préparation du paquet deb à l'aide de checkinstall

  • Et installez ce package

    cd /usr/vim && sudo checkinstall
    
  • Ou, si vous souhaitez simplement créer une --install=nooption d' utilisation de package avec checkinstall

Définir Vim comme éditeur par défaut

sudo update-alternatives --install /usr/bin/editor editor /usr/local/bin/vim 1
sudo update-alternatives --set editor /usr/local/bin/vim
sudo update-alternatives --install /usr/bin/vi vi /usr/local/bin/vim 1
sudo update-alternatives --set vi /usr/local/bin/vim   

Vérifiez que vous exécutez le nouveau binaire Vim en regardant

vim --version | grep python

Référence:
- Construire Vim à partir de la source
- checkinstall

Finlandais
la source
3
Au lieu de créer un lien vers un certain deb sur un site Internet aléatoire, vous devriez plutôt recommander d'installer le Vim officiel à partir du paquet Debian +pythondisponible. Je crois que cela devrait êtrevim-gtk
Christian Brabandt
Merci @ChristianBrabandt pour le commentaire, je mettrai à jour ma réponse.
finn
@ChristianBrabandt Je crois que l'option python pour les paquets Debian actuels vim-gtk3et vim-gtkne sont plus inclus par défaut.
jacob
@jacob tu veux dire que debian actuel ne comprend +pythonplus? Serait-il possible que Debian soit passé à python3?
Christian Brabandt
4

Pour Windows, vous pouvez toujours récupérer la toute dernière version corrigée de Vim 8.x compilée avec les dernières bibliothèques externes ici: Téléchargements Vim

Au moment de publier les versions les plus récentes:

Dernière mise à jour compilée: 2017-02-23

Version Vim: 8.0.0363 Journal officiel des correctifs

Bibliothèques utilisées: Perl 5.24.1, Python 2.7.12, Python 3.6.0, Racket 6.7, Ruby 2.4.0, Lua 5.3.3, Tcl 8.6.4 et libXpm

Scott Wade
la source
3

Vous devez installer une version Python sur votre système avec le même bitness (32 bits ou 64 bits) que votre vim. Python doit être dans votre PATH. Si vous pouvez l'exécuter en tapant pythonsur une invite de commande, vous devriez être bon à cet égard. Enfin, vim doit être compilé pour prendre en charge python, mais d'après mon expérience, la plupart le sont. Vérifiez :versionet recherchez python/dyn. Il doit avoir un avantage devant lui.

Octaviour
la source
2

Étant donné que cela pourrait être mal interprété avec l'activation de la fonctionnalité python3, je considère utile de mentionner ce lien pour une installation en fonction de vos besoins

Voici d'excellents guides pour: * nix et windows .

Remarque : Faites attention à chaque caractère dans l'instruction ./configure et lisez attentivement (comme si vous foiriez) avant de le faire. Et lisez jusqu'au bout, il n'y a aucun moyen de se perdre

Vous devriez probablement l'ajouter à ./configure:

--enable-fail-if-missing

Évitez d'activer à la fois python 2 et 3

Prenez votre temps C'est une procédure très très bien expliquée. Merci à Valloric

Federico Gallo
la source
1

Sur Mac OS X, vous pouvez utiliser homebrewpour installer d'abord python puis vim, lequel vim prendra en charge python.

J'utilise MBP, le support vim python/dyninstallé de la manière ci-dessus, mais sans l'inclure python3.


# Supprimer les mauvais ans et 2017.2.28 10:38 AM #

qingchen
la source
1
Je ne sais pas si je l'ai lu correctement ou non, mais notez que dans la page d'aide, vous ne pouvez jamais voir si votre Vim prend réellement en charge +pythonou -python. Vous devez vous pencher sur:version
Christian Brabandt
@ChristianBrabandt vous avez raison. Merci pour votre réponse.
qingchen
1

Pour une installation de serveur sans interface graphique, utilisez vim-noxplutôt.

apt install vim-nox

Geraldo Luis da Silva Ribeiro
la source
1

Pour ceux qui utilisent anaconda python, certaines modifications supplémentaires sont requises. Ils peuvent également vouloir compiler vim, surtout si vous voulez que le code soit complété. Voici la commande configure:

Commande de configuration modifiée pour anaconda:

 ./configure --enable-terminal --enable-gui=auto \
      --with-features=huge \
      --enable-multibyte \
       --enable-cscope --enable-terminal --enable-gui=auto  \
      --prefix=/XXX/SOFTWARE/VIM8/install3 \
   --enable-python3interp \
   --with-python3-config-dir=/XXX/anaconda2/envs/py36/bin/python3.6-config \
   --includedir=/XXX/anaconda2/envs/py36/include  \
   --includedir=/XXX/anaconda2/envs/py36/include/python3.6m \
   LDFLAGS=" -L/XXX/anaconda2/envs/py36/lib -L/XXX/anaconda2/envs/py36/lib/python3.6/config-3.6m-x86_64-linux-gnu"

Ici, vim est installé pour /XXX/SOFTWARE/VIM8/install3utiliser l'environnement anaconda pour python 3.6 installé dans/XXX/anaconda2/envs/py36

wander95
la source