header image
  • プログラム・ソフト
  • 物理学・工学
  • ガジェット
  • 当サイトについて
  • お問い合わせ
  • プログラム・ソフト
  • 物理学・工学
  • ガジェット
  • 当サイトについて
  • お問い合わせ
  • HOME
  • プログラム・ソフト
  • Vim
  • 【超初心者向け】Vim(Vi)でなんとかファイル編集する方法

【超初心者向け】Vim(Vi)でなんとかファイル編集する方法

投稿日:2020年8月29日 更新日:2022年6月15日

  • Tags: [コマンド集], [テキストエディター], [使い方],

サムネイル

Vim (Vi)というのはテキストエディターの1つで、使い慣れると非常に効率的なコーディングや文章作成ができます。
UbuntuやDebian(旧Raspbian, 現Raspberry Pi OSも同様)などの多くのLinuxで基本的に初めからインストールされています。
しかしはじめて触る人にとっては訳が分からず触りたくないという気持ちになると思います。

本記事ではそんな人のために、最低限使うための方法、プラスアルファで最低限使えると便利かも、というコマンドを紹介します。
Viの拡張版であるVimを中心として記述していますが、Viでも基本は同じです。

  • 起動方法
  • Vimの最低限の基本
    • 4つのモード
    • 本当に最低限の操作
    • 本当に最低限のコマンド
  • まず覚えるべき初心者向けコマンド
    • コマンドの表記について
    • カーソルの移動
    • コピー、ペースト
    • 取り消し、繰り返し操作
    • 検索
    • 削除
  • まとめ

起動方法

LinuxやMacのターミナルで、

  $ vi {ファイル名}

と入力すると、ファイルを開いた状態でVim (またはVi)が起動します。
上記のコマンドで入力した*{ファイル名}*のファイルが存在しない場合は、新規で作成されます(そのあとVim内で保存しなければファイルは破棄されます)。
Vimはテキストエディターなので、上記のコマンドでファイルの中身が表示されるはずです。

Vimの最低限の基本

Vimの4つのモード
Fig.1. Vimの4つのモード

4つのモード

Vimの操作を難解に感じさせる大きな要因は、複数のモードの存在だと思われます。
Vimには以下の4つ(解釈によっては3つ)のモードが存在します。

1. ノーマルモード:

  • エディターを開いた初期はこの状態。コマンドでカーソルの移動やコピー&ペースト等多くの操作ができる。
    文字の入力は基本的にはできない。
  • 他の3つのモードからはEscキーを押すとノーマルモードに戻る。

2. 挿入(インサート)モード:

  • キー入力した文字を書き込めるモード。
  • ノーマルモードでiキーを押すと挿入モードになる。

3. コマンドモード:

  • ファイル操作やエディターの表示設定等のコマンドが入力できるモード。
  • ノーマルモード時に:キーでコマンドモードになる。
  • 最初に :(コロン) がついているコマンドは、コマンドモードでのコマンドだと思ってよい。
    ノーマルモードの一部と解釈することもできる。

4. ビジュアルモード:

  • 複数の文字や行、列に対してカーソルを広げ、一度に選択できるモード。
    操作する範囲が視覚的にわかる。
  • ノーマルモードでvキーを押すとビジュアルモードになる。

はじめてVimを触る初心者は、基本的に挿入モードで操作し、ファイルの保存やエディターの終了時にコマンドモードを使う、というスタンスが良いかもしれません。
今回、ビジュアルモードはほとんど扱いません。

触っている間にわけがわからなくなったら、とりあえずEscキーを連打すればノーマルモードに戻れるはずです。

本当に最低限の操作

Vimでファイルをとりあえず開いた、という状態ではノーマルモードになっています。
しかしある程度コマンドを覚えないとノーマルモードの良さはわかりません。
とはいえとりあえずテキストエディターとして使いたい、文字を入力、編集したい、という人もいると思います。
そういう人は、ファイルを開いてすぐiキーを押して挿入モードになってしまいましょう。
挿入モードではカーソルキーによる移動やバックスペースによる削除も可能です。

