Réponses:
dit
supprimera le texte entre les balises XML correspondantes. ( it
est pour "bloc de balises internes".)
Voir :h it
et :h tag-blocks
.
vat
(ou vit
), suivi de répétées at
(ou it
) pour sélectionner progressivement les balises environnantes. (Ou v2at
, etc.). Puis d
supprimer (etc.).
cit
ci"
Deux des meilleures commandes d'activation de productivité de vim.
J'économise beaucoup de temps et d'efforts avec ces deux-là.
cit
est couvert dans ce fil, mais pour la postérité, ci"
supprimera jusqu'à la prochaine "
découverte. idéal pour changer les noms de classe dans les balises html, comme <span id="really long annoying-id">
- avec le curseur au début "
, appuyez sur ci"
et laissez tomber en insérant de nouveaux caractères entre les guillemets.
ciw
est également utile car il supprime le mot courant; Je l'utilise plus que cit
et en ci"
fait.
ci"
supprimera en fait le texte à gauche jusqu'au prochain devis et à droite jusqu'au prochain devis puis entrera en mode insertion. ct"
est en fait la commande pour "supprimer jusqu'au prochain" trouvé ". Mais oui, il se comporte de la même manière si le curseur est sous le guillemet gauche.
essayez dt < pendant que le curseur est sur le premier caractère à supprimer. Dans votre exemple, le «H».
( curseur sur le premier caractère à supprimer ) v / <[enter] d
Cette solution commence sur le premier caractère, puis entre en mode visuel ("v"). Il recherche ensuite le crochet de début suivant ("/ <"), puis appuyez sur Entrée pour quitter la recherche.
À ce stade, votre sélection visuelle couvrira le texte à supprimer. appuyez sur d («d») pour le supprimer.
Si je devais faire cela pour un tas de balises, j'enregistrerais la commande et la combinerais avec d'autres recherches pour la rendre répétable. La séquence de touches pourrait ressembler à ceci:
[ curseur au début du fichier ] qa /> [enter] lv / <[enter] dnq
puis appuyez:
20 @ a
faire cela pour 20 balises
c/<[enter]
dans ma "vie Vim", mais maintenant je regrette un peu ça. Vous voyez, la plupart des plugins "Vi-mode" pour d'autres éditeurs / IDE populaires ne prennent pas en charge ce type de commande spécifique. Ils soutiennent cit
, ci"
, ct<
et cependant. Alors, je réenseigne à nouveau.
Si vous souhaitez faire l'inverse de la suppression de texte entre les indicateurs, je suggère d'installer Vim-Surround et d'exécuter dst
ce qui supprime la balise surround
cit
lorsque vous souhaitez écrire immédiatement après.