LoginSignup
4
0

Vim操作まとめ(入門)

Last updated at Posted at 2024-03-25

エンジニアとして一度は触れることがあるVimの操作について解説します。

普段はVScodeやJetBrains製,EclipseなどのIDEを使用することが多いですが、
なるべく手の動きを少なくしたり。マウスを使用しないようにコーディングをしたいと考えるエンジニアの中で今でも使用されているエディタになります。

現代では、IDEの性能が非常に高くなっているので、IDEのプラグインにVimを導入して
IDE上でVimライクなコーディングをして生産性を上げていくというのが最適なのではないかと個人的に感じています。

※ちなみに、Vimの進化版としてNeoVimがあります。この記事ではNeoVimを使用しておりますが、Vimと操作は基本的に同じになります。

最低限必要だと思われるコマンドをまとめました。

基本操作(モードの切り替え)

初心者は戸惑うことが多いですが、Vimにはモードの切り替えという独特な概念があります。モードごとで操作できる内容に違いがあります。

初心者的には違いは以下だと理解しておく程度で問題ないと思います。

  • 挿入モード:文字やコードを打つことができます
  • ノーマルモード:ファイルの中の移動をすることができます
コマンド 内容
vim 起動
i 挿入モード(Insert)
esc ノーマルモード(Normal)

以下では、以下を実施しています。

  1. Vim(NeoVim)の起動
  2. 挿入モードに切り替えて、hello worldを入力
  3. ノーマルモードに切り替える

Kapture-2024-03-24-at-22.11.02.gif

移動(1)

慣れるまで非常に戸惑うコマンドになります。
ここで挫折する方多いですが、ぜひ慣れてください。

私はこのサイトを使用してファイル内の移動の練習をしました。
https://vimate.jp/lessons/vimmer-01

ノーマルモードで実施します。

コマンド 内容
k 上に移動
j 下に移動
h 左に移動
l 右に移動

以下では、以下を実施しています。

k j h lを使ってvimの中で移動をしています。

Kapture-2024-03-24-at-22.33.50.gif

移動(2)

コマンド 内容
:5 5行目に移動(数字を変えて好きな行に移動可)
0 先頭に移動

上記のような便利な機能もあります。

Kapture-2024-03-24-at-22.42.49.gif

保存

保存の仕方にも様々な種類がありますが、以下が用意されています。

コマンド 内容
:w ファイル名 名前をつけて保存
:w 上書き保存
:q 編集終了
:q! 保存しないで編集終了
:wq 保存して終了

編集

ノーマルモードで実施します。

コマンド 内容
a 次の文字から挿入モード

Kapture-2024-03-24-at-22.48.29.gif

削除

ノーマルモードで実施します。

コマンド 内容
x 1文字のみ削除
dw 1単語の削除(削除したい単語の先頭に移動してから実施)
u undo(元に戻す)
dd 1行切り取り
2 dd 2行切り取り

Kapture-2024-03-24-at-23.30.18.gif

コピー & ペースト

ノーマルモードで実施します。

コマンド 内容
yy 1行コピー
2 yy 2行コピー
p(小文字) 下にペースト
P(大文字) 現在の行にペースト

Kapture-2024-03-24-at-23.59.04.gif

検索と置き換え

ノーマルモードで実施します。

コマンド 内容
/{検索をしたい文字} 検索
n 次の検索結果に移動
N(大文字) 前の検索結果に移動

以下では、文字を検索して、検索結果を移動しています。

Kapture-2024-03-25-at-00.33.52 (1).gif

コマンド 内容
:%s/検索する文字/一括置換したい文字/g 一括置換
:%s/検索する文字/一括置換したい文字/gc 確認しながら置換

以下では、文字を検索して、上記2種類の一括置換をしています。

Kapture-2024-03-25-at-00.54.13.gif

空白行の挿入

ノーマルモードの状態

コマンド 内容
o(小文字) 選択している行の下に空白行を挿入
O(大文字) 選択している行に空白行を挿入

Kapture-2024-03-26-at-00.49.46.gif

Visualモード(複数行のコピー&ペースト)

少々応用になりますが、Vimにはビジュアルモードというモードも存在します。
ノーマルモードの状態で「v」を押してVisualモードへ変更します。

コマンド 内容
hjklで範囲指定 + y 複数行を選択してコピー

pコマンドを使用すれば、ペーストすることができます。

Kapture-2024-03-26-at-00.58.36.gif

Visualモード(インデント操作)

ノーマルモードの状態で「v」を押してVisualモードへ変更

hjklで複数行を選択した状態で以下のコマンドを実施します。

コマンド 内容
shift + > 右にインデント移動
shift + < 左にインデント移動

Kapture-2024-03-26-at-01.07.11.gif

4
0
0

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
4
0