「[[」、「]]」、「[]」、「] [」を理解する


9

これらのテキストオブジェクトの動きを理解するのは難しいと感じました。

                            *]]*
]]          [count] sections forward or to the next '{' in the
            first column.  When used after an operator, then also
            stops below a '}' in the first column.  |exclusive|
            Note that |exclusive-linewise| often applies.

                            *][*
][          [count] sections forward or to the next '}' in the
            first column.  |exclusive|
            Note that |exclusive-linewise| often applies.

                            *[[*
[[          [count] sections backward or to the previous '{' in
            the first column.  |exclusive|
            Note that |exclusive-linewise| often applies.

                            *[]*
[]          [count] sections backward or to the previous '}' in
            the first column.  |exclusive|
            Note that |exclusive-linewise| often applies.

「]」は前方を意味し、「]}」が次の一致しない「}」に移動するのと同じように理解でき、2番目の部分「}」はターゲットを説明します。

しかし、「]]」、「] [」、「[[」、「[]」の2番目の括弧は何を意味するのでしょうか。「]]」の2番目の「]」が「最初の列の「{」」を意味する場合、「[]」の2番目の「]」はどうですか。つまり、「{」ではなく「}」を意味します。私はこれら4つのテキストオブジェクトの動きを理解できません。


4
「セクション」の意味は、見積もりの​​下の3段落で説明されています。
romainl 2016

2
@romainlこれは、「2番目の文字は、見つかったブレースのタイプを決定します」と]常に一致することを意味し}ます。OPが指摘するように、これは事実ではありません。この点については、セクションの定義ではなく、明確化を求めています。
リッチ

回答:


5

ファイルでこれらをテストするのに役立ちます。これらは「前へ」と「後ろへ」×「開始」と「終了」と考えることができます

このテキストブロックで4つのモーションを使用してみてください。

function one
{#1

}#2

function two
{#3

}#4

function three
{#5

}#6

私はこれらの頻繁に役立つ動きのgifを実行する方法を知りませんが、基本的には、たとえば]] ]] ]]、位置#1-> 3-> 5から、および[[その逆に移動します。同様に][[]モーションを使用して#2 <-> 4 <-> 6間を移動します。

ここに写真があります: ここに画像の説明を入力してください


4

これらは、関数の上部と下部に移動するためのもので、関数の開始と終了の波括弧は常に最初の列にあると想定されています。(社説:最近はそうではないようですので、これらの動きは多くのユーザーにとって痕跡となります。)

リード[または]あなたが上下にそれぞれ、ファイルに行くつもりだ方向を示しています。次に、2 [つ目またはそれ以上]は、関数プロローグで開き中括弧または関数エピローグで閉じ中括弧に移動することを意味します。主人公と一致する場合は左中かっこに移動し、主人公と異なる場合は右中かっこに移動します。

通常は関数定義を使用することを好みますが、私は非常に定期的に使用[[]]ています。私にとって[]][編集中は直感的ではなく、それらを使用することはありません。これは他の手段でよく行う操作です(たとえば、a}動きが私を覆うことが多いため)。

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