Cela devrait être trivial, et il se peut même que ce soit dans l'aide, mais je n'arrive pas à trouver comment y naviguer. Comment indenter plusieurs lignes rapidement dans vi ?
Utilisez la commande >. Pour mettre cinq lignes en retrait, 5>>. Pour marquer un bloc de lignes et l'indenter, Vjj> pour indenter trois lignes (Vim uniquement). Pour mettre en retrait un bloc d'accolades, placez votre curseur sur l'une des accolades et utilisez >% ou de n'importe où dans le bloc, utilisez >iB.
Si vous copiez des blocs de texte et que vous devez aligner l'indentation d'un bloc à son nouvel emplacement, utilisez ]p au lieu de p. Cela permet d'aligner le bloc collé avec le texte environnant.
En outre, le paramètre [shiftwidth
][1] vous permet de contrôler le nombre d'espaces à mettre en retrait.
[1] : http://vimdoc.sourceforge.net/htmldoc/options.html#'shiftwidth' ;
En plus de [la réponse déjà donnée][1] et acceptée, il est également possible de placer un marqueur et d'indenter tout ce qui se trouve entre le curseur actuel et le marqueur.
Ainsi, entrez ma
à l'endroit où vous voulez que le haut de votre bloc soit indenté, descendez le curseur aussi loin que nécessaire, puis tapez >'a
(notez que "a
" ; peut être substitué par n'importe quel nom de marqueur valide). C'est parfois plus facile que de taper 5>>
ou vjjj>
.
[1] : https://stackoverflow.com/questions/235839/indent-multiple-lines-quickly-in-vi/235841#235841