挿入モードでテキストの編集が完了したら、

挿入モード →Esc→ ノーマルモード →:→ コマンドモード

と切り替えて、ファイルの保存&Vimの終了をすれば、最低限テキストエディターとして使うことができるはずです。
ファイルの保存&Vimの終了は、:キーでコマンドモードに入りwq(wのあとにqを入力) → Enterです。
このとき保存せずに終了する場合は、:キーでコマンドモードに入りq! (qのあとにShift+1キーを押す) → Enterです。

Vimを使う最低限の流れ

  1. Vimでファイルを開く(ノーマルモードの状態)
  2. iキーを押す(挿入モードへ移行)
  3. テキストを編集する
  4. Escキーを押す(ノーマルモードへ移行)
  5. Vimの終了
    • 保存する場合::、w、qと順に入力し、Enterを押す(保存して終了コマンド:wq<Enter>を入力)
    • 保存しない場合::、q、Shift+1の順に入力し、Enterを押す(強制終了コマンド:q!<Enter>を入力)

本当に最低限のコマンド

本当に最低限の操作で使用したコマンドをまとめます。

※最初に :(コロン) が付くコマンドはコマンドモードでの入力になるので、最後にEnterキーを忘れないようにする必要があります。

コマンド操作
i挿入モードへ
<Esc>ノーマルモードへ
:wq<Enter>保存して終了
:q!<Enter>保存せず終了

まず覚えるべき初心者向けコマンド

上の4つのコマンドで、最低限テキストエディターとして使用することができると思います。
しかしそれだけでは、Vimはただの手間のかかるだけのエディターでメモ帳のがまだましだ、という感想を持つでしょう。
Vimが便利だと思うようになるには、いくつかコマンドを覚えていく必要があります。
しかし一度に大量のコマンドを覚えることは難しいので、個人的によく使っている基本的なコマンドをピックアップして紹介します。

コマンドの表記について

以下に記すコマンドはすべて、ノーマルモードの時に入力するコマンドとなります。
そのためコマンドに対応するキー入力をすればよいですが、下記に注意ください。

  • 文字が2つ以上続くコマンド(例 gg): アルファベットを続けて押す(例 gキーを2回押す)。
  • 大文字または記号の入ったコマンド(例 $): 大文字や記号を入力するつもりで、Shiftキーを同時に押しながらキー入力を行う(例 Shiftキーと4キーを同時に押す)。
  • Ctrl- が入ったコマンド(例 Ctrl-r): キーを同時に押す(例 Ctrlキーとrキーを同時に押す)
  • :(コロン)から始まるコマンド(例 :wq<Enter>): コマンドモードでのコマンドになるため、最後にEnterキーを押すのを忘れずに(例 :, w, q, Enterを順に押す)。

Vimの基本コマンド

カーソルの移動

コマンド操作
h左へ一文字分移動※
j下へ
k上へ
l右へ
0行頭へ一気に移動
$行末へ
gg一番上の行へ
G一番下の行へ

※ノーマルモードの時、カーソルキーでも移動できますが、h, j, k, lキーでの移動になれると、キーボード中央付近から手を動かさずに済むため便利。

コピー、ペースト

コマンド操作
yyカーソル上の一行コピー(ヤンク)
pカーソルの下の行に貼り付け(プット)

yypで一行コピペできます。

コピーコマンド、ペーストコマンドについては、下記に詳しく述べています。
>> Vim (Vi)でコピー&ペーストするコマンドまとめとエディタ外部間で行う方法

取り消し、繰り返し操作

コマンド操作
u直前に行った操作を取り消す(undo)
Ctrl-r取り消した操作を元に戻す(redo)
.直前に行った操作を繰り返す※

※挿入モードを使った操作は"挿入モードに入ってからノーマルモードに戻るまでの動作"を、1回の操作として扱われる。

