38 votes

Quelle est la manière la plus élégante de commenter / décommenter des blocs de code rubis dans Vim?

Dans VIM, au moment où j'ai besoin de commenter une section de code Ruby:

  • Je navigue à la première colonne de la ligne que je veux commenter
  • J'appuyez sur CTRL-v pour entrer visuel en mode bloc
  • Je naviguez vers le bas jusqu'à l'endroit que je veux mettre fin à l'opération
  • J'type r<space> si je veux commenter le code, ou d' r# si je veux la mettre en commentaire.

Ce flux de travail semble ok pour moi, existe-il des moyens d'améliorer ce processus? Existe-il d'autres astuces pour commenter ou décommenter ruby sections de code dans vim?

40voto

sastanin Points 16061

Je fais presque la même chose que toi.

commentant:

  • bloc visuel sélectionner avec CTRL-V puis I# (insérer # au début)

sans commentaires:

  • bloc visuel sélectionner avec CTRL-V puis X (supprimer le premier symbole de la ligne)

Veuillez noter les majuscules I et X .

13voto

too much php Points 27983

Pour chaque langue (ftplugin), j'écris des mappings qui permettra d'ajouter ou de supprimer le commentaire de chef de file et de déplacer le curseur d'une ligne vers le bas. Par exemple, dans mon python ftplugin, j'ai ceci:

noremap   <buffer> K      :s,^\(\s*\)[^# \t]\@=,\1#,e<CR>:nohls<CR>zvj
noremap   <buffer> <C-K>  :s,^\(\s*\)#\s\@!,\1,e<CR>:nohls<CR>zvj

Je trouve que c'est une très grande souplesse dans la configuration:

  • Frapper K de commentaire de la ligne courante.
  • Frapper K à plusieurs reprises de commenter un bon nombre de lignes.
  • 6K de commentaire 6 lignes.
  • K en mode visuel des commentaires de l'ensemble de la sélection.
  • Tout peut être retiré de la même manière à l'aide de CTRL-K
  • Si les lignes sont déjà commenté, ils ne seront pas avoir un # ajouté au début.
  • Si un # est suivi par un espace, il est considéré comme un commentaire de texte et n'est pas touché.

- Je l'adapter un peu pour chaque langue. Il ne fonctionne pas aussi bien pour les Vieux commentaires en C (/*...*/) mais je préfère ne pas l'utiliser de toute façon.

6voto

projecktzero Points 937

Certaines personnes semblent aimer Nerd Commenter

5voto

Swaroop C H Points 7518

Avez-vous essayé EnhCommentify.vim ou tComment.vim ?

4voto

davitenio Points 1089

Après avoir sélectionné visuellement, en mode bloc, le texte que vous souhaitez commenter, appuyez sur I (c'est-à-dire un i majuscule), tapez # et enfin appuyez sur la touche d'échappement. Il s'agit essentiellement de la même procédure que vous utilisez actuellement, mais en utilisant l'insertion au lieu de remplacer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X