Recherche de site Web

11 astuces Vim qui vous feront gagner des heures de temps d'édition


Vous voulez faire passer votre jeu Vim au niveau supérieur ? Depuis que j'utilise Vim, j'ai appris de nombreux trucs et astuces qui m'ont permis d'économiser beaucoup de temps et de maux de tête lors de l'édition avec Vim. Je partage certains de mes meilleurs conseils dans ce guide afin que vous puissiez les intégrer dans votre flux de travail.

1 Déplacement rapide du curseur

Vim est conçu pour une navigation efficace sans compter sur la souris ou les touches fléchées. Connaître les commandes de déplacement du curseur de Vim peut vous faire gagner beaucoup de temps et de bon sens lorsque vous traitez des fichiers volumineux. Vim propose plusieurs façons de déplacer rapidement le curseur, du déplacement par caractères, mots et paragraphes jusqu'au saut vers des emplacements spécifiques.

Outre les touches fléchées, vous pouvez utiliser H (gauche), J (bas), K (haut) et L (droite) pour vous déplacer par caractères. Vous pouvez également ajouter un nombre avant le caractère pour sauter ce nombre de caractères. Ainsi, appuyer sur 5j déplacera le curseur de cinq lignes. Pour parcourir de plus grandes distances, vous disposez de :

  • w : Passer au début du mot suivant.
  • W : Passer au début du mot suivant après les espaces
  • b : Sauter au début du mot précédent.
  • B : Sauter au début du mot précédent avant les espaces.
  • e : Aller à la fin du mot actuel.
  • E : Aller à la fin du mot avant les espaces.
  • 0 : Aller au début de la ligne
  • $ : Aller à la fin de la ligne

De plus, si vous souhaitez accéder à une ligne spécifique, saisissez ce numéro de ligne, puis utilisez G pour accéder à cette ligne. Donc, si vous souhaitez accéder à la ligne 500, tapez 500G et appuyez sur pour accéder à cette ligne.

2 Convertir les onglets en espaces et les espaces en onglets

Un problème courant auquel les développeurs et les créateurs de contenu sont confrontés est l’incohérence de l’indentation. Certaines équipes ou projets peuvent préférer les onglets pour l'indentation, tandis que d'autres préfèrent les espaces. Dans Vim, vous pouvez convertir les tabulations en espaces et vice versa, en fonction des exigences spécifiques de votre projet.

Si vous souhaitez reconvertir tous les espaces en tabulations dans un fichier existant, exécutez ces deux commandes :

:set noexpandtab
:retab!

La première commande garantit que les tabulations seront utilisées à la place des espaces. Le second impose la reconversion des espaces en caractères de tabulation en fonction du paramètre tabstop.

Si vous préférez les espaces et souhaitez convertir les tabulations dans un fichier existant, exécutez :

:set expandtab
:set tabstop=4
:set shiftwidth=4
:retab

Ces commandes indiquent à Vim les détails du bloc d'indentation lors de la conversion des tabulations en espaces.

3 Indenter plusieurs lignes

L'indentation est une bonne pratique pour garder votre fichier propre et organisé. Si vous travaillez avec un langage comme Python, une indentation correcte devient plus cruciale. Avec une seule commande, vous pouvez mettre en retrait toutes les lignes d'un fichier. Tout d'abord, tapez gg pour accéder à la première ligne du fichier (cela pourrait juste être un autre conseil utile.) Tapez ensuite =G pour mettre les lignes en retrait. La commande finale est donc :

gg=G

4 Mettre en évidence les fautes d'orthographe

Je fais beaucoup de fautes de frappe et d’erreurs lorsque je tape vite. Dans les traitements de texte modernes comme Microsoft Word et Google Docs, vous disposez d'un correcteur orthographique qui suggère le mot correctement orthographié. Vim dispose également d'un correcteur orthographique intégré. Il mettra en évidence les mots qui, selon lui, ont été mal orthographiés. Pour activer le correcteur orthographique, utilisez cette commande :

:set spell

5 Modifier la direction de sélection visuelle

Lorsque vous travaillez en mode visuel, vous pouvez sélectionner du texte par caractère, ligne ou bloc. Une fois que vous avez commencé à sélectionner du texte dans n'importe quelle direction, vous réaliserez peut-être que vous devez étendre ou modifier la sélection dans la direction opposée. Au lieu de quitter le mode visuel et de recommencer la sélection, vous pouvez modifier le sens de la sélection en appuyant sur la touche o.

6 Aller au support correspondant

Lorsque vous travaillez sur une base de code volumineuse, vous devez souvent trouver la fin d'un bloc de code. À moins que le code ne soit bien formaté et indenté, c'est difficile. Dans Vim, vous pouvez facilement trouver le début ou la fin d’un bloc de code en sautant vers le crochet correspondant. Appuyer sur le signe de pourcentage (%) fait exactement cela. Si vous êtes sur le support d'ouverture et appuyez sur %, vous passerez au support de fin et vice versa.

