small note on vi

|**|

small note on vi 009

try tutorial " {? .. ?^M} {n}"

{? .. ?^M}

探索 その2

探しものを してみましょう 試行用ファイルは 以下の ものを 使用

$ cat test
123456789012345678902234567890
                             2
This is first section.       3
Here is second line.         4
Those are 1st section.       5
                             6
2nd section begin.           7
That is cat.                 8
It is dog.                   9
End of second section.      10
                            11
Last section here.          12
Test file is end.           13

”vi test”で 立ち上げましょう

start condition

何か 入力した後で この 前の 探索は 何か 方向が 一方 方向で 捜してまし た これでも 順繰りに いけば 最後には たどり着きますが 手前方向に探索した い場合も あるかもしれません 其場合は どうすれば 良いか という場合には {/ ... /^M} を 使う 変わりに {? ... ?^M}を 使用すれば 良いということです。 立ち上げた 状態で {^F}や {^M} にて 最終行に 移動します。

vew last row

この状態で {/section/^M} とすると どうなるでしょうか

after {/section/^M}

再度{^F}や {^M} にて 最終行に 移動します。其場合 後{//^M}を 何度か 繰 り返して 其 12行目の ”Last section here” の ”section”に 行きたいと いう 場合は 急がば 回れ 方式でも 良いのですが 手前方向に 探索 出来ればよ り 簡単に なります。(簡単に 簡単とは 言い切れません 操作方法が 増えるのですから )ごちゃごちゃいわんで {?section?^M} を いれましょう

after {?section?^M}

ほたら {??^M}とすれば

after {??^M}

ここで にゃんたろうは 次 どうするか わかれば すごいです。{//^M}を い れるのです (画像は流用しています)

after {?section?^M}

どうも 独立に データー ”section”を 何処かで 持ってるようで す。{//^M}を 数回 繰り返してみて下さい、同様に{??^M}も、また途中で 入れ換えて 見て下さい プロンプト(カーソル)が 思ってる通りに 移動すれば 理解できた 事になります。

{n}

もう一つ {n} を 見てみましょう 同様に プロンプト(カーソル が 最終行 にきてるものとします。ここで {?section?^M} を いれると どうなるかわかり ますね ちょうど 上の 様に なっています(画面上はそのように なっています)そ こで {n}を 入力すると どうなるでしょうか

after last row  {?section?^M} And {n}

もう一度 {n}をすると

after  {n} twice

では {/section/^M} の後でも 同じ様に {n}としてみて下さい、この場合 プ ロンプト(カーソル)の 動く 方向を 見ておいて下さい。{n}というのは 次の ある 場所を 探索していくようです そして その 順番は (動いて行く方法は) 先に {/ ... /^M} の 後での {n}の 場合は その 方向で 探索し {? ... ?^M} の 後での {n}の 場合は 同様に 其方向で 探索して行きます。

{n} について 補足

{/ ... /^M}     {/ ... /^M}     {/ ... /^M}
   |              |               |
   v              v               v
{/ ... /^M}     {//^M}           {n}
   |              |               |
   v              v               v
{/ ... /^M}     {//^M}           {n}

           **************************

{? ... ?^M}     {? ... ?^M}     {? ... ?^M}
   |              |               |
   v              v               v
{? ... ?^M}     {??^M}           {n}
   |              |               |
   v              v               v
{? ... ?^M}     {??^M}           {n}

同じ 動作の やりかたの 違い 但し。探索する物が あればの 話であり なけ れば このような ことは する必要は ありませんが!どうでも いいのですが 書 いている にゃんたろうも 忘れるでしょうが {n}の 途中で {//^M} 若しくは {??^M}を 操作することにより 探索方法を 逆に する事が 可能です やってみて 下さいな、探索する 文字列を 何処かで 保持してるようですので 最初に {/ ... /^M} で 次を 探索するには {n} で 行っておき 途中で気が変わり 戻る方 向に 探索したい時は {??^M} と して 今までの 方向と 反対に 探索して もう 一度 其方向で 良ければ {n}ということで 行えます また気が変われば {//^M} で 方向を 切替えられます。こんなことを する場合があり そのとき 記憶して いれば ちょっと おかしいかもしれません。

あと 条件で ”^”や”$”を 使う物が あるようですが ごっちゃに なるの で ここでは 保留と しておきましょう ;vi.beginner の 以下の 部分に あるようです

Section 16: {? .. ?^M} {n} (search strings: ^ $)

にゃんたろう 拝!

2005年12月 7日 (水) 22:46:27 JST 作成

|**|


small note on vi

Copyright © 2004.-2007. nyantarou All Rights Reserved.