エディタのViで、検索する文字列をテキスト中からコピーしてきたいのですが。

解決済みの質問

エディタのViで、検索する文字列をテキスト中からコピーしてきたいのですが。

Viで、テキスト中にある文字列(パターン)を検索したいのですが、どうすればよいのでしょうか。

/tangoと入力すれば、tangoというパターンを検索できるのはわかるのですが、
tangoというパターンをキーボードから打つのではなくて、
テキスト中にtangoというパターンがあるのを見つけて
「あ、このtangoというのを検索したいな~~」
と思って、テキスト中からコピーしてきて検索する方法が知りたいのですが。

あと、Viの操作方法でよくわからないことが出てくるので、
やさしく解説しているサイトを教えていただけるとありがたいです。

投稿日時 - 2001-08-17 12:28:00

連想キーワード:

QNo.119878

暇なときに回答ください

質問者が選んだベストアンサー

普通の vi では、簡単には無理です。

vi クローンのうちのひとつ vim であれば、単語にカーソルを合わせて
* と打つと、/\<tango\> としたのと同じことになります。
# と打つと、?\<tango\> としたのと同じことになります。

「どうしてもやりたい」ということであれば、以下のような手順で、出来ない
ことは無いです。

(1) 単語の先頭にカーソルを合わせる
(2) yw として単語を yank する
(3) 適当な空白行に行って、p として単語を copy する
(4) 行の先頭に / を挿入する
(5) その行を yy とやって copy する
(6) @@ と打つと、その単語を探す
(7) 探し終わったら、ファイルに加えた変更を戻しておく

どこまで vi を知っているか分からないので、一応解説を。

vi は、「バッファ」というものを持ってます。例えば、コピーする領域が
幾つもあると思ってください。

@ は、そのバッファをコマンドだと思って実行する機能があります。

先に紹介したやり方は、名前なしのバッファを使ったやり方ですが、探しながら
編集をしていくと、バッファの内容が変わってしまうので、いまいち使い勝手が
良くありません。

例えば、z という名前を持つバッファを使う場合には、"zyy とやって取り込み
実行するときには "z@ とやります。

複雑な操作をやるときや、一連の操作を繰り返し行ないたいときには、重宝します。

投稿日時 - 2001-08-24 20:12:50

お礼

(1)~(7)のやり方は、ちょっっっと手間がかかりますね。(^^;

でも、回答としては、
もう、もんくなしの良回答です。

投稿日時 - 2001-08-25 21:05:06

ANo.2

0人が「このQ&Aが役に立った」と投票しています

[  前へ  |  次へ ]

ベストアンサー以外の回答(1件中 1~1件目)

ANo.1

telnetは何を使っていますか?
telnetにteratearmを使えば、マウス操作のみで文字列をコピーできます。
マウスで範囲選択して、右クリックでペーストされます。
/は手入力して、上記方法でペーストすればOKです。

マニュアルは下記URLを参照。

参考URL:http://sports-gw.edu.mie-u.ac.jp/togashi/manual/vi.html

投稿日時 - 2001-08-17 15:03:06

補足

ご回答ありがとうございます。

が、質問は、telnetやエミュレータの機能を使わないで、
vi固有の機能だけを使って行うやり方です。
(言葉足らずですみません。)

できないのなら、できないとご回答ください。

投稿日時 - 2001-08-17 16:12:52

あわせてチェックしたい
  • viエディタのコマンド ...
  • vi の解説サイト ...
  • viエディタ ...
PR

OKWaveのオススメ

教えて弁護士さん!

お金の悩みQ&A特集はこちら