Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

したいこと別に確認するviの使い方まとめ

$
0
0

自分がしょっちゅう忘れるから、メモ帳代わりの記事

vi概要

viとは?

unix系のOSに大体標準で入っているエディタ。コマンドモードと入力モードの2種類の状態がある。起動時はコマンドモードになっている。

モードとは?

  • コマンドモード: カーソルの移動やコピー貼り付けなどを行うためのモード(ファイルへの文字の追記はできない)
  • 入力モード: 文字を打ち込むモード(設定やOSによっては文字の削除が許されないこともある)

カーソルの移動1

キー移動方向
k
l
j
h

カーソルの移動2

キー移動位置
$行末に移動
^行頭(空白文字除く)に移動
0行頭に移動(オーではなくゼロなので注意)
G最終行に移動
1G1行目に移動(5Gと打つと5行目)

カーソルの移動3

キー移動位置
Ctrl + d半画面分下に移動
Ctrl + f1画面分下に移動
Ctrl + u半画面分上に移動
Ctrl + b1画面分上に移動

コマンドモードから入力モードへの切り替え

キー説明
aカーソルのいる次の文字から入力開始(apppendの略?)
iカーソルのいる前の文字から入力開始(insertの略?)
rカーソル上の文字を置換(replaceの略?このコマンドの後に文字を打ち込むと置換されたのちコマンドモードに戻る)
Rカーソル上の文字を置換して次の文字に移動していく(rと違って1文字打つとコマンドモードに戻るわけではない)
o今いる行の次の行から入力(新たに空白の行が挿入される)
O今いる行の前の行から入力(新たに空白の行が挿入される)

入力モードからコマンドモードへの切り替え

キー説明
esc(エスケープキー)入力モードからコマンドモードに切り替え

重要なコマンド達

キー説明
uやり直し
Ctrl + rやり直しの取り消し
:wファイルへの保存
:qviを閉じる
:wq保存して終了
:q!保存せず終了

コピー

キー説明
yy1行まるっとコピー
y$今カーソルがいる行から行末までコピー

切り取り(削除)

viでは切り取りと削除が同じコマンドなので注意

キー説明
dd1行まるっと切り取り(削除)
d$今カーソルがいる行から行末まで切り取り(削除)
x1文字切り取り(削除)

貼り付け

キー説明
p今カーソルいる次の行に貼り付け(新たに行が挿入される)
P今カーソルいる前の行に貼り付け(新たに行が挿入される)

検索

キー説明
/キーワード文字列検索(下方向に検索していく)
?キーワード文字列検索(上方向に検索していく)
n検索続行(今調べている方向にさらに検索)
N検索続行(今調べている方向とは逆方向にさらに検索)

置換

キー説明
:s/置換される文字列/置換する文字列/g今いる行でのみ置換を行う
:%s/置換される文字列/置換する文字列/gファイル内全域で置換を行う
:3,10s/置換される文字列/置換する文字列/g3行目から10行目の間でのみ置換を行う
:3,$s/置換される文字列/置換する文字列/g3行目から最終行の間で置換を行う

おまけ

キー説明
J今いる行と次の行を結合
数字 + コマンドコマンドをその数だけ繰り返す(例えば、5jとすると5行下にカーソルが進み、10xとすると10文字削除される)

Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>