Bashプログラミング
 Computer >> コンピューター >  >> プログラミング >> Bashプログラミング

マスター Vim マクロ:コマンドの記録と再生のステップバイステップ ガイド

マスター Vim マクロ:コマンドの記録と再生のステップバイステップ ガイド
Vim マクロ機能を使用すると、エディター内で一連のアクションを記録および再生できます。

この記事では、2 つの詳細な例を使用して、Vi および Vim エディター内で記録と再生を実行する方法を説明します。

Vim 内で記録して再生するための高レベルの手順

<オル>
  • q を押して記録を開始し、その後に小文字でマクロ名を入力します
  • Vim エディタ内で一般的な編集やアクションを実行し、記録されます
  • q を押して録音を停止します
  • @ に続いてマクロ名を押して、記録されたマクロを再生します
  • マクロを複数回繰り返すには、:NN @ マクロ名を押します。 NN は数字です
  • 例 1:Vim マクロを使用したファイル内のシーケンス番号の生成

    1. sequence-test.txt ファイルを開始してシーケンスを生成します。

    $ vim sequence-test.txt

    2.挿入モードに移動し、「1」と入力します。以下に示すように

    「Esc i」に続けて「1」と入力します。

    $ vim sequence-test.txt
    1.

    3.記録を開始し、レジスタ a に保存します。

    「Esc q」に続けて「a」と入力します。

    • q は録音の開始を示します
    • a は、録音をレジスタ a に保存することを示します
    • q a を実行すると、vi の下部に「録画中」と表示されます。

    4. 1 行目を 2 行目にコピーして、 1 が 2 行になるようにします。以下に示すように

    入力:Esc yy の後に p

    • yy は現在の行をコピーします
    • p はコピーした行を貼り付けます
    $ vim sequence-test.txt
    1.
    1.

    注: Vim では、以下に示すように、引き続き記録が下部に表示されます。

    マスター Vim マクロ:コマンドの記録と再生のステップバイステップ ガイド
    イチジク :Vim の下部に録音メッセージが表示されます

    5.数値を増やします。

    タイプ:コントロール

    カーソルを 2 行目に置き、Ctrl+a を押すと、以下に示すように数値が 2 に増加します。

    $ vim sequence-test.txt
    1.
    2.

    注: vim の下部には引き続き記録が表示されます。

    6.録音を停止します

    タイプ:q

    録音を停止するには q を押します。 vim の下部にある録音メッセージが消えていることがわかります。

    7.録音を 98 回繰り返します。

    タイプ:98@a

    • ここで、「98 @ a」と入力して、このジョブを繰り返します
    • @a はマクロ「a」を 1 回繰り返します。
    • 98@a は、マクロを使用して以下に示すように、マクロ「a」を 98 回繰り返し、シーケンス番号 1 ~ 100 を生成します。

    マスター Vim マクロ:コマンドの記録と再生のステップバイステップ ガイド
    イチジク :マクロを使用して Vim でシーケンス番号を生成

    例 2:異なる引数を指定して Vim マクロを繰り返す

    この例では、同じコマンドを異なる入力で実行する方法を説明します。つまり、同じコマンドを異なる引数でフレーム化します。

    マクロを実行する前に:change-password.sql

    $ vim change-password.sql
    Annette
    Warren
    Anthony
    Preston
    Kelly
    Taylor
    Stiller
    Dennis
    Schwartz

    マクロを記録して実行した後:change-password.sql

    $ vim change-password.sql
    ALTER USER Annette IDENTIFIED BY 'Annette';
    ALTER USER Warren IDENTIFIED BY 'Warren';
    ALTER USER Anthony IDENTIFIED BY 'Anthony ';
    ALTER USER Preston IDENTIFIED BY 'Preston';
    ALTER USER Kelly IDENTIFIED BY 'Kelly ';
    ALTER USER Taylor IDENTIFIED BY 'Taylor';
    ALTER USER Stiller IDENTIFIED BY 'Stiller';
    ALTER USER Dennis IDENTIFIED BY 'Dennis';
    ALTER USER Schwart IDENTIFIED BY 'Schwart';

    1.名前のみが含まれるchange-password.sqlを開きます。

    $ vim change-password.sql
    Annette
    Warren
    Anthony
    Preston
    Kelly
    Taylor
    Stiller
    Dennis
    Schwartz

    2.記録を開始し、レジスタ a に保存します

    タイプ:q a

    • q は録音の開始を示します
    • a は、録音をレジスタ a に保存することを示します
    • q a を実行すると、vi の下部にメッセージ録音が表示されます。

    3.挿入モードに移動し、「ALTER USER」と入力します

    入力:I (大文字の i) に続いて「ALTER USER」

    最初の行の任意の場所にカーソルを置き、I を押します。行の最初の文字に移動します。 「ALTER USER」と入力

    4.次の単語 (名前など) をコピーします

    タイプ:Esc w yw

    • Esc キーを押してから w キーを押して、次の単語 ( name ) に移動します。
    • yw、現在の単語 ( name ) をコピーします。

    5.最後まで進み、「IDENTIFIED BY ‘」と入力します。

    タイプ:Esc A に続いて「IDENTIFIED BY 」を入力します。

    • Esc キーと A キーを押してカーソルを行末に移動し、スペースを入力します。
    • タイプは ' によって識別されます

    6.コピーした名前を貼り付けます

    タイプ:Esc p

    Esc キーを押し、「p」と入力して、手順 4 でコピーした名前を貼り付けます。

    7.最後に見積もりを完成させます。

    「Esc A」に続けて「;」と入力します。

    Esc キーと A キーを押して行末に移動し、「;」を押します。

    8.次の行にジャンプしてレコードを停止します。

    「Esc j」に続けて「q」と入力します。

    • j で次の行に移動します。
    • q で録音を停止します

    注: vi の下部に表示される録音メッセージが消えます。この段階で、change-password.sql は次のようになります。

    マスター Vim マクロ:コマンドの記録と再生のステップバイステップ ガイド
    イチジク :Vim マクロが記録を完了しました

    9.対応する行に引数を指定してマクロを繰り返します

    タイプ:8 @ a

    • 次に、「8@a」と入力して、このジョブを 8 回繰り返します
    • @a はマクロ「a」を 1 回繰り返します。
    • 8@a は、以下に示すように、マクロ「a」を 8 回繰り返し、行の残りの部分を自動的に完成させます。

    マスター Vim マクロ:コマンドの記録と再生のステップバイステップ ガイド
    イチジク :Vim マクロの再生が完了しました

    推奨書籍

    マスター Vim マクロ:コマンドの記録と再生のステップバイステップ ガイド Vim 101 Hacks、Ramesh Natarajan 著 。私はコマンドラインマニアです。したがって、当然のことながら、私は Vi および Vim エディターの大ファンです。数年前、Linux で多くの C コードを書いたとき、利用可能な Vim エディターのヒントやテクニックをすべて読んでいました。 Vim エディターの経験に基づいて、Vim エディターでの作業を高速化して生産性を高めるための、さまざまな高度な Vim 機能に関する 101 の実践的な例を含む、Vim 101 Hacks eBook を書きました。 Vi および Vim エディタを数年間使用していてこの本を読んでいない場合でも、ぜひこの本を読んでください。 Vim エディタの機能に驚かれることでしょう。

    Vim エディターの素晴らしい記事

    以下は、いくつかの素晴らしい Vi / Vim エディターのチュートリアルです。 役立つかもしれません。

    • Vimperator アドオンを使用して、Vim エディター機能を備えた Firefox ブラウザをターボチャージする
    • チュートリアル:c.vim プラグインを使用して Vim を C/C++ IDE として作成する
    • Vim エディタをあらゆるプログラミング言語に対応する美しいソース コード ブラウザに変換する
    • Vim エディター向けの 12 の強力な検索と置換の例

    注: The Geek Stuff を購読して、今後のVi および Vim エディタのヒントとコツをお見逃しなく .


    1. Ubuntuで利用可能なディスク容量を確認する[ガイド]

      この簡単なガイドでは、UbuntuLinuxで使用可能なディスク容量を確認する方法について説明します。 df コマンドは、Linuxシステムに接続されている各ストレージボリュームで使用されているスペースの量を示します。実行するには、端末で次のコマンドを実行するだけです。 df どの出力: dfコマンド出力 簡単!ただし、一目で読むのは少し難しいです– -h オプションを使用すると、すべてが人間が読める形式になります : df -h どの出力: df-hコマンド出力 ただし、そこには多くのがらくたがあります。 / dev / loopは無視できます。 * squas

    2. 安全な SSH アクセスに最適な PuTTY 代替手段 10 選

      概要 :このチュートリアルでは、SSH クライアントに最適な PuTTY の代替手段 10 個を検討します。 パテ は最も人気があり、広く使用されているSSH の 1 つです。 およびテルネット ユーザーがサーバーなどのリモート デバイスやルーターやスイッチなどのネットワーク デバイスにログインできるようにするクライアント。 これは、リモート接続を簡単に確立できるシンプルで直感的なユーザー インターフェイスを提供する、使いやすい Linux ターミナル エミュレータです。 パテ 当初はWindows OS 向けに開発されました。 しかし、時間の経過とともにLinuxでも利用できるように