回答:
かっこ内に入れたいナビゲーションキーを使用してから、yi(
またはyi)
を使用して、一致する括弧内のすべてをコピーできます。これは、角かっこ(例yi]
:)や中かっこでも機能します。加えてy
、あなたはまた、削除することができますまたは変更テキスト(例えばci)
、di]
)。
私はこれを二重引用符と単一引用符で試してみましたが、そこでも動作するようです。あなたのデータのために、私はします:
write (*, '(a)') 'Computed solution coefficients:'
カーソルをに移動してC
、と入力しyi'
ます。空白行、ヒットにカーソルを移動p
し、GET
Computed solution coefficients:
CMSを指摘し、同様のビジュアルモード選択のためにこの作品-ちょうど使用vi)
、vi}
、vi'
、など
yi"
するようであり、すべての引用符を選択します
ci(
またはci)
私が探していたもののためにそれを行います。ありがとう。私はまだi
その場合を完全に理解していませんが、それが機能する限り、誰が気にしますか?:)
単一引用符の中から選択するには、通常、vi'
( "select inner single quotes")を実行します。
かっこブロック内では、vib
( "select inner block")を使用します
使用できる中括弧ブロックの内側viB
(「大文字B」)
選択を「含む」(引用符、括弧、または中括弧も選択する)には、のa
代わりに使用できますi
。
テキストオブジェクトの選択の詳細については、マニュアルまたは:help text-objects
vimを参照してください。
この選択方法は組み込みであり、Vimのヘルプで詳しく説明されています。XMLタグなどをカバーしています。
を参照してください:help text-objects
。
単一引用符内で選択するには、を使用しますvi'
。
括弧内で選択するには、を使用しますvi(
。
ci'
またはci(
視覚的に選択する代わりに変更します。しかし、それはまさに私が望んでいたことを行います。ありがとう:)
%vi(
か%vib
矢印またはhjkl
を使用して、ブラケット式の1つに移動し、次にv
ビジュアル(つまり、選択)モードを選択して%
から、他のブラケットにジャンプします。
searchpair
組み込み関数を使用して.vimrcにVim関数を記述します。
searchpair({start}, {middle}, {end} [, {flags} [, {skip}
[, {stopline} [, {timeout}]]]])
Search for the match of a nested start-end pair. This can be
used to find the "endif" that matches an "if", while other
if/endif pairs in between are ignored.
[...]
最も投票された回答に詳細を追加します。
gvimを使用していて、クリップボードにコピーする場合は、
"+<command>
大括弧(または括弧または中括弧)の間にすべてのコンテンツをコピーするには
たとえば、次の"+yi}
ようにして、カーソルがある中括弧内のすべてのコンテンツをクリップボードにコピーします。
y
。
プラグインを作成しましたvim-textobj-quotes
:https : //github.com/beloglazov/vim-textobj-quotes
任意のタイプの最も近い引用符のペアにテキストオブジェクトを提供します。のみiq
またはaq
それを使用すると、現在カーソルを囲む、カーソルの前、または後ろ(優先順)のシングル( ')、ダブル( ")、またはバック(`)引用符の内容を操作できます。言い換えれば、それは引用符に到達する必要があるときに前方または後方にジャンプします。
例を見るとわかりやすくなります(カーソルはで表示されます|
)。
foo '1, |2, 3' bar
; を押した後diq
:foo '|' bar
foo| '1, 2, 3' bar
; を押した後diq
:foo '|' bar
foo '1, 2, 3' |bar
; を押した後diq
:foo '|' bar
foo '1, |2, 3' bar
; を押した後daq
:foo | bar
foo| '1, 2, 3' bar
; を押した後daq
:foo | bar
foo '1, 2, 3' |bar
; を押した後daq
:foo | bar
上記の例は一重引用符で示されていますが、プラグインは二重引用符( ")と逆引用符(`)でもまったく同じように機能します。
あなたはまた、他の演算子を使用することができます:ciq
、diq
、yiq
、viq
、など
詳細については、上記のgithubページをご覧ください。
vimの単純なキーマップはこの問題を解決します。map viq F” lvf” hhこの上記のコマンドは、viqをキーにマップして、引用符間を検索します。"を任意の文字に置き換えて、キーマップを作成します。これを起動時にvimrcに貼り付けると、いつでも使用できるはずです。