'<,'> dans l'invite de commande

8

Parfois, lorsque je tape :pour quitter ou écrire mon fichier, l'invite contient déjà les caractères :'<,'>sans que je tape quoi que ce soit. Cela provoque une erreur si je tape wou q. Je ne peux pas reproduire ce problème. Cela arrive aux moments les plus étranges et je n'ai pas pu déterminer ce qui en est la cause.

Il m'a fallu une éternité pour comprendre que ma frappe accidentelle q:au lieu de :qme causait des problèmes pour arrêter. Maintenant que je connais cette petite bizarrerie, j'essaie de comprendre ce qui cause cet autre comportement. Je ne trouve rien dessus, même si je l'ai vu quelque part dans le commandement du colon de quelqu'un.

Est-ce un comportement attendu? Qu'est-ce qui pourrait en être la cause?

malan
la source

Réponses:

15

Voyant '<,'>dans la ligne de commande lorsque vous appuyez sur :indique que vous avez actuellement un visuel plage sélectionnée (par exemple avec v, Vou Ctrl- v) et vim est préfixant obligeamment les marqueurs pour « début de sélection » à « la fin de la sélection » afin d'appliquer les limitations de la portée de la commande que vous êtes sur le point d'entrer.

Voir :h visual-operators:

Notez que '<,'>s'affiche automatiquement lorsque vous appuyez sur :en mode visuel.

Puisque vous ne pouvez pas "quitter" seulement une certaine partie d'un fichier, c'est pourquoi vous obtenez un Invalid addresslorsque vous essayez de le faire :'<,'>q.

Si vous souhaitez exécuter une commande qui n'est pas aussi limitée, vous pouvez appuyer sur Ctrl- Upour effacer tout à gauche du curseur avant d'entrer q, ou simplement utiliser l' alias ZZou ZQ.

DopeGhoti
la source
3
Notez que ZZva écrire toutes les modifications apportées aux fichiers avant de quitter. Si vous souhaitez annuler les modifications, utilisez ZQ.
Ruslan
@Ruslan. Bon conseil. J'ai toujours juste tapé :q!ce qui est toujours un problème pour le contexte de la question. Maintenant, ZQc'est dans mon arsenal!
malan
"not suchly limited" ferait un bon nom de groupe
Omar