2011-01-31 11 views
6

私はビジュアルモードでヤンクされた行の一部を検索しようとしています。ビジュアルモードでヤンクされたテキスト行のvim検索パターン

VIMで行う最も簡単な方法は何ですか? exmapleについて、

Hello, #{1} world. 

私はVキーを押しビジュアルモードに入り、1行目でllo, #{1} worを選択その後、私はYを押して選択したテキストをヤンクし、その後、私が選択したテキストを検索しようとしています/を押してください。これは、次の質問につながります。

A:検索モードに入っているときに、ヤンクしたテキストをどのように通過するのですか?

B:検索パターンの文字をエスケープする作業を回避するにはどうすればよいですか?

+0

で検索を続ける*視覚的にタイトルを修正しました*モード(以前は*仮想だった) – eckes

答えて

3

私は(NB the star command for the visual modeをオーバーライドしました:それは1が必要ですlh-vim-libのファイル)。それはあなたの必要性に答える:

  1. ビジュアルモードで選択
  2. プレス*/は#
  3. N/N
+0

ありがとうございます。関数lh#visual#をv_star.vimにコピーしました。それは魅力のように機能します! – SunLiWei

6

あなたには、いくつかのテキストをヤンク(とにそれをヤンクするには、noレジスタを指定していない)、それはあなたがそのヤンクテキストを検索したい場合は、だから、0を登録することになると、押しESCが通常モードに入るために、その後

/CTRL-r0 

検索パターンにレジスタ0のコンテンツをプルする(すなわちプレス/、次いでCTRL + R、次いで)。

いくつかの注意:

  • 他のレジスタに格納されている他のパターンを検索するには、あなたが:regを入力して、検索に使用するコンテンツを登録するかを決める前に、レジスタの内容を見ることができます。
  • 0(たとえば2)以外のレジスタに連結するには、"2y:he v_y)と入力します。
  • 直接選択したテキストを検索するには、[マッピングを使用することができますが、ビジュアルモードでそのテキストを検索する一方で、単にX(大文字X)を押すことができますどのhereを説明しました。
  • 一般的に検索する場合、this vimcastは、検索履歴(2週間前に発見され、それを絶対に愛しています)を備えた非常に強力なコマンドラインウィンドウを紹介します。
+0

明確な説明をありがとう。 – Kalyan

12

A:

はCtrl-R

B:

はCtrl-R トリックに加えて、あなたは、評価される式を入力することができますし、その結果に展開はCtrl-R=は、もあります。

/(今プロンプトは/のように見える)
はCtrl-R=(今プロンプトは=のように見える)
escape(@0, '\^$*.~[')/llo, #{1} worようになりましプロンプトルックス)を入力します

@regは「レジスタregの内容」を意味し、レジスタ0は最後の削除または削除です。私は...どのような場合には、あなたはおそらく、そのすべてで入力するよりも、マッピングを行うことを好むだろうviの正規表現で特別なすべての文字をエスケープ思い

+0

もし私が行全体をヤンクしたら、検索の前に '^ M'か'^@ 'を最後から削除しなければなりません。 –

関連する問題