検索

コマンド操作
/{キーワード}<Enter>キーワードを検索する※
n次にキーワードがヒットする場所に移動する(上から)
N次にキーワードがヒットする場所に移動する(下から)

※ 検索するときは、キーワード入力後にEnterキーが必要。

削除

コマンド操作
x一文字削除
dd一行削除

まとめ

Vimはコマンドを覚えて慣れてくるととても効率的なテキストエディターです。
しかしそうなるためには、少しずつコマンドを覚え、使っていく必要があります。
とくに最初は、モードという概念が混乱を招くと思います。

Vimにまだまだ慣れていない初心者は、

  1. Vimを開いたらまず挿入モードへ
  2. テキストを編集
  3. ノーマルモードに戻り、保存&終了

という最小限の操作からはじめて、少しずつノーマルモードでのコマンドを試していけばよいと思います。

下記によく使うコマンドをまとめましたので、もっとVimのコマンド覚えたい方はどうぞ。
>> Vimで便利な小技(よく使うコマンド集)

もっとたくさんのコマンドを一覧で見たい方も下記へどうぞ。
>> 【動画あり】Vimのコマンドを一覧にまとめてみた

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


自作ラズパイゼロケースを3Dプリンター用にモデリング【FreeCAD】

Vimのコマンドの表記とコマンドの基本構造(オペレーターとモーション)

WSL+VSCode上でJupyter(Python)を使う

Vimの改行コマンドと改行コードの操作

Win11にWSLインストール(エラー発生したので備忘録)

Vimのレジスタの種類とコマンドの使い方・構造

Vimの行番号の表示設定と移動方法

【動画あり】Vimのコマンドを一覧にまとめてみた

  • プロフィール

  • Yoshiharu

  • 現在、ひよっこ光学系エンジニアをやっている一般人です。我流でプログラムをいじったりしています。備忘録、知識整理を兼ねてアウトプットをしていく予定です。

    • 【ラズパイ】格安な抵抗式・静電容量式の土壌湿度センサーを実際に使って比較

      2022.11.23

      【ラズパイ】格安な抵抗式・静電容量式の土壌湿度センサーを実際に使って比較


    • ELEGOO Neptune 2Sをレビュー!2万円台3Dプリンターの実力を実際に使って評価!

      2022.11.03

      ELEGOO Neptune 2Sをレビュー!2万円台3Dプリンターの実力を実際に使って評価!


    • 自作ラズパイゼロケースを3Dプリンター用にモデリング【FreeCAD】

      2022.10.13

      自作ラズパイゼロケースを3Dプリンター用にモデリング【FreeCAD】


    • 【初心者向け】FreeCADの基本的な使い方と手順の流れ

      2022.10.11

      【初心者向け】FreeCADの基本的な使い方と手順の流れ


    • 【Python】ラズパイでLチカ:LEDの取り扱い~抵抗値の計算

      2022.09.07

      【Python】ラズパイでLチカ:LEDの取り扱い~抵抗値の計算


  • アーカイブ

    • 2022年11月
    • 2022年10月
    • 2022年9月
    • 2022年8月
    • 2022年5月
    • 2022年4月
    • 2022年3月
    • 2022年1月
    • 2021年11月
    • 2021年9月
    • 2021年8月
    • 2021年7月
    • 2021年2月
    • 2021年1月
    • 2020年12月
    • 2020年10月
    • 2020年9月
    • 2020年8月
    • 2020年7月
    • 2020年3月
    • 2020年2月
    • 2020年1月
  • カテゴリー

    • Vim
    • ガジェット
    • プログラム・ソフト
    • 光学
    • 情報処理
    • 物理学・工学
    • プログラム・ソフト
    • 物理学・工学
    • ガジェット
    • 当サイトについて
    • お問い合わせ
    Y Lab Desk

    Copyright © Y Lab Desk, 2022 All Rights Reserved.