Explication des modes de l'éditeur Vim

Étant donné que Vim se concentre autant sur la modification du code existant que sur l'écriture d'un nouveau code, il est divisé en plusieurs modes qui ont chacun des objectifs différents.

Mode normal

Par défaut, Vim démarre en mode «normal». Le mode normal est accessible à partir d'autres modes en appuyant sur Escou .

En mode normal, les pressions sur les touches ne fonctionnent pas comme prévu. Autrement dit, ils n'insèrent pas de texte dans le document; au lieu de cela, certaines touches peuvent:

Déplacez le curseur

  • h déplacer un caractère vers la gauche
  • j déplacer d'une ligne vers le bas
  • k déplacer d'une ligne vers le haut
  • Je déplace un personnage vers la droite

Comme de nombreuses commandes vim, le mouvement des lignes peut être préfixé par un nombre pour déplacer plusieurs lignes à la fois:

  • 4j déplacer 4 rangs vers le bas
  • 6k déplacer de 6 lignes vers le haut

Mouvements de mots de base:

  • w passer au début du mot suivant
  • b passer au début du mot précédent
  • e passer àfin du mot
  • W passer au début du mot suivant après un espace
  • B passer au début du mot précédent avant un espace
  • E se déplace à la fin du mot avant un espace

Mouvement de début / fin de ligne:

  • 0 aller au début de la ligne
  • $ passer à la fin de la ligne

Manipuler du texte

Entrez dans d'autres modes

Le mode normal est l'endroit où l'on devrait passer la plupart de son temps à utiliser Vim. Rappelez-vous, c'est ce qui rend Vim différent.

En mode normal, il existe plusieurs façons de se déplacer dans un fichier ouvert. En plus d'utiliser les touches de curseur pour vous déplacer, vous pouvez également utiliser h(gauche), j(bas), k(haut) et l(droite) pour vous déplacer. Cela aide particulièrement les dactylographes qui n'aiment pas quitter la ligne d'accueil lorsqu'ils apportent des modifications.

Vous pouvez également apporter des modifications à des caractères uniques en mode normal. Par exemple, pour remplacer un seul caractère, déplacez votre curseur dessus et appuyez sur r, puis sur le caractère par lequel vous souhaitez le remplacer. De même, vous pouvez supprimer des caractères uniques en déplaçant votre curseur dessus et en appuyant sur x.

Pour effectuer une annulation, appuyez sur uen mode normal. Cela annule les modifications jusqu'à la dernière fois que vous étiez en mode normal. Si vous souhaitez refaire ( c'est-à - dire annuler votre annulation), appuyez sur Ctrl+ren mode normal.

Mode d'insertion

C'est le deuxième mode le plus utilisé et ce sera le comportement le plus familier à la plupart des gens. Une fois en mode insertion, la saisie insère des caractères comme un éditeur de texte classique. Vous pouvez le saisir en utilisant une commande d'insertion depuis le mode normal.

Les commandes d'insertion comprennent:

  • ipour ' i nsert', cela fait immédiatement passer vim en mode insertion
  • apour ' a ppend', cela déplace le curseur après le caractère courant et entre en mode insertion
  • o insère une nouvelle ligne sous la ligne courante et entre en mode insertion sur la nouvelle ligne

Ces commandes ont également une variété en majuscules:

  • I déplace le curseur au début de la ligne et passe en mode insertion
  • A déplace le curseur à la fin de la ligne et passe en mode insertion
  • O insère une nouvelle ligne au-dessus de la ligne actuelle et entre en mode insertion sur la nouvelle ligne

Il y a tellement plus de façons d'insérer du texte dans Vim qui ne peuvent pas être répertoriées ici, mais ce sont les plus simples. Attention également à ne pas rester en mode insertion trop longtemps; Vim n'est pas conçu pour être utilisé en mode insertion tout le temps.

Pour quitter le mode insertion et revenir au mode normal, appuyez sur Escou

Mode visuel

Le mode visuel est utilisé pour effectuer des sélections de texte, de la même manière que le fait de cliquer et de faire glisser avec une souris se comporte. La sélection de texte permet aux commandes de s'appliquer uniquement à la sélection, telles que la copie, la suppression, le remplacement, etc.

Pour faire une sélection de texte:

  • Appuyez vpour entrer en mode visuel, cela marquera également un point de sélection de départ
  • Déplacez le curseur sur le point de sélection final souhaité; vim fournira une mise en évidence visuelle de la sélection de texte

Le mode visuel a également les variantes suivantes:

  • V pour entrer en mode ligne visuelle, cela fera des sélections de texte par ligne
  • pour entrer en mode bloc visuel, cela fera des sélections de texte par blocs; déplacer le curseur fera des sélections de rectangle du texte

Pour quitter le mode visuel et revenir au mode normal, appuyez sur Escou .

Le mode visuel a en fait plusieurs sous-types: visuel , bloc-visuel et linewise-visuel

  • visuel : comme décrit ci-dessus. Entrez en appuyant surv
  • block-visual : sélectionnez une région rectangulaire. Entrez en appuyant sur+v
  • linewise-visual : sélectionnez toujours des lignes complètes. Entrez en appuyant sur+v

Mode de commande

Le mode commande a une grande variété de commandes et peut faire des choses que le mode normal ne peut pas faire aussi facilement. Pour entrer en mode commande, tapez «:» à partir du mode normal, puis tapez votre commande qui devrait apparaître au bas de la fenêtre. Par exemple, pour faire un type de recherche et de remplacement global :%s/foo/bar/gpour remplacer tout «foo» par «bar»

  • : Entre en mode commande
  • % Moyens sur toutes les lignes
  • s Moyens substitut
  • /foo est regex pour trouver des choses à remplacer
  • /bar/ est regex pour remplacer les choses par
  • /g signifie global, sinon il ne s'exécuterait qu'une fois par ligne

Vim propose un certain nombre d'autres méthodes que vous pouvez consulter dans la documentation d'aide, :hou :help.

Remplacer le mode

Le mode Remplacer vous permet de remplacer le texte existant en tapant directement dessus. Avant d'entrer dans ce mode, passez en mode normal et placez votre curseur au dessus du premier caractère que vous souhaitez remplacer. Appuyez ensuite sur «R» (R majuscule) pour passer en mode de remplacement. Maintenant, tout ce que vous tapez remplacera le texte existant. Le curseur se déplace automatiquement sur le caractère suivant comme en mode insertion. La seule différence est que chaque caractère que vous saisissez remplacera le caractère existant.