辞書を引くとanchor = 錨・固定する物・支え と載っていました。EdTex/EdMaxにおいては、アンカーを「カーソル位置」と読み読み替えると理解しやすいかもしれません。
anchor1 | a | anchor2 | b |
---|
説明文中にでてくる上記のような記述は、2個のアンカーにはどの場所が設定されているかを表します。(anchor1が、先に設定されたアンカーとします。)
※アンカー設定タイミングのイメージをつかむ為のもので、実際のロジックとは異なります。
上図のようにa-b間を範囲選択した状態で、「アンカーの設定」を行なった場合、画面上の変化はありませんが、a,bそれぞれの場所に、アンカーが設定されています。
anchor1 | a | anchor2 | b |
---|
この例のように、範囲選択した状態で「アンカーの設定」を行うと、2箇所(a,b)にアンカーが設定されます。(範囲選択していない場合は、カーソル位置の1箇所が設定されます。)
続いてカーソルを任意の場所に移動し、範囲選択を解除します。その状態で「アンカー間を選択」すると、アンカー設定されたa-b間が範囲選択状態となります。
次にカーソルをcの位置に移動し、「アンカーの設定」を行います。先ほどと異なり、今回は選択状態ではないので、アンカー設定されるのはcの1箇所だけとなります。しかしアンカーは2個しか設定することはできません。
このような場合、既に設定済みのアンカー(a,b)の片方を外し、cにアンカーを設定することになります。
どちらのアンカーを外すかは、「先に設定した(古い)アンカーを外す」というルールにより決定されます。(選択状態でアンカー設定を行った場合、先頭に近い場所からアンカー設定するため、先頭側(a)が古いアンカーとなります。)
今回の例ではaのアンカーが外され、cにアンカーが設定されます。
anchor1 | b | anchor2 | c |
---|
この状態で「アンカー間を選択」すると、
のようにb-c間が範囲選択されます。
選択していない状態で、アンカー設定を2回行います。その後「アンカー間を選択」しようとしても、操作することはできません。(;_;)このように同じポイントを連続して設定しても、アンカーは1箇所しか設定されません。
以下は2個のアンカー設定されている状態で、設定済みの場所に再度アンカー設定した場合です。アンカーが設定される(外れる)タイミングのイメージが掴めるかと思います。
a-b間がアンカー設定されている状態とします。 |
|
anchor1 | b | anchor2 |
---|
anchor1 | b | anchor2 | a |
---|
※次のアンカー設定では、bのアンカーが外れます。
anchor1 | b | anchor2 |
---|
anchor1 | b | anchor2 |
---|
※aのアンカーは外されたので、bのみがアンカー設定されている状態となります。(「アンカー間を選択」することはできません。)
文字の編集・置換等のマクロでアンカー操作を行なう場合には注意が必要です。
自動整形が有効(ON)な状態の場合、アンカー設定を行った行に対し編集を行うと、アンカー間を選択したときに、該当行全体が選択されます。(アンカーが 行頭-行末 間に変更される。)
※編集系マクロを作成する場合は、自動整形OFFの状態で作成するように心がけましょう。
置換により、アンカー位置が変化する場合があります。下記は「1234567」という文字の「345」をアンカー設定した状態で、文字列置換を行った後「アンカー間を選択」した結果をまとめたものです。
置換前 文字列 | 置換後 文字列 | アンカー間を選択 (赤字部が選択) |
---|---|---|
1 | A | 1234567 |
2 | B | 1B34567 |
3 | C | 12C4567 |
4 | D | 123D567 |
5 | E | 1234E67 |
6 | F | 12345F7 |
7 | G | 1234567 |
23 | BC | 1BC4567 |
34 | CD | 12CD567 |
45 | DE | 123DE67 |
56 | EF | 1234EF7 |
345 | CDE | 12CDE67 |
23456 | BCDEF | 1BCDEF7 |
1234567 | ABCDEFG | ABCDEFG |