viエディタ

vi(ブイアイまたはヴィーアイ)は、Emacsと共にUNIX環境(Linuxを含む)で人気があるテキストエディタです。

Viエディタは、テキスト編集作業を行うためにターミナル内で使用されるエディタであり、Windowsでいうところの「メモ帳」や「エディタ」のようなものです。

しかし・・・根本的な違いがあります!

  • Windowsのエディタ:
    • 別画面で起動
  • Viエディタ
    • 同じターミナル内で起動

つまり、Viエディタを起動すると、現在操作しているターミナル上で編集作業を開始できるようになるんですね。

別画面が起動するのを待っていても、何も起こりませんよ(笑)。

このような編集方法は、Windowsのエディタとは異なるため、最初は戸惑うかもしれませんが、慣れてしまえば非常に便利で、編集作業もスムーズに行えます。

Viの特徴:モード切替

Viは、他のエディタと比べていくつかの特徴的な点がありますが、ここではモード切替を説明します。

  • 2つのモード
    • インサートモード
      • テキストを編集
    • コマンドモード
      • カーソルの移動や削除、コピー、ペースト、検索、置換など

vi のコマンド

インサートモードで使われるコマンド

コマンド名由来と説明
i"insert" の略で、挿入モードに切り替えるコマンド
挿入モードに入ると、カーソルの位置に文字を挿入することができる
a"append" の略で、挿入モードに切り替えるコマンド
挿入モードに入ると、カーソルの次の位置に文字を挿入することができる。
o新しい行を挿入して挿入モードに切り替えるコマンド
Escインサートモードからコマンドモードに戻るコマンド

コマンドモードで使われるコマンド

コマンド名由来と説明
xカーソルがある位置の文字を削除するコマンド
:wファイルを保存するためのコマンド
":w"を入力してエンターキーを押すことで、現在のファイルを保存
:qviを終了するコマンド
現在の編集中のファイルが保存されていない場合は、警告が表示される。
:wq現在のファイルを保存してviを終了するコマンド
/検索するためのコマンド
スラッシュを入力した後に検索したい文字列を入力し、エンターキーを押すことで、該当する文字列を検索することができる
yyカーソルがある行をコピーするコマンド
pカーソルの位置にコピーした文字列を貼り付けるコマンド
:set nu行番号を表示するためのコマンド
:%s/置換前文字列/置換後文字列/g置換するためのコマンド
":%s/"に続けて「置換前文字列」、「置換後文字列」、gオプションを指定することで、全ての行に対して置換を行うことができる。

vi と vim

vi と vim の関係と違いなどについて以下にまとめました。

コマンド名由来と説明
vi"Visual Editor" の略(諸説あり)で、テキストエディタの一種
ViはUnixシステムで最も一般的に使用されているエディタの1つであり、標準のUNIXエディタ
Viはテキストファイルを編集するためのコマンドラインツールであり、ユーザーがカーソルを移動してテキストを挿入、削除、変更することができる
vim"Vi Improved" の略で、Viの改良版
VimはViと同様のコマンドを備えているが、より高度な機能が追加され、Viの弱点を改良
Vimはテキストエディタの中でも特にプログラマーやシステム管理者に人気があり、強力な検索、置換、カラーシンタックスハイライト、マクロ記録などの機能がある
また、Viと同様に、Vimはコマンドラインから起動して使用することができる

入門vi 第6版


実践Vim 思考のスピードで編集しよう! (アスキー書籍)
タイトルとURLをコピーしました