Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
utilisateurs:hypathie:tutos:vim-ide-python [09/12/2015 22:48] Hypathie [Installer VIM IDE pour python] |
utilisateurs:hypathie:tutos:vim-ide-python [15/01/2016 09:59] Hypathie [VIM IDE DJANGO] |
||
---|---|---|---|
Ligne 9: | Ligne 9: | ||
- | ===== Installer VIM IDE pour python ===== | + | ===== Installer VIM IDE pour python 3===== |
- | ===On supprime les versions vim existantes sur le système== | ||
- | * En effet, | + | ====Introduction ==== |
+ | * Si vim est déjà installé il n'est peut être pas configuré avec un interpréteur pour python ou python 3 : | ||
<code user> | <code user> | ||
- | vim --version | + | vim --version | grep python |
</code> | </code> | ||
- | <code retour>VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Mar 31 2015 23:36:07) | + | <code retour>+cryptv +linebreak -python +viminfo |
- | Rustines incluses : 1-488, 576 | + | +cscope +lispindent -python3 +vreplace</code> |
- | Modifié par pkg-vim-maintainers@lists.alioth.debian.org | + | |
- | Compilé par jamessan@debian.org | + | |
- | Énorme version avec interface graphique GTK2. | + | |
- | Fonctionnalités incluses (+) ou non (-) : | + | |
- | +acl +farsi +mouse_netterm +syntax | + | |
- | +arabic +file_in_path +mouse_sgr +tag_binary | + | |
- | +autocmd +find_in_path -mouse_sysmouse +tag_old_static | + | |
- | +balloon_eval +float +mouse_urxvt -tag_any_white | + | |
- | +browse +folding +mouse_xterm +tcl | + | |
- | ++builtin_terms -footer +multi_byte +terminfo | + | |
- | +byte_offset +fork() +multi_lang +termresponse | + | |
- | +cindent +gettext -mzscheme +textobjects | + | |
- | +clientserver -hangul_input +netbeans_intg +title | + | |
- | +clipboard +iconv +path_extra +toolbar | + | |
- | +cmdline_compl +insert_expand +perl +user_commands | + | |
- | +cmdline_hist +jumplist +persistent_undo +vertsplit | + | |
- | +cmdline_info +keymap +postscript +virtualedit | + | |
- | +comments +langmap +printer +visual | + | |
- | +conceal +libcall +profile +visualextra | + | |
- | +cryptv +linebreak +python +viminfo | + | |
- | +cscope +lispindent -python3 +vreplace | + | |
- | </code> | + | |
- | => ''+python -python3'' :-/ | + | => ''-python -python3'' :-/ |
- | <code root>apt-get remove vim vim-runtime gvim vim-tiny vim-common vim-gui-common</code> | + | * Si l'on veut repartir à neuf : |
- | ===On récupère vim à la source et on le compile avec l'option python3=== | + | <code root>dpkg --status vim</code> |
+ | <code retour> | ||
+ | Package: vim | ||
+ | Status: install ok installed | ||
+ | Priority: optional | ||
+ | Section: editors | ||
+ | Installed-Size: 2233 | ||
+ | Maintainer: Debian Vim Maintainers <pkg-vim-maintainers@lists.alioth.debian.org> | ||
+ | Architecture: amd64 | ||
+ | Version: 2:7.4.488-7 | ||
+ | Provides: editor | ||
+ | Depends: vim-common (= 2:7.4.488-7), vim-runtime (= 2:7.4.488-7), libacl1 (>= 2.2.51-8), libc6 (>= 2.15), libgpm2 (>= 1.20.4), libselinux1 (>= 1.32), libtinfo5 | ||
+ | Suggests: ctags, vim-doc, vim-scripts | ||
+ | Description: Vi IMproved - enhanced vi editor | ||
+ | Vim is an almost compatible version of the UNIX editor Vi. | ||
+ | <...> | ||
+ | </code> | ||
- | <code root>cd ~</code> | + | On supprime la version installée et ses dépendances |
- | <code root>hg clone https://code.google.com/p/vim/</code> | + | |
- | <code root>cd vim</code> | + | |
- | <code root>./configure --with-features=huge \ | + | |
- | --enable-multibyte \ | + | |
- | --enable-rubyinterp \ | + | |
- | --enable-python3interp vi_cv_path_python3=/usr/bin/python3.4 \ | + | |
- | --with-python-config-dir=/usr/lib/python3.4/config-3.4m-x86_64-linux-gnu \ | + | |
- | --enable-perlinterp \ | + | |
- | --enable-luainterp \ | + | |
- | --enable-gui=gtk2 --enable-cscope --prefix=/usr</code> | + | |
- | <code root>make VIMRUNTIMEDIR=/usr/share/vim/vim74</code> | + | |
- | <code root>apt-get install checkinstall</code> | + | |
- | <code root>checkinstall</code> | + | |
- | <code retour>********************************************************************** | + | <code root>apt-get remove vim vim-common vim-runtime</code> |
- | Done. The new package has been installed and saved to | ||
- | /root/vim/vim_20151209-1_amd64.deb | + | * Sur un système Jessie tout neuf la commande : ''apt-get install vim'' |
- | You can remove it from your system anytime using: | + | installera les paquets ''vim-doc'' et ''vim-scripts''. Il est suggéré d'installer aussi ''vim-common'' et ''vim-runtime''... |
- | dpkg -r vim | + | Allons-y : |
- | **********************************************************************</code> | + | <code root>apt-get install vim vim-common vim-runtime</code> |
- | <note> | ||
- | **Et maintenant ''vim --version'' retourne ''-python +python3 ''** 8-) | ||
- | </note> | ||
- | ===On fait de vim son éditeur par défaut=== | ||
- | <code root>update-alternatives --install /usr/bin/editor editor /usr/bin/vim 1</code> | + | === Reconfiguration de vim === |
- | <code root>update-alternatives --set editor /usr/bin/vim</code> | + | |
- | <code root>update-alternatives --install /usr/bin/vi vi /usr/bin/vim 1</code> | + | |
- | <code root>update-alternatives --set vi /usr/bin/vim</code> | + | |
- | ===Configurer vim=== | + | Pour utiliser vim avec python3 : |
- | * On télécharge ce script | + | * on installe pour ce qui concerne python 3 : |
- | <code text configVim.sh> | + | <code root>apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \ |
- | #!/bin/sh | + | libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \ |
+ | libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev \ | ||
+ | ruby-dev mercurial</code> | ||
+ | |||
+ | * Pour ce concerne la configuration de vim : | ||
- | mkdir -p ~/.vim/autoload/ ~/.vim/bundle/ ~/.vim/colors/ ~/.vim/ftplugin/ | + | <code root>apt-get install devscripts</code> |
- | printf "les dossiers ~/.vim/autoload/ ~/.vim/bundle/ ~/.vim/colors/ ~/.vim/ftplugin/ ont bien été créés\n" | + | |
- | ls -la ~/.vim/ | + | |
- | cd ~/.vim/autoload | + | |
- | wget https://raw.githubusercontent.com/tpope/vim-pathogen/master/autoload/pathogen.vim | + | |
- | cd ~/.vim/bundle | + | |
- | git clone https://github.com/tpope/vim-sensible.git && git clone https://github.com/kien/ctrlp.vim.git && git clone https://github.com/scrooloose/nerdtree && git clone https://github.com/klen/python-mode.git && git clone https://github.com/Lokaltog/vim-powerline.git && git clone https://github.com/jistr/vim-nerdtree-tabs.git | + | |
- | cd ~/.vim/colors | + | |
- | wget https://raw.githubusercontent.com/thesheff17/youtube/master/vim/wombat256mod.vim | + | |
- | cd ~/.vim/ftplugin | + | |
- | wget https://raw.githubusercontent.com/thesheff17/youtube/master/vim/python_editing.vim | + | |
- | cd ~ | + | |
- | wget https://raw.githubusercontent.com/thesheff17/youtube/master/vim/vimrc | + | |
- | ls -la ~/vimrc | + | |
- | printf "Le fichier ~/vimrc a bien été reçu.\n" | + | |
- | mv vimrc ~/.vimrc | + | |
- | printf "Le fichier ~/vimrc est dans ~/.vimrc\n" | + | |
- | printf "Et voilà !\n" | + | |
- | </code> | + | |
- | * On installe cette configuration | ||
- | <code user>mv ~/Téléchargements/configVim.sh ~/</code> | + | * Changer les options de vim |
- | <code user>chmod +x configVim.sh</code> | + | |
- | <code user>./configVim.sh</code> | + | |
+ | On crée un répertoire où travailler : | ||
- | <note tip> | + | <code user>mkdir temp && cd temp</code> |
- | Pour la supprimer, c'est simple : | + | |
- | <code user>rm -rf ~/.vim/ && rm -r ~/.vimrc</code> | + | On recupère les sources : |
- | </note> | + | |
- | * Pour avoir la même configuration quand on lance vim en root | + | <code user>apt-get source vim</code> |
- | <code root>cd ~</code> | + | Ce qui donne : |
- | <code root>wget https://raw.githubusercontent.com/thesheff17/youtube/master/vim/vim.py</code> | + | |
- | <code root>chmod +x ./vim.py</code> | + | |
- | <code root>./vim.py -u root</code> | + | |
- | <note tip> | + | |
- | <code root>cd ~ && rm -rf ~/.vim/ && rm -r ~/.vimrc</code> | + | |
- | </note> | + | |
- | =====Utilisations===== | + | <code user>ls</code> |
- | =====Configurer Vim pour Python ===== | + | |
- | * On installe curl | + | <code retour>vim-7.4.488 vim_7.4.488-7.debian.tar.xz vim_7.4.488-7.dsc vim_7.4.488.orig.tar.gz</code> |
- | <code root>apt-get install curl</code> | + | On se déplace dans le dossier ''vim-7.4.488'' : |
- | * On installe git : | + | <code user>cd vim-7.4.488</code> |
- | <code root>apt-get install git-core</code> | + | * Pour reconstruire vim |
- | * On installe pathogen | + | D'abord on installer toutes les dépendances nécessaires à la reconstruction du paquet : |
- | Voir : https://github.com/search?utf8=%E2%9C%93&q=pathogen | + | <code root>apt-get build-dep vim</code> |
- | <code user> | + | Dans ce répertoire ''vim-7.4.488'' il y a le répertoire ''debian'' : |
- | mkdir -p ~/.vim/autoload ~/.vim/bundle && \ | + | |
- | curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim | + | <code user>ls</code> |
+ | <code retour> | ||
+ | configure Filelist README_amibin.txt.info README_dos.txt README_srcdos.txt README_w32s.txt vimdir.info | ||
+ | Contents libs README_amisrc.txt README_extra.txt README_src.txt runtime Vim.info | ||
+ | Contents.info Makefile README_amisrc.txt.info README_mac.txt README.txt runtime.info vimtutor.bat | ||
+ | csdpmi4b.zip nsis README_ami.txt README_ole.txt README.txt.info src vimtutor.com | ||
+ | debian pixmaps README_ami.txt.info README_os2.txt README_unix.txt src.info Xxd.info | ||
+ | farsi README_amibin.txt README_bindos.txt README_os390.txt README_vms.txt uninstal.txt | ||
</code> | </code> | ||
- | * On crée et édite un fichier caché ~/.vimrc : | + | Et dans ce répertoire ''debian'' il y a un fichier ''rules'' : |
- | <code user>vim ~/.vimrc</code> | + | <code user>ls -la debian/rules</code> |
- | <file> | + | <code retour>-rwxr-xr-x 1 hypathie hypathie 18825 mars 21 2015 rules</code> |
- | execute pathogen#infect() | + | |
- | syntax on | + | |
- | filetype plugin indent on | + | |
- | </file> | + | |
- | pathogen va chercher dans le répertoire bundle les plugin qu'on lui a installé et les utiliser comme si on les avait installé dans le fichier .vimrc | + | Puis on édite rules pour obtenir la ligne suivante : |
- | * On installe le module nerdtree : | + | <code user>vim rules</code> |
- | Voir : https://github.com/scrooloose/nerdtree | + | <code>ALLINTERPFLAGS+=--enable-python3interp --with-python3-config-dir=$(shell python3-config --configdir)</code> |
- | <code user>git clone https://github.com/scrooloose/nerdtree.git ~/.vim/bundle/nerdtree</code> | + | On choisit son éditeur par défaut et on lui ajoute sa touche personnelle : |
- | <note tip> | + | <code user>dch -i</code> |
- | ** | + | Par exemple : |
- | Principales commandes de NERD Tree :** | + | <code> |
+ | vim (2:7.4.488-7.1) UNRELEASED; urgency=medium | ||
+ | * Non-maintainer upload. | ||
+ | * vim_python3 | ||
+ | </code> | ||
+ | On reconstruit le paquet : | ||
- | t: Ouvrir le fichier sélectionné dans un nouvel onglet | + | <code root>debuild binary</code> |
- | i: Ouvrez le fichier sélectionné dans une fenêtre fissure verticale | + | |
- | s: Open the selected file in a vertical split window | + | |
- | I: Commutation de fichiers cachés | + | |
- | m: Pour faire apparaître un menu qui vous permettra d'ajouter rapidement, déplacer(=renomer), copier et supprimer des nœuds (ou fichiers). | + | |
- | R: Actualiser l'arbre, utile si les fichiers ont changés en dehors de Vim | + | |
- | ?: Commutation entre l'aide rapide et l'explorateur NERD Tree | + | |
- | Ctrl +w puis w: Passer de l'explorateur NERD Tree à la fenêtre d'édition des fichiers | + | |
- | </note> | + | Il fait ses tests ;-) ... |
- | * On installe vim-airLine améliorer le statusline. | + | Puis on on lance : |
- | <code user>git clone https://github.com/bling/vim-airline.git ~/.vim/bundle/vim-airline</code> | + | <code root>dpkg -i {vim-gtk,vim-common,vim-gui-common,vim-runtime}_*.deb</code> |
- | + | ||
- | On ajoute la ligne suivante dans ''~./vimrc'' : | + | |
- | + | ||
- | <code>let g:airline#extensions#tabline#enabled = 1</code> | + | |
<note tip> | <note tip> | ||
- | * Après avoir ouvert plusieurs fichiers, pour passer d'un fichier à l'autre, le curseur entant placé dans l'encadré d'édition d'un fichier: | + | Cette dernière commande se lance en étant dans le répertoire racine, où il y a les fichiers qui ont été créés par la commande ''debuild binary'' : |
- | - On peut utiliser la commande vim '':register'' puis on choisit son buffer ; | + | <code user>cd temp/ && ls</code> |
- | - On peut faire '':bn'' (pour Buffer Next) ou '':bp'' (pour Buffer Prevous) ; | + | |
- | * On peut se faire un racourcit : | + | <code retour>vim-7.4.488 vim-doc_7.4.488-7.1_all.deb |
+ | vim_7.4.488-7.1_amd64.deb vim-gnome_7.4.488-7.1_amd64.deb | ||
+ | vim_7.4.488-7.debian.tar.xz vim-gtk_7.4.488-7.1_amd64.deb | ||
+ | vim_7.4.488-7.dsc vim-gui-common_7.4.488-7.1_all.deb | ||
+ | vim_7.4.488.orig.tar.gz vim-lesstif_7.4.488-7.1_all.deb | ||
+ | vim-athena_7.4.488-7.1_amd64.deb vim-nox_7.4.488-7.1_amd64.deb | ||
+ | vim-common_7.4.488-7.1_amd64.deb vim-runtime_7.4.488-7.1_all.deb | ||
+ | vim-dbg_7.4.488-7.1_amd64.deb vim-tiny_7.4.488-7.1_amd64.deb | ||
+ | </code> | ||
+ | </note> | ||
- | - On édite ''~/.vimrc'' | ||
- | - on ajoute : | ||
- | <code> | + | Et voilà ! |
- | nmap <C-n> :bn<CR> | + | |
- | nmap <C-p> :bp<CR> | + | |
- | </code> | + | |
- | * Pour utiliser la souris | + | <code user>vim --version | grep python*</code> |
- | + | <code retour>+cryptv +linebreak -python +viminfo | |
- | <code> | + | +cscope +lispindent +python3 +vreplace |
- | set mouse=a | + | |
</code> | </code> | ||
- | </note> | ||
- | * Utilisation de la souris pour naviger entre les fenêtres, et sélectionner dans une seule fenêtre (i.e mode visuel de vim) | + | ====vim IDE pour python 3==== |
- | On édite ''~/.vimrc'' | + | * On installe git |
+ | <code root>apt-get install git</code> | ||
- | On ajoute : | + | * On télécharge ce script |
- | <file> | + | |
- | set mouse=a | + | |
- | </file> | + | |
- | * On ajoute le plugin syntastic | + | <code text configVim.sh> |
+ | #!/bin/sh | ||
- | Voir : https://github.com/scrooloose/syntastic | + | mkdir -p ~/.vim/autoload/ ~/.vim/bundle/ ~/.vim/colors/ ~/.vim/ftplugin/ |
+ | printf "les dossiers ~/.vim/autoload/ ~/.vim/bundle/ ~/.vim/colors/ ~/.vim/ftplugin/ ont bien été créés\n" | ||
+ | ls -la ~/.vim/ | ||
+ | cd ~/.vim/autoload | ||
+ | wget https://raw.githubusercontent.com/tpope/vim-pathogen/master/autoload/pathogen.vim | ||
+ | cd ~/.vim/bundle | ||
+ | git clone https://github.com/tpope/vim-sensible.git && git clone https://github.com/kien/ctrlp.vim.git && git clone https://github.com/scrooloose/nerdtree && git clone https://github.com/klen/python-mode.git && git clone https://github.com/Lokaltog/vim-powerline.git && git clone https://github.com/jistr/vim-nerdtree-tabs.git | ||
+ | cd ~/.vim/colors | ||
+ | wget https://raw.githubusercontent.com/thesheff17/youtube/master/vim/wombat256mod.vim | ||
+ | cd ~/.vim/ftplugin | ||
+ | wget https://raw.githubusercontent.com/thesheff17/youtube/master/vim/python_editing.vim | ||
+ | cd ~ | ||
+ | wget https://raw.githubusercontent.com/thesheff17/youtube/master/vim/vimrc | ||
+ | ls -la ~/vimrc | ||
+ | printf "Le fichier ~/vimrc a bien été reçu.\n" | ||
+ | mv vimrc ~/.vimrc | ||
+ | printf "Le fichier ~/vimrc est dans ~/.vimrc\n" | ||
+ | printf "Et voilà !\n" | ||
+ | </code> | ||
- | <code user>git clone https://github.com/scrooloose/syntastic.git ~/.vim/bundle/syntastic</code> | + | * On installe cette configuration |
- | * On ajoute le plugin tagbar | + | <code user>mv ~/Téléchargements/configVim.sh ~/</code> |
+ | <code user>chmod +x configVim.sh</code> | ||
+ | <code user>./configVim.sh</code> | ||
- | <code user>git clone https://github.com/majutsushi/tagbar.git ~/.vim/bundle/tagbar</code> | ||
<note tip> | <note tip> | ||
- | Ajout dans '' ~/.vimrc '' | + | Pour la supprimer, c'est simple : |
- | <code> | + | |
- | "Racourci clavier pour basculer avec Tagbar | + | <code user>rm -rf ~/.vim/ && rm -r ~/.vimrc</code> |
- | nmap <F2> :TagbarToggle<CR> | + | |
- | </code> | + | |
</note> | </note> | ||
+ | * Pour avoir la même configuration quand on lance vim en root | ||
- | * Ajout de l'autocomplétion : | + | <code root>cd ~</code> |
+ | <code root>wget https://raw.githubusercontent.com/thesheff17/youtube/master/vim/vim.py</code> | ||
+ | <code root>chmod +x ./vim.py</code> | ||
+ | <code root>./vim.py -u root</code> | ||
<note tip> | <note tip> | ||
- | Ajout dans '' ~/.vimrc '' | + | Et pour supprimer cette configuration de vim utiliser en tant que root : |
- | <code> | + | |
- | "Pour utiliser un plugin d'autocomplétion | + | <code root>cd ~ && rm -rf ~/.vim/ && rm -r ~/.vimrc</code> |
- | set omnifunc=syntaxComplet#Complete | + | |
- | </code> | + | |
</note> | </note> | ||
- | ===== VIM IDE DJANGO ===== | + | |
+ | =====Utilisations===== | ||
+ | |||