« Raccourcis Vim » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
Ligne 101 : | Ligne 101 : | ||
*Most of the time, that's not sufficient, so you can add a range like so: | *Most of the time, that's not sufficient, so you can add a range like so: | ||
**:8,10 s/''search''/''replace''/g | ** | ||
*If you want to search an entire file, you can use % to indicate that as the range: | **:8,10 s/''search''/''replace''/g | ||
**:%s/''search''/''replace''/g | *If you want to search an entire file, you can use % to indicate that as the range: | ||
** | |||
**:%s/''search''/''replace''/g | |||
**: | |||
**: | |||
== Macros == | |||
| |||
| |
Version du 2 mai 2019 à 07:55
Raccourcis Vim les plus courants
- Aide de Vim : :help
Modes
- Interactif : esc
- Insertion : i
- Commande : : depuis le mode interactif
- Remplacement : R
Les commandes précédées de : se font en mode commande, c'est à dire en écrivant : suivis de la commande depuis le mode interactif
Déplacements
- Début de ligne : 0
- Fin de ligne : $ (ou fin)
- De mots en mot : w
- Sauter vers une ligne : 7G pour aller à la ligne 7
Sauvegarde
- Sauvegarder : :w
- Quitter : :q
- Forcer : :!
- Sauvegarder et quitter en forcant : :wq!
Édition
Les opérations d'effacement, d'insertion ou de collage peuvent être précédées d'un chiffre pour les faire plusieurs fois : 3x supprimera 3 caractères
- Effacer des lettres : x (un carctère)
- effacer un mot : dw
- effacer/couper une ligne (la ligne est mise en mémoire) : dd
- Supprimer le début de la ligne : d0
- Supprimer la fin de la ligne : d$
- copier la ligne en mémoire : yy
- Coller (la ligne se colle après le curseur) : p
- remplacer une lettre : r[nouvelle lettre]
- Annuler la dernière opération : u
- Annuler une annulation : Ctrl + R
- Insérer une ligne avant la ligne du curseur : O
- Insérer une ligne après celle du curseur : o
Fonctions avancées
- Chercher un mot depuis le curseur: / (n pour avancer dans les occurences, N pour reculer)
- Chercher un mot depuis le début du fichier : ?
- Fusionner des fichiers (à partir du curseur): :r /chemin/du/fichier
- Lancer une commande externe : :!
Remplacement de texte
"ancien" est le texte qui est là et que nous voulons remplacer, par "nouveau" qui est le nouveau texte
- Remplacer la première occurence de la ligne : :s/ancien/nouveau
- Remplacer toutes les occurences de la ligne : :s/ancien/nouveau/g
- Remplacer toutes les occurences dans les lignes numéro # à # : :#,#s/ancien/nouveau/g
- Remplacer les occurences dans toout le fichier : :%s/ancien/nouveau/g
Split d'écran
Par défaut, le split ouvre le fichier une seconde fois pour être à deux endroits de celui-ci. Sinon il faut faire :sp autrefichier
- Découper l'écran horizontalement : :sp
- Découper l'écran verticalement : :vsp
- Raccourcis en écran splitté:
- ctrl + w : naviguer de viewport en viewport
- ctrl+w puis h, j, k, ou l (ou flèches): se déplacer vers un viewport spécifique
- ctrl +w puis + ou - : agrandir ou rétrecir le viewport actuel (nombre de lignes)
- ctrl + w puis = : égalise les viewports actuels
- ctrl + w puis r ou R : Inverser la position des viewports
Options
Les options modifiées après le lancement de Vim seront oubliées dès que l'on refermera celui-ci.
- Ouvrir une option : :set [option]
- Désactiver une option : :set no[option]
- Donne un valeur : :set [option] = [valeur]
- Connaître l'état d'une option : :set [option]?
- Aide sur une option : :help [option]
Les options peuvent être modifiées "définitivement" dans le fichier ~/.vimrc; on en trouve un exemplaire dans /etc/vim
Quelques options:
- coloration syntaxique : syntax on/off
- Couleur adaptée à un fond sombre : set background=dark
- Afficher les numéros de ligne : set number
- Afficher toutes les commandes tapées (comme dd) : set showcmd
- Ignorer la casse lors des recherches : set ignorecase
- Activer le support de la souris : set mouse=a
Cherche et remplace
- Most of the time, that's not sufficient, so you can add a range like so:
-
- 8,10 s/search/replace/g
-
- If you want to search an entire file, you can use % to indicate that as the range:
-
- %s/search/replace/g
-
Macros