私は正規表現パターンをパラメータとして使用し、2000を超えるファイルを検索する小さなプログラムを使用しています。これらのファイルはディレクトリ階層にあります。
パターンは複数のファイルに存在することも、すべてのファイルに複数回表示されることもあります。ファイル名とパターンが発生する行を見つけた後、プログラムは最初の行番号と見つかったすべてのファイル名を取得するためにvi
呼び出します。+line
+line
今はすべてうまくいきますが、一度は各ファイルに()を指定しようとしましたが、カーソルが目的のvi +2 x1 +5 x2
位置ではなく5行x1
と1行に置かれるようになったx2
のであきらめました。
これらのパターンはしばしば複雑で、2回入力したくないため、時にはコピーして貼り付けを使用して検索します。最善の方法は、パターンをvi
使用して検索履歴を設定し、++を使用してすべてのパターンを見つけることができることです。再入力またはコピーして貼り付ける必要があります。その後、次のファイルに移動してパターンを引き続き使用できます。vi
/↑Return:n!
.viminfo
スキーマが私のディレクトリに保存されているようです。始める前にこのファイルを更新できますかvi
?それとも、これを実行できるライブラリまたはコマンドラインユーティリティはありますか?
答え1
ファイルにパッチを適用する必要はありません~/.viminfo
。
使用中は、コマンドラインオプションを使用してモデル行にカーソルを置くvim
ことができます。+/pattern
その後、次のイベントを取得できますn(行の先頭にない場合は最初のイベントになり、そうでない場合は2番目のイベントになります)。
マニュアルページには、カーソルがパターンが最初に表示される位置にあることが示されていますが、私の経験ではパターンがある行の最初の文字にあります。vim
man
ページから:
+/{pat} For the first file the cursor will be positioned on the
first occurrence of {pat}. See ":help search-pattern" for
the available search patterns.