« Vim » : différence entre les versions

De Wiki doc

(Page créée avec « Category:éditeurs de texte [https://fr.wikipedia.org/wiki/Vim Vim] est un éditeur de texte, clone de [https://fr.wikipedia.org/wiki/Vi_(logiciel) vi], signifiant "VI... »)
 
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
[[Category:éditeurs de texte]]
[[Category:éditeurs de texte]]
[https://fr.wikipedia.org/wiki/Vim Vim] est un éditeur de texte, clone de [https://fr.wikipedia.org/wiki/Vi_(logiciel) vi], signifiant "VI aMélioré" permettant d'éditer des documents de type texte (notamment des fichiers de configuration) dans un terminal ou une console (shell). Il ne nécessite pas d'interface graphique pour être exécuté, ce qui en fait un excellent outil sur un serveur, dépourvu d'[[Category:Environnements_bureau|interface graphique]].
[https://fr.wikipedia.org/wiki/Vim Vim] est un éditeur de texte, clone de [https://fr.wikipedia.org/wiki/Vi_(logiciel) vi], signifiant "VI aMélioré" permettant d'éditer des documents de type texte (notamment des fichiers de configuration) dans un terminal ou une console (shell). Il ne nécessite pas d'interface graphique pour être exécuté, ce qui en fait un excellent outil sur un serveur, dépourvu d'[[Category:Environnements_bureau|interface graphique]].
{{attention|'''Ne contribue pas encore sur cet article stp, j'ai pas fini et je suis ma liste txt. Je doit m'absenter. Je continu après.'''}}
<span style="color:red;">Parler du vimrc</span>


=Installation=
=Installation=
Ligne 51 : Ligne 55 :
ou <source lang="bash" inline><maj>+<v></source> puis <source lang="bash" inline><x></source>.
ou <source lang="bash" inline><maj>+<v></source> puis <source lang="bash" inline><x></source>.


<span style="color:red;">Ne contribue pas encore sur cet article stp, j'ai pas fini et je suis ma liste txt. Je doit m'absenter. Je continu après.</span>
Ajouter en fin de ligne (après séléction <source lang="bash" inline><maj>+<v></source> + <source lang="bash" inline>:</source>)
s/$/\ :\
Remplacer un mot par un autre
%s/Mot_initial/Nouveau_mot/g
Changer encodage caractère
set fileencoding=latin1
set fileencoding=utf-8
Auto complétion CSS (une fois renseigné, faire <source lang="bash" inline><ctrl>+<x></source> + <source lang="bash" inline><ctrl>+<o></source>)
set omnifunc=csscomplete#CompleteCSS
Exécuter une commande bash sans quitter vim
!Commande_À_Exécuter
Importer fichier depuis vim
r Chemin_fichier
Indentation automatique
se ai
Insensibilité à la casse (utile pour le mode recherche notamment)
se ic
Activer le curseur de sélection avec la souris
se mouse=a
Désactiver le curseur de sélection avec la souris
se mouse=
Spliter l'écran pour ouvrire un autre fichier horizontalement
split [Nom_fichier] ou :sp
En vertical
vspli ou :vsp
Redéfinir l'espace de l'indentation (pour passer de 8 espaces à 3)
set tabstop=3
set shiftwidth=3
set softtabstop=3
Convertir des indentation "espace" en indentation "tabulation"
%retab!
Créer et gérer des onglets
tabnew [nom_fichier]
Se déplacer dans les onglets
 
En avant : <source lang="bash" inline>gt</source>, en arrière : <source lang="bash" inline>gT</source>.
 
Ouvrir plusieurs fichier dans un onglets chacun :
$ vim -p fichier1 fichier2 fichier3
 
=Presses papiers=
Vim possèdes plusieurs presses papiers (buffers) qui peuvent être exploiter afin de poutrer sévère lors d'une édition de texte. Il y en a un par lettre de l'alphabet. Ils s'utilisent en '''mode interactif''' avec les touches <source lang="bash" inline>"<lettre><raccourci></source> de cette manière :
 
Copier des lignes dans des presses papiers différents
 
<source lang="bash" inline>"ayy</source>, <source lang="bash" inline>"byy</source>, <source lang="bash" inline>"cyy</source>.
 
Coller des lignes depuis des presses papiers  différents
 
<source lang="bash" inline>"ap</source>, <source lang="bash" inline>"bp</source>, <source lang="bash" inline>"cp</source>.
 
Pour ajouter une ligne à un presse papier, il faut préciser la lettre du presse papier voulu, en majuscule <source lang="bash" inline>"Byy</source>.
 
Pour copier/coller en prenant en compte le presse papier global (celui que l'on à lors d'un simple <source lang="bash" inline>yy</source>)
 
<source lang="bash" inline>"+yy</source> copie une ligne pour le presse papier global, et <source lang="bash" inline>"+p</source> colle le presse papier global.
 
Buffer poubelle (équivalent du /dev/null)
<source lang="bash" inline>"_dd</source>
 
=Sources=
http://cfennajoui.net/vim/traduit/html/usr_30.txt.php
 
http://www.blogduwebdesign.com/developpement-vim/vim-astuce-pour-le-copier-coller/605

Version du 11 janvier 2017 à 20:55

Vim est un éditeur de texte, clone de vi, signifiant "VI aMélioré" permettant d'éditer des documents de type texte (notamment des fichiers de configuration) dans un terminal ou une console (shell). Il ne nécessite pas d'interface graphique pour être exécuté, ce qui en fait un excellent outil sur un serveur, dépourvu d'.

ATTENTION

Ne contribue pas encore sur cet article stp, j'ai pas fini et je suis ma liste txt. Je doit m'absenter. Je continu après.

Parler du vimrc

Installation

# apt install vim

Comportement

Vim possède 5 modes :

  1. Le mode interactif
  2. Le mode insertion
  3. Le mode commande
  4. Le mode visuel
  5. Le mode recherche

Mode interactif

Lorsque Vim est exécuté, il est par défaut en mode interactif. Ce mode permet d'utiliser des combinaisons de touche pour interagir avec le texte du document en cours d'édition. Il est par exemple possible, en une combinaison, de couper 4 lignes de texte et de les coller dans un autre emplacement du document, voir dans un autre document.

Mettre un tableau avec les touches qu'on utilise souvent avec le mode interactif

Mode insertion

Le mode insertion est le mode classique d'édition de texte. C'est celui dans lequel on tape du texte comme dans n'importe quel autre éditeur.

Pour revenir au mode interactif, il faut presser la touche <Echap>.

Mode commande

Ce mode permet d’interagir avec Vim par l'intermédiaire de commandes. Ces dernières vont permettres d'enregistrer le document, quitter Vim, importer un document dans un autre, passer des expressions régulières, activer des options et bien d'autres choses...

On entre une commande en étant au préalable en mode interactif et en tapant :.

Quelque commandes

Activer l'affichage des numéros de lignes

se nu

désactiver l'affichage des numéros de lignes

se nu!

Activer la coloration syntaxique

syn on

Désactiver la coloration syntaxique

syn off

Afficher la ligne où se trouve le curseur

set cursorline

Masquer le trait de soulignement

set cursorline!

Commenter plusieurs lignes

.,+4 s/^/#/g

Décommenter plusieurs lignes

.,+4 s/^#//g

Plus simple, pour commenter (après une sélection des lignes à commenter en mode visuel block <maj>+<v> et un appui sur :)

s/^/#

Décommenter (après séléction <maj>+<v> + :)

s/#//

ou <maj>+<v> puis <x>.

Ajouter en fin de ligne (après séléction <maj>+<v> + :)

s/$/\ :\ 

Remplacer un mot par un autre

%s/Mot_initial/Nouveau_mot/g

Changer encodage caractère

set fileencoding=latin1
set fileencoding=utf-8

Auto complétion CSS (une fois renseigné, faire <ctrl>+<x> + <ctrl>+<o>)

set omnifunc=csscomplete#CompleteCSS

Exécuter une commande bash sans quitter vim

!Commande_À_Exécuter

Importer fichier depuis vim

r Chemin_fichier

Indentation automatique

se ai

Insensibilité à la casse (utile pour le mode recherche notamment)

se ic

Activer le curseur de sélection avec la souris

se mouse=a

Désactiver le curseur de sélection avec la souris

se mouse=

Spliter l'écran pour ouvrire un autre fichier horizontalement

split [Nom_fichier] ou :sp

En vertical

vspli ou :vsp

Redéfinir l'espace de l'indentation (pour passer de 8 espaces à 3)

set tabstop=3
set shiftwidth=3
set softtabstop=3

Convertir des indentation "espace" en indentation "tabulation"

%retab!

Créer et gérer des onglets

tabnew [nom_fichier]

Se déplacer dans les onglets

En avant : gt, en arrière : gT.

Ouvrir plusieurs fichier dans un onglets chacun :

$ vim -p fichier1 fichier2 fichier3

Presses papiers

Vim possèdes plusieurs presses papiers (buffers) qui peuvent être exploiter afin de poutrer sévère lors d'une édition de texte. Il y en a un par lettre de l'alphabet. Ils s'utilisent en mode interactif avec les touches "<lettre><raccourci> de cette manière :

Copier des lignes dans des presses papiers différents

"ayy, "byy, "cyy.

Coller des lignes depuis des presses papiers différents

"ap, "bp, "cp.

Pour ajouter une ligne à un presse papier, il faut préciser la lettre du presse papier voulu, en majuscule "Byy.

Pour copier/coller en prenant en compte le presse papier global (celui que l'on à lors d'un simple yy)

"+yy copie une ligne pour le presse papier global, et "+p colle le presse papier global.

Buffer poubelle (équivalent du /dev/null) "_dd

Sources

http://cfennajoui.net/vim/traduit/html/usr_30.txt.php

http://www.blogduwebdesign.com/developpement-vim/vim-astuce-pour-le-copier-coller/605