LoginSignup
3

More than 3 years have passed since last update.

Vi(Vim)の基本操作メモ

Last updated at Posted at 2019-08-21

Viの基本操作について、個人的によく使う操作方法をメモします。

起動

$ vi ファイル名

入力モードについて

viはコマンドモードで立ち上がる (コマンドモードについて下記に記載)。
文字を入力する場合は、入力モードに移る以下キーを入力する。

[a]   ...カーソルの右から入力開始(a: Add の意味)
[A]   ...行末から入力開始
[i]   ...カーソルの左から入力開始(i: Insert の意味)
[I]   ...行頭から入力開始
[o]   ...現在の行の下に1行挿入し、その行頭から入力開始
[O]   ...現在の行の上に1行挿入し、その行頭から入力開始

コピー・貼り付けについて、入力モードでは何か他のテキストの文字列、外部サイトの文字列をコピーし、そのまま貼り付けることができる。

コマンドモードについて

escキーでコマンドモードに移る。ファイル・文字列操作、保存等が可能。

カーソル移動

1文字移動

基本的に矢印キーは使うなと昔上司に言われました。でも使ってもいいと思いますが…

左: [←キー] or [h] or [BackSpace]
右: [→キー] or [l] or [Space]
上: [↑キー] or [k]
下: [↓キー] or [j]

単語ごとに移動

[w]    ...1語次へ
[b]    ...1語前へ

削除・貼り付け

[x]    ...1文字削除。
[yy]   ...1行コピーしクリップボードへ格納する。
[dd]   ...1行切り取りしクリップボードへ格納する、または1行削除。
[p]    ...クリップボードの内容をカーソル行の下の行に貼り付ける。

行番号

:set number    ...行番号を表示
:se nu         ...行番号を表示(上に同じ)
::set nonumber 
:se nonu
:行番号        ...行番号を指定して移動

検索

[/]文字列    ...カーソルの後方に検索を行う
[?]文字列    ...カーソルの前方に検索を行う
[n]文字列    ...次の検索該当文字列へ
[N]文字列    ...前の検索該当文字列へ

置換

:s/文字列1/文字列2/    ...カーソル行で最初の「文字列1」のみを「文字列2」に置換する
:s/文字列1/文字列2/g    ...カーソル行の「文字列1」を全て「文字列2」に置換する

取り消し

[u]    ...直前の操作をやめる(u: Undo の意味)
[U]    ...行全体に操作を取りやめる

ビジュアルモード

ctrl + V でビジュアルモードに遷移。矩形選択しxで選択箇所の削除など可能。

終了処理

終了
:q    …書込みを行わず終了(quitの意味)
:q!    ...書込みを行わず強制終了
:wq    ...書込み後終了
:wq!    ...書込み後強制終了

色分けされていたほうが見やすいので、Vimを推奨されている方もいますが、
基本的な操作方法についてはViもVimも同じです。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3