Ausführen eines Befehls in begrenzten Zeilen


7

Wie kann ich einen Befehl in allen durch \begin{otherlanguage}und durch getrennten Zeilen ausführen \end{otherlanguage}?

Zum Beispiel,

1 This line should not be affected,
2 \begin{otherlanguage}
3 but this should;
4 \end{otherlanguage}
5 this should not.

(Der cmd könnte sein norm A test.)


Können Sie uns ein praktikables Beispiel geben?
— Romainl

@romainl, ja, sorry wenn ich unklar war.
— Zahnrot

Antworten:


9

Sie können hierfür ein Mustertrennzeichen verwenden:

:/first/,/second/norm dd

Sie können ein beliebiges Suchmuster um das verwenden ,.

Wenn Sie nur das Innere der übereinstimmenden Muster verwenden möchten, verwenden Sie + und - wie folgt:

:/first/+1,/second/-1 norm dd

1
Sehr schön. Ich fand das Hinzufügen gam Anfang hilfreich, wenn es mehr als einen Satz von Trennzeichen gibt.
— Zahnrot

Ich frage mich, ob etwas Ähnliches verwendet werden könnte, um eine visuelle Auswahl zu treffen.
— Zahnrot

Interessant, sollten Sie in der Lage sein, durch Ändern der Marken <und >, ich denke, es ist eine andere Frage wert;)
— nobe4

5

Eine spezifischere Antwort (da Sie anscheinend eine TeX-Datei bearbeiten): Wenn Sie das vimtexPlugin verwenden (obwohl es LaTeX-Boxauch dieses IIRC hat), können Sie die gesamte Umgebung (ohne die \beginund \endMarkierungslinien) einfach über das Textobjekt der inneren Umgebung auswählen ( ie). Angenommen, der Cursor befindet sich irgendwo in der otherlanguageUmgebung, kann Ihr Beispiel folgendermaßen "gelöst" werden:

vie:norm A test

Weitere Vimtex-Zuordnungen finden Sie unter :h vimtex-default-mappings.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.