Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

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
vim [Le 03/08/2013, 15:04]
109.215.27.112 [Mettre en français la doc vim] l'ancien site n'est plus en ligne : lien vers le miroir
vim [Le 01/07/2022, 11:52]
bcag2 [Pour aller plus loin] suppr liens morts, ajout liens yannesposito et touticphoto
Ligne 1: Ligne 1:
-{{tag>​éditeur_de_texte console programmation IDE gvim}}+ 
 +{{tag>​éditeur_de_texte console programmation IDE}}
  
 ---- ----
Ligne 15: Ligne 16:
 Par défaut, votre système a une version basique de vim, procurée par le paquet **vim-tiny**,​ mais n'​offrant pas toutes les possibilités de cet éditeur. Par défaut, votre système a une version basique de vim, procurée par le paquet **vim-tiny**,​ mais n'​offrant pas toutes les possibilités de cet éditeur.
  
-Commencez par [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​vim|vim]]**.\\+Commencez par [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​vim|vim]]** ou **[[apt>​vim-gnome|vim-gnome]]**. Cette version //​vim-gnome//​ a l'​avantage de disposer des options pour utiliser le presse-papier (( reportez-vous à l'​article [[https://​vim-fr.org/​index.php/​Les_presse-papiers]] pour plus de détails sur les presse-papiers de vim))\\
 Si vous souhaitez ​ une interface graphique pour utiliser Vim, reportez-vous à la page **[[:​gvim]]**. Si vous souhaitez ​ une interface graphique pour utiliser Vim, reportez-vous à la page **[[:​gvim]]**.
- 
 ===== Utilisation ====== ===== Utilisation ======
  
- 
- 
- 
- 
- 
-==== Mettre en français la doc vim ==== 
- 
- 
- 
-Sur Ubuntu 12.04. Tout d'​abord,​ télécharger la traduction de la doc de vim sur le site : http://​cfennajoui.net/​vim/​ //​(miroir)//​ 
- 
-Ensuite, dans un terminal root, sauvegarder la doc vim actuelle (en anglais) dans un répertoire à créer /​usr/​share/​vim/​vimcurrent/​old_vim_doc/​doc/​ (mieux vaut être prudent…) 
- 
-Puis recopier le contenu décompressé de archive_traduit.tar.gz (de Téléchargements) dans /​usr/​share/​vim/​vimcurrent/​doc/​ 
- 
-Vérifier en ouvrant un fichier d'​essai avec vim que l'aide est bien en français. Tout va bien ! 
  
  
Ligne 47: Ligne 31:
 (ou pour la version graphique, lancez l'​application **gvimtutor** avec la combinaison de touches **ALT + F2** ou dans le terminal) (ou pour la version graphique, lancez l'​application **gvimtutor** avec la combinaison de touches **ALT + F2** ou dans le terminal)
  
-Vim dispose aussi d'un tutoriel francophone non-officiel en ligne : [[http://​vim-fr.org/​]] 
  
-Si vimtutor s'​avère être vide, c'est que seule une version minimale de Vim est installée. C'est le cas par défaut sur certaines versions d'​Ubuntu. Afin d'​installer la version complète : **[[apt>​vim]]** ou ''​sudo apt-get install vim''​ 
 ==== Principe de base ==== ==== Principe de base ====
  
Ligne 58: Ligne 40:
  
 Le fichier s'​affiche. Vous êtes dans le **mode commande**((**éditeur modal**: possède différents modes de fonctionnement **commande**,​ **insertion**)),​ c'est à dire que vous pouvez déplacer le curseur comme vous le souhaitez avec les touches h,j,k,l ou avec les flèches ←↓↑→ et entrer des commandes pour agir sur le texte. Si vous tapez un nombre avant une commande, elle se répétera d'​autant. Le fichier s'​affiche. Vous êtes dans le **mode commande**((**éditeur modal**: possède différents modes de fonctionnement **commande**,​ **insertion**)),​ c'est à dire que vous pouvez déplacer le curseur comme vous le souhaitez avec les touches h,j,k,l ou avec les flèches ←↓↑→ et entrer des commandes pour agir sur le texte. Si vous tapez un nombre avant une commande, elle se répétera d'​autant.
- 
  
 Pour accéder au **mode insertion**((**éditeur modal**: possède différents modes de fonctionnement **commande**,​ **insertion**)) afin de modifier ou d'​insérer du texte, il suffit d'​appuyer sur « **i** » dans le mode commande. Appuyer sur la touche « **Échap** » pour en sortir et repasser en mode commande. Pour accéder au **mode insertion**((**éditeur modal**: possède différents modes de fonctionnement **commande**,​ **insertion**)) afin de modifier ou d'​insérer du texte, il suffit d'​appuyer sur « **i** » dans le mode commande. Appuyer sur la touche « **Échap** » pour en sortir et repasser en mode commande.
