Vim-大括弧を含む大括弧間のコンテンツの選択/ヤンク/削除


31

vimでは、次のような括弧を含む括弧の間でコンテンツを選択することは可能ですか?

yi{ yi(

しかし、括弧を含めたいです。

回答:


0

カーソルを1つのブラケット上に移動して、vf{またはvf(を実行して視覚モードにし、ブラケットまで(およびブラケットを含む)すべてを選択できます。


5
実際には、これは開始ブレースのみを選択することになります。あなたがf{オープニングブレースの上にいる場合、あなたはすでにあなたがいる最も近いオープニングブレースに移動します。おそらく必要なのはv%、一致するブレースに移動し、どちらの側でも使用できることです。
マイケルMior 14年

これは正しい答えではありません。以下の@garyjohnの回答を参照してください。
マイケルサンドマン

75

はい。使用するa代わりにi、など

ya{
ya(

見る

:help a{
:help a(

より一般的には、

:help text-objects
:help 04.8

1
これは受け入れられた答えであるはずです!
phanhuy152

3

DOES f{v%またはf(v%あなたがやりたいですか?カーソルを次の{または(に移動し、視覚モードに入り、次に対応する閉じ}またはに移動します)。選択したい範囲を既に過ぎている場合は、大文字を使用できますF。同様に、最後の}または)にジャンプすることもできf}v%ます。

あなたが選択し、することができますしたいものを持ってたらydx、などのこと。この%コマンドは複数行でも機能するため、必要に応じてこの手法をコードの大きなブロックで使用できます(ただしfFそうでない場合は、最初または最後の行から開始する必要があります)。

編集:より良い答えは、まさにあなたが探しているもののようです:

ya(

交換iを使用して元のコマンドには、aそれがあることを除いて、まったく同じことをやっ含ま「(」文字。これが「ヤンクされたのに対し、ブロックを」「ヤンクされたI nnerブロックを」。yi(

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