Linuxの世界ではおなじみの「viエディタ」。でも、初めて使うときには「どこを押したら入力できるの?」「なぜか保存ができない…」といった戸惑いの声もよく聞かれます。
そもそもviは、マウスを使わずにキーボードだけで操作するエディタなので、最初はちょっぴり独特に感じるかもしれません。でも大丈夫。慣れてしまえば、他のエディタでは物足りなく感じるくらい、快適な操作ができるようになります。
この記事では、viエディタを初めて使う方に向けて、基本的な考え方や操作方法を、ひとつずつやさしく丁寧に解説しています。途中で「あれ? これどうやるんだっけ?」となったときのために、すぐ確認できる早見表もたっぷりご用意しました。
また、ちょっとした工夫や知っておくと便利な小技も紹介していますので、viに少し慣れてきた方や、もう一度使い方を見直したいという中級者の方にもきっと役立つはずです。
「とりあえず基本操作だけ押さえたい」「保存と終了のやり方を知りたい」「便利なコマンドを一覧で見たい」など、さまざまな目的で読んでいただける内容になっています。
このガイドを通して、viの世界が少しでも身近に、そして楽しく感じてもらえたらうれしいです。
viエディタとは?基本と特徴をやさしく解説
viエディタは、LinuxやUNIXといった環境で昔から広く使われている、とても有名なテキストエディタです。特徴的なのは、マウスを使わずにキーボード操作だけで編集ができること。コマンドを使って操作するため、最初は少し戸惑うかもしれませんが、慣れてくると非常にスピーディーかつ効率よく作業できるようになります。
viは、エンジニアやサーバー管理者など、プロの現場でも日常的に使われており、「一度覚えれば一生もの」と言われるほど信頼性の高いエディタです。また、ファイルを開いたり保存したりといった基本操作はもちろん、検索・置換・マクロの実行まで、さまざまな高度な編集作業もこなせるのが魅力です。
ところで、「vim(ヴィム)」という名前を聞いたことがある方もいらっしゃるかもしれません。vimとは「vi improved」の略で、viの拡張版ともいえる存在です。viとほとんど同じ操作で使える上、より多機能になっているため、現在では多くのLinux環境でデフォルトのエディタとしてvimが使われていることも多いです。
この記事では、viとvimの両方に共通する基本操作や特徴を、やさしく丁寧に紹介していきます。viにまったく触れたことがない方も、以前に使って挫折してしまったという方も、この機会にもう一度チャレンジしてみてくださいね。
【基本操作一覧表】最初に覚えたいviコマンドまとめ
viエディタにはたくさんのコマンドがありますが、最初から全部を覚える必要はありません。まずはよく使う基本操作から、少しずつ慣れていくのが一番の近道です。以下にご紹介するコマンドは、viの操作を始める上で最低限覚えておきたい大切なものばかりです。
vi ファイル名
:ファイルを開くときに使います。新規ファイルでも既存ファイルでも、このコマンドで編集が始まります。i
:入力モードに切り替えます。これを押すことで、文字を自由に入力できる状態になります。覚えておきたいのは「今は入力できるモードかどうか」を意識することです。:w
:編集中の内容を保存します。保存しないと変更が失われるので、こまめに使うのがおすすめです。:q
:編集を終了してviを閉じます。保存済みの状態であれば、これだけでスムーズに終了できます。:wq
:保存してから終了するコマンドです。いわば:w
と:q
のセットのような使い方です。:q!
:変更を保存せずに終了したいときに使います。間違って編集してしまった場合などにとても便利です。
これらの操作は、まさにviの「基本のき」。最初は少し戸惑うこともあるかもしれませんが、何度か使っているうちに、自然と指が覚えてくれます。小さなステップでも確実に身についていくので、焦らずゆっくり進めていきましょうね。
viの「モード」ってなに?仕組みと切り替え方法
viを使ううえでまず知っておきたいのが「モード」の存在です。他のエディタではあまり見られない仕組みなので、初めて触れる方は最初にここで戸惑いやすいかもしれません。でも、モードの役割を理解すれば、操作の流れがぐっとスムーズになります。
viには大きく分けて3つのモードがあります。
- ノーマルモード:viを起動した直後や、Escキーを押した後に入る基本のモードです。ここではカーソル移動や、文字の削除・コピー、ペーストなどができます。操作の起点となる場所なので、何かトラブルがあったときはまずEscキーを押してこのモードに戻るのがおすすめです。
- 挿入モード:実際に文字を入力するときに使うモードです。ノーマルモードで
i
(insert)やa
(append)を押すことで切り替わります。この状態でキーボードを打つと、普通のエディタのように文字を打ち込めるようになります。入力が終わったら、Escキーでノーマルモードに戻ります。 - コマンドモード:ファイルの保存や終了、検索や置換など、特別な操作を行いたいときに使うモードです。ノーマルモードで
:
を入力するとコマンドラインが表示され、そこで:w
や:q!
などを入力することができます。
この3つのモードは、それぞれの役割がはっきり分かれていて、切り替えながら操作していくのがviの特徴です。
最初のうちは「今自分がどのモードにいるのか分からない…」と感じることもあると思いますが、慣れてくると手が自然に覚えていきます。
困ったときはまずEscキーを押してノーマルモードに戻る、というのがひとつの安心ポイントです。
カーソル移動のコマンド一覧|上下左右・単語・行単位も
viでは、基本的に矢印キーではなく、特定の文字キーを使ってカーソルを移動させます。最初はこの操作に少し違和感を感じるかもしれませんが、手をホームポジションに置いたまま操作できるため、慣れるととても効率的です。
以下は、基本的な移動コマンドです。
h
:カーソルを左に1文字分動かします。l
:右に1文字分移動します。j
:下の行へ移動します。k
:上の行へ戻ります。
これらの4つのキーは、viのカーソル移動の基本中の基本です。キーボードの中央付近に集まっているので、視線をあまり動かさずに作業できるのがメリットです。
さらに、文章内を素早く移動したいときには、以下のようなコマンドも役立ちます。
w
:次の単語の先頭にジャンプします。英文などでは単語単位での編集に便利です。b
:前の単語の先頭に戻ります。前の文節を直したいときに使えます。0
(ゼロ):行の先頭に移動します。インデント調整やコメントの編集時に便利です。$
:行末に移動します。末尾に追記したいときや文の確認に役立ちます。
慣れてくると、これらのコマンドを組み合わせて、ページ内を自由自在に移動できるようになります。たとえば、5j
と入力すると5行下へ一気にジャンプできますし、3w
なら3単語先へ移動といったことも可能です。
効率よくテキストを編集するためには、カーソル移動を素早くこなすことが重要です。まずはゆっくりでも構いませんので、自分の手で何度も繰り返し使ってみましょう。
編集操作のコマンド一覧|削除・コピー・貼り付けなど
viを使いこなすためには、編集操作の習得が欠かせません。削除やコピー、貼り付けといった作業は、ちょっとした修正をするときにも大変便利です。ここでは、特によく使われる基本的な編集操作をご紹介します。
x
:カーソル上の1文字を削除します。文字の修正時によく使います。dd
:現在の行全体を削除します。複数行削除したいときは、3dd
のように数値を前につけると3行削除なども可能です。yy
:現在の行をコピー(ヤンク)します。この操作を行った後にp
を使えば、同じ内容を別の場所に貼り付けることができます。p
:コピーした内容を貼り付けます。行の下に挿入されるので、貼り付けたい位置をよく確認しましょう。u
:直前の操作を取り消します(アンドゥ)。誤って削除や変更をしてしまったときに役立ちます。
さらに、以下のようなコマンドも知っておくと編集作業がよりスムーズになります:
P
:貼り付け(プット)の際、行の上に挿入する場合に使用します。d$
:カーソル位置から行末までを削除します。y0
:カーソル位置から行頭までをコピーします。
これらの操作は、繰り返し使うことで自然と指が覚えてくれます。まずはひとつずつ試してみて、自分の作業スタイルに合った使い方を見つけてくださいね。
検索・置換をマスターしよう|正規表現にも対応
文章が長くなればなるほど、目的の単語をすばやく見つけたり、複数の箇所を一括で修正したりする場面が出てきます。そんなときにとても便利なのが、viの「検索」と「置換」の機能です。
まずは検索から見ていきましょう。viでは、以下のような方法で文字列を探すことができます。
/文字列
:指定した文字列を、カーソル位置から下方向に検索します。検索後は、見つかった位置に自動でジャンプします。?文字列
:逆に、カーソルから上方向に向かって検索を行います。n
:前回の検索と同じ方向で、次の一致箇所にジャンプします。N
:前回の検索と反対方向で、前の一致箇所に戻ります。
また、置換についてもviでは柔軟な操作が可能です。
:s/古い文字/新しい文字/
:現在の行にある最初の一致箇所を置換します。:s/古い文字/新しい文字/g
:現在の行に含まれるすべての一致箇所を置換します。:%s/古い文字/新しい文字/g
:ファイル全体にわたってすべて置換します。:%s/古い文字/新しい文字/gc
:全体を置換する際に、1件ずつ確認(yes/no)しながら進めることができます。
たとえば、間違えた表記や英単語、変数名を一括で修正したいときにはとても重宝します。
さらに慣れてくると、正規表現(正則表現)を使った検索・置換にもチャレンジしてみましょう。たとえば ^abc
は「abcで始まる行」、abc$
は「abcで終わる行」を意味します。
正規表現を使えば、特定のパターンにマッチする複雑な置換も簡単にこなせるようになります。はじめは少し難しく感じるかもしれませんが、慣れればとても強力なツールになりますので、ぜひ挑戦してみてくださいね。
作業効率がぐんと上がる!便利なviの小技集
viには、一見地味だけれど作業がとても快適になる小技がたくさんあります。以下のテクニックを活用することで、編集スピードがぐんと上がり、作業のストレスも減ります。
:set number
:行番号を表示します。プログラミングや長文編集時に、特定の行をすぐに見つけられてとても便利です。:set paste
:貼り付けモードをオンにします。外部からコピーしたテキストを貼り付けるとき、インデントの崩れを防いでくれる心強い設定です。貼り付けが終わったら:set nopaste
で元に戻すのを忘れずに。.
(ドット):直前の操作をそのまま繰り返すコマンドです。同じ操作を複数箇所に繰り返したいときに、何度も同じコマンドを打ち直さなくて済みます。Ctrl + o
:挿入モード中に一時的にノーマルモードの操作を行うことができます。たとえば入力中にカーソル移動をしたいときなどに便利です。Ctrl + ^
:最後に編集していたファイルと今のファイルをすばやく切り替えられるショートカット。複数ファイルを編集しているときに覚えておくと作業効率がアップします。:e!
:現在のファイルを保存せずに再読み込みします。誤って編集したときなどに「元に戻す」ための裏ワザです。
これらのちょっとした工夫を取り入れることで、viがますます使いやすくなります。慣れないうちはひとつずつ試してみて、「おっ、これは便利!」と思えるものを自分のスタイルに取り入れていくと良いですよ。
viでつまずきやすいポイントと対処法
viは独特な操作体系を持っているため、最初のうちは誰でも戸惑ってしまうものです。ここでは、初心者の方がよくつまずくポイントと、それぞれの解決方法について詳しく見ていきましょう。
- 文字が打てない? → viを開いてもすぐに文字が入力できないのは、viが「ノーマルモード」で起動するからです。文字を入力したいときは、まず
i
を押して「挿入モード」に切り替える必要があります。挿入モードに入ると、画面左下に「– INSERT –」などと表示されることもあります。 - 保存できない? → 編集を終えて保存したいときは、まずEscキーでノーマルモードに戻り、そのあと
:w
と入力してEnterを押します。「:」はコロンです。うまくいかないときは、ノーマルモードに戻れているかどうかを再確認しましょう。 - 強制終了したい → 編集した内容を保存せずに終了したい場合は、Escキーでノーマルモードに戻ってから
:q!
を入力してEnterを押します。これは「quit without saving(保存せずに終了)」の意味です。viで思わぬ変更をしてしまったときにも便利です。 - 何もできなくなって焦ったときは? → どのモードにいるか分からなくなったら、とにかく一度Escキーを数回押してノーマルモードに戻りましょう。そこから改めて操作を始めると、落ち着いて対処しやすくなります。
はじめはうまくいかなくても大丈夫。viは「慣れれば最強」と言われるツールです。操作に迷ったときには焦らず、基本に立ち返って少しずつ確認していくことが上達への近道です。
まとめ|viの操作に自信がつく活用術
viエディタは、最初の印象こそ「難しそう…」「とっつきにくい…」と感じられがちですが、一度その基本をつかんでしまえば、まるで身体の一部のように使いこなせる頼もしいツールに変わります。
最初は数文字入力するだけでも緊張してしまうかもしれません。でも大丈夫です。コマンドやモード切り替えなど、基本操作を一つひとつ丁寧に覚えていけば、自然とviに対する苦手意識も薄れていきます。
そして、慣れてきたらぜひ「早見表」を見ながら、コピーや検索、小技の操作などにも少しずつチャレンジしてみてください。「できること」が増えるたびに、Linux環境での作業がますます楽しく、効率よく感じられるようになるはずです。
何度も繰り返し使う中で、自分なりの使い方やお気に入りのコマンドもきっと見つかります。それこそが、viと仲良くなる最大の近道です。
あなたのLinuxライフが、viエディタとともにより自由に、より快適に広がっていくことを願っています。