bitA Tech Blog
🐧

Vimのコマンドラインウィンドウでコマンド履歴を編集・コピーする

に公開
2025/12/21

🎄この記事は bitA Tech Blog Advent Calendar の16日目の記事です。

はじめに

Vimのコマンドラインモードを使う際、自分が過去に使ったコマンドの履歴をコピーしたい場合や長く複雑なコマンドを入力したい場合があります。

このような場合に、Vimのコマンドラインウィンドウを使うと便利だったのでコマンドラインウィンドウの開き方と実際の画面を紹介します。

以下では、Ctrlを含む入力を<C-*>のように表記します。(*は任意のキー)

Vimのコマンドラインウィンドウとは

Vimにはコマンドラインウィンドウという機能があります。

コマンドラインウィンドウを開くと、以下の画像のようにコマンドの履歴が表示され、ビジュアルモードやインサートモードでの操作、編集ができます。

コマンドラインウィンドウでコマンドの履歴一覧が表示される様子

コマンドラインウィンドウの開き方

※スクリーンショットを撮ったため、添付画像に<Snapshot>のキー入力が含まれていますが無視してください。

ノーマルモードから開く場合: q:

ノーマルモードからコマンドラインウィンドウはq:で開けます。閉じる時は:qで閉じられます。

を押下してコマンドラインウィンドウを開く

コマンドラインモードから開く場合: <C-f>

コマンドラインモードからコマンドラインウィンドウは<C-f>で開けます。

  1. :でコマンドラインモードを開く
    でコマンドラインモードを開く

  2. <C-f>でコマンドラインウィンドウを開く
    でコマンドラインウィンドウを開く

コマンドラインウィンドウでの操作例

ビジュアルモード

コマンドラインウィンドウを開いた後、ビジュアルモード(v)で選択後、以下の画像のようにコマンド履歴をヤンクできます。
コマンドラインウィンドウでビジュアルモードを使って選択する

インサートモード

コマンドラインウィンドウでインサートモード(i)にしてコマンドを入力後、Enterを押すと入力したコマンドが実行されます。

以下に%s/my-gitconfig/ThisIsSampleText/gを入力して、画像の8行目にある7.my-gitconfigを7.ThisIsSampleTextに置換する例を示します。

  1. コマンドラインウィンドウを開き、%s/my-gitconfig/ThisIsSampleText/gを入力する

をコマンドラインウィンドウで入力する

  1. コマンドラインウィンドウのインサートモードのままEnterを押す

my-gitconfigがThisIsSampleTextに置換された

画像の8行目の7.my-gitconfigが7.ThisIsSampleTextに置換されたことが分かります。

参考

GitHubで編集を提案
bitA Tech Blog
bitA Tech Blog

Discussion