📝

Vimエディタ

に公開

はじめに

  • こんにちは。ふまたんです。
  • Linuxの研修で学んだVimについて記事をまとめていきます。
  • Vimでよく使う操作などについて、まとめていきます。

Vimとは

Vimとは、Unix系のOSに標準で搭載されているテキストディタです。
Windowsなどでいうところのメモ帳ですね。
Vimでは、CUIでの操作のため、カーソルの移動など操作はキーボードで行います。

Vimのモード

モード 動作
ノーマルモード Vim起動時の最初のモードです。カーソルの移動やコピー、ペーストを行うことができます。各モードから、Esc もしくは、Ctrl + [ でノーマルモードに移行することができます。
挿入モード 文字の入力や編集を行うモードです。ノーマルモードで、i,a,A,oなどのキーを押すと移動することができます。
コマンドラインモード wqやqなどコマンドを使用することができるモードです。ノーマルモードで : を押すと移行することができます。
ビジュアルモード 文字の選択を行うことができます。ノーマルモードで v キーなどを押すと移動することができます。現時点で私はまだ使ったことはないです。

最初のうちによく使われるモードは、ノーマルモード、挿入モード、コマンドラインモードの3つです。

よく使用する機能

各モードでよく使用することのあるコマンドやキー操作などをまとめていきます。

ノーマルモード

  • カーソル移動
    • hキー:左にカーソルを移動します。
    • jキー:下にカーソルを移動します。
    • kキー:上にカーソルを移動します。
    • lキー:右にカーソルを移動します。

カーソル移動に割り当てられているキーは、横に連続して並んでいるんですよね。これは、ホームポジションに指を置いて操作しやすいようにと設計されたそうです。
個人的には、PCゲームの移動で使用されるwasdの配列だったらやりやすいのにと思ったり、思わなかったり…
カーソルの移動は、矢印キーでもできるようになっています。

  • 行移動
    • gg:ファイルの先頭に移動
    • G (Shift + g):ファイルの末尾に移動
    • <行番号>gg:指定した行の先頭に移動

行の移動は他にもありますが、私がよく使うなと思うものは上記の3つですね。もし他にも使ってみて便利だなと思ったものがあったら別の記事などにまとめていきたいと思います。

  • テキスト操作
    • x:1文字消去
    • dd:1行消去
    • <数字>dd:指定した<数字>分だけ行消去
    • u:元に戻す(undo)
    • Ctrl + r:やり直す(redo)

Vimのノーマルモードで最後に消去した文字は、クリップボードに保存されます。pキーで貼り付けてみると直前に消した文字(列)が貼り付けられるはずです。

  • 保存して終了

    • ZZ:保存して終了
  • モード移行

    • i:カーソル位置からインサートモードに移行
    • a:カーソル位置の後ろからインサートモードに移行
    • A:カーソル位置の前からインサートモードに移行
  • 検索

    • /文字列:文字列に合致するものを検索します。検索を行った後の合致する文字列の移動を以下に記します。
      • n:合致する文字列の次にカーソルを移動する。
      • N (Shift + n):合致する文字列の前にカーソルを移動する。

コマンドラインモード

  • w:保存
  • q:終了(変更があった場合、終了することができません。)
  • wq:保存して終了
  • q!:強制終了
  • set nu(number):行番号の表示

まとめ

  • 今回の記事では、私が使っていてよく使うコマンドなどをまとめました。
  • Linuxはシステムだけでなく、Vimといったアプリケーションも多くのコマンドやオプションが存在することをあらためて感じました。
  • 今回まとめたものは一部なので、他のコマンドなどを覚えていきたいなと思っています。

Discussion