Cela fonctionne pour les parenthèses, les accolades et les crochets.

7 Afficher les numéros de ligne

Celui-ci est assez simple. Par défaut, Vim n'affiche aucun numéro de ligne, seulement des signes tilde. Vous pouvez activer les numéros de ligne sur Vim dans différents modes. En mode numéro de ligne absolu, vous voyez les numéros de ligne allant de la première à la dernière ligne. Pour configurer cela, exécutez cette commande :

:set number

En mode nombre relatif, la ligne sur laquelle se trouve votre curseur est la ligne zéro. Le reste des lignes est numéroté par rapport à la ligne sur laquelle se trouve votre curseur. Ainsi, les lignes au-dessus et en dessous de votre curseur commencent à un et continuent. Pour activer la numérotation relative, exécutez :

:set relativenumber

Et si vous avez besoin des deux ? Il existe un autre mode appelé mode hybride, dans lequel vous pouvez utiliser les deux. En activant le mode hybride, la ligne sur laquelle se trouve votre curseur affiche son numéro de ligne absolu. Mais les lignes ci-dessus et ci-dessous montrent leurs nombres relatifs. Activez ce mode en exécutant :

:set number relativenumber

8 Mode normal

La commande :norm dans Vim vous permet d'exécuter des commandes en mode normal à partir du mode ligne de commande. Ceci est utile pour les tâches répétitives et l’édition par lots. Lorsque vous devez appliquer simultanément les mêmes commandes du mode normal à plusieurs lignes, vous pouvez le faire en écrivant une seule ligne au lieu de répéter la même chose pour chaque ligne.

Par exemple, je souhaite ajouter un point-virgule (;) à la fin de quelques lignes. Tout d’abord, je dois sélectionner toutes les lignes. Exécutez ensuite ces commandes :

:norm
A;

Une fois que j'appuie sur Entrée, toutes les lignes sélectionnées auront un point-virgule à la fin.

De même, vous pouvez insérer du texte, modifier la casse ou mettre en retrait plusieurs lignes à la fois.

9 Supprimer du texte en mode insertion

Dans les éditeurs de texte traditionnels, il existe de nombreux raccourcis clavier pour supprimer des caractères et des mots. Vim dispose de son propre ensemble de raccourcis pour supprimer rapidement des morceaux de texte. Vous pouvez supprimer des caractères, des mots et des lignes entières. Vous pouvez supprimer soit depuis le sens arrière ou avant du curseur. Voici quelques raccourcis utiles :

  • Ctrl+H : supprime un caractère en arrière (identique au retour arrière).
  • Ctrl+W : supprime un mot en arrière.
  • Ctrl+U : Supprime tout depuis le curseur jusqu'au début de la ligne.
  • Ctrl+K : Supprime tout depuis le curseur jusqu'à la fin de la ligne.

10 Extraits dynamiques

Les extraits de code sont comme des morceaux de texte prédéfinis que vous pouvez insérer rapidement pour accélérer le flux de travail. Au lieu de taper à plusieurs reprises le même code ou texte passe-partout, vous pouvez utiliser des extraits pour développer rapidement un bloc de texte plus long, ce qui permet de gagner du temps et de réduire les fautes de frappe. Les extraits dynamiques vont encore plus loin en permettant aux extraits d'inclure du contenu dynamique, tel que l'heure actuelle, la date ou d'autres informations variables.

À l'aide de plugins comme UltiSnips ou vim-snippets, vous pouvez définir des extraits dynamiques qui s'ajustent en fonction du contexte actuel. Par exemple, créons un extrait pour développer « jd » en John Doe. Si vous utilisez UltiSnips, ajoutez ce qui suit à votre fichier UltiSnips (généralement ~/.vim/UltiSnips/snippet_file_name.snippets :)

snippet jd
John Doe
endsnippet

Pour les extraits dynamiques comme l'heure et la date, vous pouvez le formater comme ceci :

snippet time
`!v strftime("%H:%M:%S")`
endsnippet

Maintenant, si vous tapez « heure » et appuyez sur le bouton Tab, l’heure actuelle devrait être insérée automatiquement.

11 Mots à saisie semi-automatique

Vim dispose d'une fonction de complétion de mots intégrée. Cela peut être utile lors de l'écriture de quelque chose où un mot revient souvent (comme les variables dans un programme). Pour compléter automatiquement un mot, commencez à saisir le mot et appuyez sur Ctrl+N. Vous pouvez également taper Ctrl+P. La différence est que ce dernier recherche dans la liste par le bas (le dernier mot) tandis que le premier recherche par le haut.


Avec ces nouvelles astuces à votre connaissance, vous devriez pouvoir utiliser Vim avec plus de confiance. Nous avons également d'autres guides qui vous montrent comment quitter Vim et définir un profil Vim.

Articles connexes: