vim エディタは、Unix システムで最も高度なテキスト エディタの 1 つで、ほぼすべてのファイル タイプをサポートしており、プログラマ エディタとも呼ばれます。このチュートリアルでは、vim エディターで検索操作を実行して、必要なテキストをすばやく見つける方法を学びます。
ただし、その前に、この記事で言及されているすべての例、コマンド、手順は Ubuntu 14.04 および Vim 7.4 でテストされていることに注意してください。
Vim の基本的な検索操作
Vim でファイルを開いて特定の単語またはテンプレートを検索する場合、最初のステップは Esc キーを押して挿入モードを終了することです (挿入モードの場合)。次に、「/」を入力し、その後に検索したい単語または検索パターンを入力します。
たとえば、検索したい単語が linux の場合、次の図は Vim ウィンドウの下部にある検索コマンドを示しています。 Enter キーを押すと、Vim が挿入モードでカーソル位置から始まる、見つかったこの単語を含む最初の行にカーソルを置くことがわかります。ファイルを開いてすぐに検索を開始した場合、検索はファイルの最初の行から開始されます。
検索した単語を含む次の位置に移動するには、n キーを押します。検索されたテンプレートの場所をすべて確認したら、n キーを押し続けます。Vim は検索操作を繰り返し、カーソルは最初の検索結果が表示された位置に戻ります。
検索結果をトラバースするときに、前の一致に戻りたい場合は、N を押します (つまり、シフト n)。同時に、いつでも ggn と入力してジャンプできることにも注意してください。 to 最初の一致ポイント、または GN で最後のポイントにジャンプします。ファイルの最後にいて、逆方向に検索したい場合は、/ の代わりに ? を使用して検索を開始します。下の図は例です:
検索をカスタマイズする
1. 検索結果をハイライト表示する
検索した単語やパターンの一致点からnやNで別の場所にジャンプするのは簡単ですが、一致点を強調表示できるとさらに使いやすくなります。たとえば、添付のスクリーンショットを参照してください:
これは、hlsearch 変数を設定することで実現できます。たとえば、次のコマンドを通常/コマンド ライン モードで実行します。 リーリー2. 検索で大文字と小文字を区別しないようにします
Vim での検索では、デフォルトでは大文字と小文字が区別されます。これは、linux を検索しても Linux は一致しないことを意味します。ただし、これが希望しない検索方法である場合は、次のコマンドを使用して大文字と小文字を区別しない検索を行うことができます: リーリー
したがって、ignorecase 変数を設定し、前述のコマンドを使用して linux を検索すると、linux の場所も強調表示されます。3. スマートケース検索
Vim は、検索対象の単語/テンプレートに大文字が含まれている場合にのみエディターが大文字と小文字を区別する機能を提供します。この機能を実装するには、最初にignorecaseを設定し、次にsmartcase変数を設定する必要があります。 リーリー
たとえば、ファイルに LINUX と linux の両方が含まれている場合、スマートケース検索機能がオンになっているときに、/LINUX を使用して検索すると、LINUX という単語のみが検索されます。一方、linux を検索すると、大文字と小文字に関係なく検索結果が一致します。
4. プログレッシブ検索
クエリ文字列を入力するとさまざまな検索結果が表示される Google (文字列は入力する文字ごとに常に更新されます) と同じように、Vim もプログレッシブ検索を提供します。この機能を使用するには、検索する前に次のコマンドを実行する必要があります: リーリー
Vim で検索するための素晴らしいヒント
他にも役立つ検索関連のヒントがいくつかあります。 ###はじめましょう!ファイル内で単語を検索したいが、入力したくない場合は、単語の下にカーソルを移動して * (または Shift 8) を押します。部分検索を開始する場合 (たとえば、「in」と「terminal」の両方を検索する)、単語 (この場合は「in」) の下にカーソルを移動し、キーボードの g* を押す必要があります (g を 1 回押してから、 *) を押し続けます。
注: 逆方向に検索する場合は、# または g# を押します。
こちらにビデオがありますので、ご覧ください:
ビデオプレーヤー
00:00
03:33
下一个,只要你想要,你可以获得所有被搜索单词或模式匹配处所在的行和行号的一个列表。这可以在你开始搜索后通过按 [I 来实现。如下图是一个列表结果如何在 Vim 窗口底部被分组和显示的例子:
接下来,你可能已经得知,Vim 默认是环形搜索的,意味着在到达文件结尾处(或者被搜索单词的最后一处匹配)时,如果继续按 “搜索下一个” 会将光标再次带回第一处匹配处。如果你希望禁止环形搜索,可以使用如下命令:
:set nowrapscan
再次开启环形搜索,使用如下命令即可:
:set wrapscan
最后,假设你想要对文件中已经存在的单词做一点小小的修改,然后对修改后的单词执行搜索操作,一种方法是输入 / 与要搜索的单词。但是如果这个单词又长又复杂,那么可能需要一点时间来输入它。
一个简单的办法是将光标移到你想要略微修改的单词下,按/ 之后再按Ctrl +r 最后按 Ctrl块 + w 。这个在光标下的单词不仅仅会被拷贝,也会被复制到/ 后,允许你对它进行修改并且继续进行搜索操作。
如果想要获得更多小技巧(包括如何使用鼠标来使在 Vim 中的操作变得简单),请前往 Vim 官方文档。
在本教程中,我们介绍了如何在vim编辑器中进行搜索和替换,包括使用斜杠和点方法,使用冒号和s命令,以及使用全局命令。我们还学习了如何设置大小写敏感或不敏感,以及如何搜索整个单词。vim编辑器提供了强大而灵活的搜索功能,可以帮助我们提高编辑效率。
以上がLinux の vim エディターの検索テクニックの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。