Webとデザインのあれこれ

プログラミングとUIデザインの学習記録です。

Viを使ってみよう!

Viに触れる

Linuxの操作に不可欠なテキストエディタViの操作方法について触れていきます。

Viとは?

UnixOSの環境下で使用できるテキストエディタです。ビィーアイと読むみたいですね。テキストエディタのため、ファイル編集などに使用します。
なぜLinuxの操作に必要かというと、Unix系のOSでは初期設定ファイルなど多くのファイルがテキスト形式になっており、テキストエディタの使用が必須となるためです。

慣れると高速でファイル操作ができることもあり、Vimと共に絶大な人気があります。

Vimとの違いって何?

VimはViの拡張版で、非常に高機能なテキストエディタです。操作感は似ているようですが、コマンドが異なる部分もあります。 ここでは割愛します。

Viの動作モードについて

Viは動作モードが大きく分けて3つあります。

  1. インサートモード(文字の入力作業)
  2. コマンドモード(文字列の編集作業)
  3. exモード(ターミナルの左下で、コロン(:)かスラッシュ(/)を入力して行う操作)

ノーマルモード(Viのコマンドを使うモード)より特定のコマンドを実行し、各モードに切り替えます。 上記の3つのモードからノーマルモードに戻るにはescキーを使います。

特にファイルに文字を入力する際などに、どのモードで作業をしているかわからなくなることがあるため、 そのような場合はescキーで処理をキャンセルするのがオススメです。

具体的な操作方法

カーソル移動

基本は、下記の4つです。

  • k(↑に移動)

  • j(↓に移動)

  • h(←に移動)

  • l(→に移動)

カーソルキーを使用せずに、ホームポジションで作業が可能です。ただ、最初は違和感があります。

  • 0(カーソルを行の先頭に移動)
  • $(カーソルを行の末尾に移動)

移動するコマンドは非常にたくさんあります。
一気に覚えるのは大変ですので、まず基本コマンドを覚えるのをお勧めします。

ファイル操作

* :w #保存(Vi自体は終了しない)

* :q #閉じる(変更内容がある場合はメッセージが表示され、終了できない)

* :wq #内容を保存して閉じる

* :q! #内容を保存せず強制終了(変更があっても破棄される)

* :w ファイル名 #ファイル名で保存する

慣れるには

海外のゲームと有名なチュートリアルに挑戦しましょう。

Vim Adventures vim-adventures.com

vimの操作でお宝をゲットするタイプのゲームで、無料版はLevel3までです。 基本的に移動系のコマンドで達成可能です!

ヒント
  • モーションという機能を使います。コマンドやカウントという数字と組み合わせて使えます。
w #カーソル位置より前方の単語に移動
e  #カーソル位置より前方の単語の末尾に移動
b  #カーソル位置より後方の単語に移動

例えば、2wだと2単語前に進みます。


Vimチュートリアルはターミナルで起動するタイプのチュートリアルです。

$ vim-tutor

それぞれのコマンドに詳しい説明と練習問題があるため、自然に慣れることが可能です。

最後に

基本的な内容でしたが、以上となります!