区切られた行でコマンドを実行する


7

どのように私は区切られたすべての行でコマンドを実行することができ、で言う \begin{otherlanguage}\end{otherlanguage}

例えば、

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

(cmdはである可能性がありますnorm A test。)


実用的な例を教えていただけますか?
romainl

@romainl、はい、わからなかったらごめんなさい。
Toothrot

回答:


9

これにはパターン区切り文字を使用できます。

:/first/,/second/norm dd

の周りの任意の検索パターンを使用できます,

一致したパターンの内側のみを使用する場合は、+と-を次のように使用します。

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

1
非常に素晴らしい。g区切り文字のセットが複数ある場合は、最初に追加すると役立つことがわかりました。
歯みがき2016

似たようなものを使用して視覚的な選択を行うことができるかどうか疑問に思いますか?
トゥースロト

興味深いことに、マーク<を変更することでできるはず>です。別の質問に値すると思います;)
nobe4

5

より具体的な答え(TeXファイルを編集しているように見えるため):vimtexプラグインを使用する場合(LaTeX-BoxこのIIRCも\beginあり\endます)、内部環境テキストオブジェクト(ie)。したがって、カーソルが環境のどこかあると仮定するotherlanguageと、例は次のようなもので「解決」できます。

vie:norm A test

その他のvimtexマッピングについては、を参照してください:h vimtex-default-mappings

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.