J'utilise vim depuis un certain temps et je suis conscient que la sélection de blocs de texte en mode visuel est aussi simple que SHIFT+V et en déplaçant la flèche vers le haut ou le bas ligne par ligne jusqu'à atteindre la fin du bloc de texte que je veux sélectionner.
Ma question est la suivante: existe-t-il un moyen plus rapide en mode visuel de sélectionner un bloc de texte, par exemple en SHIFT+V suivi de la spécification du numéro de ligne dans lequel je veux arrêter la sélection? (via :35
par exemple, où 35 est le numéro de la ligne que je souhaite sélectionner - cela ne fonctionne évidemment pas, ma question est donc de savoir comment faire si quelque chose de similaire peut être fait ...)
Outre ce que d'autres ont dit, vous pouvez également élargir votre sélection à l'aide de recherches de modèles.
Par exemple, v/foo sélectionnera de votre position actuelle à la prochaine instance de "foo". Si vous voulez réellement développer l’instance suivante de "foo", à la ligne 35, par exemple, appuyez simplement sur n pour élargir la sélection à l’instance suivante, etc.
Je ne le fais pas souvent, mais je sais que certaines personnes utilisent beaucoup les marques pour faire des sélections visuelles. Par exemple, si je suis sur la ligne 5 et que je souhaite sélectionner la ligne 35, je pourrais appuyer sur ma placer la marque a
sur la ligne 5, puis :35 passer à la ligne 35. Shift + v pour entrer en mode visuel linéaire, et enfin `a sélectionner en arrière pour marquer a
.
G Goto line [count], default last line, on the first
non-blank character linewise. If 'startofline' not
set, keep the same column.
G is a one of jump-motions.
V35G réalise ce que vous voulez
Vim est une langue. Pour bien comprendre Vim, il faut connaître la langue. De nombreuses commandes sont des verbes, et vim a aussi des objets et des prépositions.
V100G
V100gg
Cela signifie "sélectionnez la ligne actuelle jusqu'à la ligne 100 incluse".
Les objets texte sont les endroits où le pouvoir est le plus puissant. Ils introduisent plus d'objets avec des prépositions.
Vap
Cela signifie "sélectionner autour du paragraphe actuel", c'est-à-dire sélectionner le paragraphe actuel et la ligne vide qui le suit.
V2ap
Cela signifie "sélectionner autour du paragraphe actuel et du paragraphe suivant".
}V-2ap
Cela signifie "aller à la fin du paragraphe actuel, puis sélectionnez-le visuellement et le paragraphe précédent."
Comprendre Vim en tant que langue vous aidera à en tirer le meilleur rendement.
Après avoir sélectionné, vous pouvez combiner d'autres commandes:
Vapd
Avec la commande ci-dessus, vous pouvez sélectionner un paragraphe et le supprimer. Remplacez d
par y
à copier ou par c
ou par p
à coller.
Une fois que vous avez compris comment toutes ces commandes fonctionnent ensemble, vous n'aurez plus besoin de rien sélectionner visuellement. Au lieu de sélectionner visuellement, puis de supprimer un paragraphe, vous pouvez simplement supprimer le paragraphe avec la commande dap
.
v35G
sélectionne tout, du curseur jusqu'à la ligne 35.
v
vous met en mode sélection, 35
spécifie le numéro de ligne que vous voulez G
aller à.
Vous pouvez également utiliser v}
qui sélectionnera tout jusqu'au début du paragraphe suivant.
Pour sélectionner le nombre de lignes:
shift + v 9j - selectionner 10 lignes
Shift+V n j
ou Shift+V n k
Ceci sélectionne la ligne en cours et les lignes suivantes/précédentes n
. Je trouve cela très utile.
v 35 j
texte ajouté pour 30 caractères minimum
Vous pouvez toujours utiliser des nombres antécédents pour répéter des actions:
v%
sélectionnera le bloc entier.
Jouez avec aussi:
v}
, vp
, vs
, etc.
Voir l'aide:
:help text-objects
qui répertorie les différentes façons de sélectionner des lettres, des mots, des phrases, des paragraphes, des blocs, etc.
Vous pouvez appuyer sur vi}
pour sélectionner le bloc entouré de {}
crochets où votre curseur est actuellement situé.
Peu importe l'endroit où vous vous trouvez à l'intérieur de ce bloc (assurez-vous simplement que vous vous trouvez dans le bloc le plus à l'extérieur). Vous pouvez également remplacer {
par tout ce qui a une paire telle que )
ou ]
.
} signifie déplacer le curseur au paragraphe suivant. utilisez donc v}
pour sélectionner un paragraphe entier.
Pour tout sélectionner en mode visuel: Tapez Echap pour vous assurer que vous êtes en mode normal
:0
tapez ENTER pour aller au début du fichier
vG
Cela pourrait être utile de savoir:
Afin de sélectionner le même nombre de lignes, utilisez par exemple 1v
. Vous auriez dû effectuer certaines modifications pour pouvoir utiliser 1v
, par blocs ou par lignes.
Aujourd'hui, j'ai vu cette astuce incroyable de ici :
:5mark < | 10mark > | normal gvV
:5mark < | 10mark > | normal gv
Vous pouvez également réinitialiser les limites des blocs visuels de la manière suivante:
m< .......... sets the visual mode start point
m> .......... sets the visual mode end point