Antworten:
Sie können den Mauszeiger über eine Klammer bewegen, vf{
oder vf(
, um in den visuellen Modus zu gelangen, und dann alles bis zur Klammer (und einschließlich) auswählen.
Ja. Verwenden Sie a
anstelle von i
, als
ya{
ya(
Sehen
:help a{
:help a(
und allgemeiner
:help text-objects
:help 04.8
Macht f{v%
oder f(v%
macht was du willst? Es bewegt den Cursor zum nächsten {oder (wechselt in den visuellen Modus und bewegt den Cursor dann zum entsprechenden Abschluss} oder). Wenn Sie den gewünschten Bereich bereits überschritten haben, können Sie ein Großbuchstaben verwenden F
. Funktioniert genauso gut, um zum Schluss zu springen} oder) auch zuerst - f}v%
.
Sobald Sie haben , was Sie ausgewählt möchten, können Sie y
, d
, x
etc. es. Der %
Befehl funktioniert auch mehrzeilig, so dass Sie diese Technik auf große Codeblöcke anwenden können, wenn Sie dies wünschen (obwohl f
und F
nicht, Sie müssen also entweder in der ersten oder in der letzten Zeile beginnen).
EDIT: Bessere Antwort, scheint genau das zu sein, was Sie suchen:
ya(
Das Ersetzen i
in Ihrem ursprünglichen Befehl mit a
tut genau das Gleiche, mit der Ausnahme , dass es umfasst das Zeichen ‚(‘. Dies wird als „reißt einen Block“, während yi(
„einen zerrte i nner Block“.
f{
werden Sie zur nächsten öffnenden Klammer bewegt, auf der Sie sich bereits befinden. Was Sie wahrscheinlich wollen, istv%
das, was Sie zur passenden Zahnspange bewegt und auf beiden Seiten verwendet werden kann.