Ligne 103: Ligne 84:
  
 ^  Exemples ​ ^ Action ​ ^ ^  Exemples ​ ^ Action ​ ^
-|  **<​control-w>​-v**  | Diviser horizontalement | +|  **<​control-w>​-s**  | Diviser horizontalement | 
-|  **<​control-w>​-s**  | Diviser verticalement |+|  **<​control-w>​-v**  | Diviser verticalement |
 |  **<​control-w>​-w** ​ | Passer à la fenêtre suivante | |  **<​control-w>​-w** ​ | Passer à la fenêtre suivante |
 |  **<​control-w>​-n** ​ | Ouvrir un fichier vierge dans une nouvelle fenêtre | |  **<​control-w>​-n** ​ | Ouvrir un fichier vierge dans une nouvelle fenêtre |
 +| **: tabnew //​nom_fichier//​ ** | Ouvrir le fichier //​nom_fichier//​ dans un onglet |
 |  **<​control-w>​-q** ​ | Fermer la fenêtre | |  **<​control-w>​-q** ​ | Fermer la fenêtre |
  
Ligne 120: Ligne 102:
   * de trouver les fichiers incluant le header file indiqué sous le curseur   * de trouver les fichiers incluant le header file indiqué sous le curseur
    
 +==== Comparaison de fichiers ====
  
 +Vous pouvez comparer le contenu de deux fichiers en lançant :
 +<​code>​vimdiff fichier1 fichier2</​code>​
 +vimdiff peut-être remplacé par vim -d\\
 +Si vous êtes déjà dans vim en édition sur le fichier1: ​
 +<​code>:​vert diffsplit fichier2</​code>​
 +si vous ne spécifiez pas //vert//, le "​split"​ sera horizontal (beaucoup moins pratique).\\
 +Ajoutez ​
 +<​code>​set diffopt=vertical</​code> ​
 +dans votre fichier //vimrc// pour que ce soit par défaut.
 +
 +==== Édition hexadécimale ====
 +
 +vim peut servir d'​[[wpfr>​éditeur hexadécimal]] (voir aussi hexedit) : après avoir ouvert votre fichier, tapez 
 +<​code>:​%!xxd</​code>​
 +pour revenir en édition normale <​code>:​%!xxd -r</​code>​
 +comme pour les autres utilisations (recherche, remplace...),​ vous pouvez remplacer % par un n° de ligne ou un intervalle
 +
 +==== Terminal ====
 +Avec la version 8.1, il est possible d'​ouvrir une fenêtre //​terminal//​
 +<​code>​ :​terminal</​code>​ (le mot abrégé //term// convient), si vous préférez en vertical :​ <​code>:​vert term</​code>​
 +
 +Pour sortir: <​code>​ <​Ctrl-D>​ </​code>​ ou <​code>​ «exit» </​code>​
 ===== Configuration ===== ===== Configuration =====
  
-Pour modifier le comportement de vim, il faut agir sur son fichier de configuration (chaque utilisateur peut avoir le sien). Pour cela [[:​tutoriel:​comment_editer_un_fichier|créez ou éditez le fichier]] **~/​.vimrc**.+Pour modifier le comportement de vim, il faut agir sur son fichier de configuration (chaque utilisateur peut avoir le sien). Pour cela [[:​tutoriel:​comment_editer_un_fichier|créez ou éditez le fichier]] **~/​.vimrc** ​(le fichier vimrc global peut se trouver dans /​usr/​share/​vim/​vimrc ).
  
-<note tip>​S'​il n'​existe pas de fichier .vimrc dans le dossier de l'​utilisateur vim se lance en « compatibilité » avec vi. C'​est-à-dire qu'il va charger les options par défaut de vi, et non pas celles de vim. La simple existence de ce fichier suffit normalement à charger les options par défaut de vim, mais, par précaution,​ forcez la désactivation de cette compatibilité (en tout début de fichier, car ça change les options).</​note>​+<note tip>​S'​il n'​existe pas de fichier .vimrc dans le dossier de l'​utilisateurvim se lance en « compatibilité » avec vi. C'​est-à-dire qu'il va charger les options par défaut de vi, et non pas celles de vim. La simple existence de ce fichier suffit normalement à charger les options par défaut de vim, mais, par précaution,​ forcez la désactivation de cette compatibilité (en tout début de fichier, car ça change les options).</​note>​
  
 Voici quelques paramètres utiles à ajouter dans ce fichier : Voici quelques paramètres utiles à ajouter dans ce fichier :
 ^ Paramètre ^ Action ^ ^ Paramètre ^ Action ^
 | <​code>​set nocompatible</​code>​ | Désactive la compatibilité avec vi | | <​code>​set nocompatible</​code>​ | Désactive la compatibilité avec vi |
 +| <​code>​set background=dark </​code>​ | adapte les couleurs pour un fond noir |
 | <​code>​syntax on</​code>​ | Active la coloration syntaxique | | <​code>​syntax on</​code>​ | Active la coloration syntaxique |
 | <​code>​set number</​code>​ | Affiche les numéros de lignes | | <​code>​set number</​code>​ | Affiche les numéros de lignes |
Ligne 138: Ligne 144:
 | <​code>​set autoindent</​code>​ | Conserve l'​indentation courante sur les nouvelles lignes | | <​code>​set autoindent</​code>​ | Conserve l'​indentation courante sur les nouvelles lignes |
 | <​code>​set backspace=indent,​eol,​start</​code>​ | retours arrières intelligents | | <​code>​set backspace=indent,​eol,​start</​code>​ | retours arrières intelligents |
-| <​code>​set shiftround</​code>​ | Indentation ​la marque de Tab la plus proche |+| <​code>​set shiftround</​code>​ | Indentation ​à la marque de Tab la plus proche |
 | <​code>​set ignorecase</​code>​ | Ignore la casse lors de recherche | | <​code>​set ignorecase</​code>​ | Ignore la casse lors de recherche |
 | <​code>​set showmode</​code>​ | affiche le mode d'​édition | | <​code>​set showmode</​code>​ | affiche le mode d'​édition |
 | <​code>​set ruler</​code>​ | affiche la position du curseur | | <​code>​set ruler</​code>​ | affiche la position du curseur |
 | <​code>​set showcmd</​code>​ | affiche les commandes incomplète | | <​code>​set showcmd</​code>​ | affiche les commandes incomplète |
 +|<​code>​map <C-m> :​resize<​CR>​ </​code>​| Ctrl-m maximize la fenetre courrante (:help map)|
 +|<​code>​map <C-b> :​bNext<​CR></​code>​| Ctrl-b aller au tampon suivant (:help map)|
  
 Si vim ne se souvient pas de la position précédente du curseur lorsque vous réouvrez un fichier, il faut ajouter la ligne suivante dans le fichier ~/.vimrc: Si vim ne se souvient pas de la position précédente du curseur lorsque vous réouvrez un fichier, il faut ajouter la ligne suivante dans le fichier ~/.vimrc:
Ligne 155: Ligne 163:
 <​note>​ Si vous avez l'​erreur "​Sorry,​ the command is not available in this version: syntax on", vous utilisez surement vim-tiny et non vim "​complet"​. Pour y remédier, [[:​tutoriel:​comment_supprimer_un_paquet| supprimez le paquet]] **vim-tiny** et [[:​tutoriel:​comment_installer_un_paquet|ré-installez le paquet]] **vim** <​note>​ Si vous avez l'​erreur "​Sorry,​ the command is not available in this version: syntax on", vous utilisez surement vim-tiny et non vim "​complet"​. Pour y remédier, [[:​tutoriel:​comment_supprimer_un_paquet| supprimez le paquet]] **vim-tiny** et [[:​tutoriel:​comment_installer_un_paquet|ré-installez le paquet]] **vim**
  
-Vous pouvez ​pouvez aussi utiliser la commande suivante et choisir vim.gnome : <​code>​sudo update-alternatives --config vim</​code>​+Vous pouvez aussi utiliser la commande suivante et choisir vim.gnome : <​code>​sudo update-alternatives --config vim</​code>​
 </​note>​ </​note>​
  
 ==== Vim supporte les souris ==== ==== Vim supporte les souris ====
  
-Le service **gpm**((**gpm** : General Purpose Mouse interface ​http://​www.nico.schottelius.org/​software/​gpm/​)) permet l'​utilisation de la souris dans le terminal pour sélectionner,​ copier et coller. Vérifiez que le paquet [[apt://​gpm|gpm]] est [[:​tutoriel:​comment_installer_un_paquet|installé]] et [[:​tutoriel:​comment_modifier_un_fichier|modifiez votre fichier]] ​ ~/.vimrc comme expliqué plus haut pour y insérer :+Le service **gpm**((**gpm** : General Purpose Mouse interface ​https://​www.nico.schottelius.org/​software/​gpm/​)) permet l'​utilisation de la souris dans le terminal pour sélectionner,​ copier et coller. Vérifiez que le paquet [[apt://​gpm|gpm]] est [[:​tutoriel:​comment_installer_un_paquet|installé]] et [[:​tutoriel:​comment_modifier_un_fichier|modifiez votre fichier]] ​ ~/.vimrc comme expliqué plus haut pour y insérer :
 <​code>​set mouse=a</​code>​ <​code>​set mouse=a</​code>​
  
Ligne 176: Ligne 184:
 set t_Co=88 set t_Co=88
 </​code>​ </​code>​
-Il est cependant nécessaire que le thème ait été pensé à la fois pour la GUI et le terminal. Si ce n'est pas le cas du thème que vous avez choisi, le plus simple est d'​utiliser le plugin [[http://​www.vim.org/​scripts/​script.php?​script_id=1809|guicolorscheme]]. +Il est cependant nécessaire que le thème ait été pensé à la fois pour la GUI et le terminal. Si ce n'est pas le cas du thème que vous avez choisi, le plus simple est d'​utiliser le plugin ​ [[https://​www.vim.org/​scripts/​script.php?​script_id=1809|guicolorscheme]]. 
-   ​[[http://phollow.fr/2010/11/5-themes-vim-pour-frimer-devant-les-filles/?utm_source=rss&​utm_medium=rss&​utm_campaign=5-themes-vim-pour-frimer-devant-les-filles|5 thèmes VIM pour frimer devant les filles]]+ 
 +Nota : les thèmes installés par défaut se trouvent dans le répertoire /​usr/​share/​vim/​vim**xx**/​colors ou xx correspond à la version en cours, 74 ou 80 à ce jour 
 + 
 +===== Extensions, plugins et packages ===== 
 +Il existe de nombreuses extensions à VIM, notamment pour les développeurs,​ pour ajouter des fonctionnalités telle que l'​arborescence du répertoire de travail, la liste des fonctions/​variables,​ des colorations spécifiques… 
 + 
 +Pour lister les plugins installés, dans VIM, tapez la commande: 
 +<​code>:​scriptnames </​code>​ 
 + 
 +==== Les plugins ==== 
 +C'est assez simple, ils se composent généralement de deux fichiers, un //.vim// et un //.txt//. 
 +Le //.vim// peut simplement être déposé dans ///​usr/​share/​vim/​vim80/​plugin///,​\\ 
 +le //.txt// dans ///​usr/​share/​vim/​vim80/​doc///​ 
 + 
 +==== Les packages ==== 
 +C'est plus compliqué, mais il existe des outils, tel que [[https://​github.com/​tpope/​vim-pathogen|Pathogen]] ou [[https://​github.com/​VundleVim/​Vundle.vim|Vundle]] pour simplifier leur installation
  
 ===== Pour aller plus loin ===== ===== Pour aller plus loin =====
-  * [[http://​www.vim.org/​]] -- Site officiel (en) +  * [[https://​www.vim.org/​]] -- Site officiel (en)
-  * [[http://​www.gentoo.org/​doc/​fr/​vi-guide.xml|Apprendre vi, la technique de "la feuille de triche"​]] +
-  * [[http://​cfennajoui.net/​vim/​|Traduction de la documentation de Vim (miroir)]]+
   * [[ftp://​ftp.vim.org/​pub/​vim/​doc/​book/​vimbook-OPL.pdf|Vim book (fichier PDF, anglais)]]   * [[ftp://​ftp.vim.org/​pub/​vim/​doc/​book/​vimbook-OPL.pdf|Vim book (fichier PDF, anglais)]]
-  * [[http://www.swaroopch.com/notes/Vim_fr:​Table_des_Mati%C3%A8res|Traduction française du livre: A byte of Vim]] +  * [[https://arolla.developpez.com/tutoriels/​programmation/​editeurs-code/​dompter-vim-en-trois-temps/|Tuto sur developpez.com]] 
-  * [[http://www.siteduzero.com/tutoriel-3-88344-vim-l-editeur-de-texte-du-programmeur.html|Tuto du site du zéro]] +  * [[https://yannesposito.com/Scratch/​fr/​blog/​Learn-Vim-Progressively/​|Apprendre Vim progressivement]] 
-  * [[http://vim-fr.org/index.php/Accueil|Wiki Francophone de Vim]]+  * [[https://​touticphoto.fr/​assistance-informatique/​30-editeur-de-texte-vim|Quelques notes de prises en main sur Vim]] 
 +  * [[https://github.com/dpelle/vim-Grammalecte|Plugin Grammalecte]] étendre les fonctionnalités de VIM avec un Correcteur grammatical dédié à la langue française.
  
 ---- ----
  • vim.txt
  • Dernière modification: Le 27/03/2024, 09:25
  • par bcag2