Vim
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*Vim とは [#y92b1238]
-Vi Improved
-Linuxで利用できる[[テキストエディタ]]
-viエディタを機能拡張したもの
-コマンドモードと入力モードを切り替えながら使う
*viの操作 [#fe4a55dc]
**viの起動 [#w5351f73]
-vi <file-name> ※ファイル名を指定して起動
--vi -R <file-name> ※読み取りモードで起動(編集不可)
-vi ※空の新規ファイルを開いて起動
**ファイルの操作(Exコマンド) [#q804cb81]
-保存
:w
:w <file-name>
-終了
:q ※変更がある場合は保存するか確認する
--保存しないで終了
:q!
--保存して終了
:wq
:x
-ファイルを開く
:e <file-name>
-最後に保存した状態に復帰する
:e!
-指定したファイルの内容をカレント行の下に読み込む
:r <file-name>
-シェルコマンドを実行
--viを終了しないでシェルコマンドを実行
:!<command>
--シェルコマンドを実行して実行結果をカレント行の下に挿入...
:r!<command>
**ファイルの操作 [#qfb01985]
-保存して終了
ZZ ※:wqと同じ
**カーソルの操作 [#g38435a1]
-上下左右 ※カーソルキー(↑↓←→)も同じ
j ※上に移動
k ※下に移動
h ※左に移動
l ※右に移動
--数字に続けて入力すると指定した回数分繰り返す
2h ※2文字左に移動
-単語
b ※前の単語の先頭
e ※単語の末尾
w ※次の単語の先頭
-カーソル行
0 ※先頭
^ ※先頭(先頭が空白の場合は、先頭の文字)
$ ※末尾
-カーソル行の前行/次行
- ※前の行の先頭
[Enter] ※次の行の先頭
-画面の最上行/下行
H ※最上行
M ※中央行
L ※最下行
-ファイルの先頭/末尾
--先頭
gg
:0
--末尾
G
:$
-指定した行
数字 ※カーソル行から指定した数
:数字 ※行番号
数字G ※ファイルの先頭行番号
-括弧の開始/終了
% ※カーソル位置の括弧に対応する括弧の開始/終了
**画面の操作 [#p20f30ef]
-1画面
Ctrl+b ※上
Ctrl+f ※下
-半画面
Ctrl+u ※上
Ctrl+d ※下
**文字の編集 [#g0c58065]
***編集の操作 [#r2562a3d]
-元に戻す
u
-やり直し
Ctrl+r
-直前の操作の繰り返し
.
***文字の挿入(入力モード) [#xf6e6836]
-カーソル位置で入力モード
i ※カーソル位置の左
a ※カーソル位置の右
-行の先頭/末尾で入力モード
I ※カーソル行の先頭
A ※カーソル行の末尾
-行を追加して入力モード
o ※カーソル行の下に行を追加
O ※カーソル行の上に行を追加
***文字の上書き [#o4171c32]
-1文字のみ
r[char] ※カーソル位置の1文字を、入力した1文字に
-入力した文字列に ※Escで文字列の入力を終了
R[string] ※カーソル位置の文字から右に、入力した文字列と...
s[string] ※カーソル位置の1文字を、入力した文字列に
S[string] ※カーソル行全体を入力した文字列
***文字の削除 [#v7c30d6c]
-1文字を削除
x ※カーソル位置の1文字
X ※カーソル位置の左の1文字
dl ※「x」と同じ
--数字に続けて入力すると指定した回数分繰り返す
3x ※カーソル位置の文字を含む右の3文字
-単語を削除
dw ※カーソル位置の単語を削除
-行を削除
dd ※カーソル行全体を削除(改行含む)
--数字に続けて入力すると指定した回数分繰り返す
3dd ※カーソル行を含む下の3行
-カーソル位置から同じカーソル行の指定した場所までを削除
--行頭/行末まで
d^ ※行頭までを削除
d$ ※行末までを削除
--左右の最も近いキー入力した文字までを削除
df[char] ※順方向(右)
dF[char] ※逆方向(左)
**検索 [#s34f8e0f]
***文字列 [#t838bfbd]
-キー入力で指定した文字列を検索
/[string] ※下方向
?[string] ※上方向
-カーソル位置の文字列を検索
* ※下方向
# ※上方向
-次の文字列を検索する
n ※順方向
N ※逆方向
***文字 [#p53eb2bd]
-カーソル行のみ
f[char] ※順方向(右)
F[char] ※逆方向(左)
***文字列の置換 [#e572c53a]
-置換対象:カーソル行のみ
:s/[検索文字]/[置換文字]/ ※最初に検出した文字列のみ
:s/[検索文字]/[置換文字]/g ※全ての文字列
-置換対象:全ての行
:%s/[検索文字]/[置換文字]/ ※最初に検出した文字列のみ
:%s/[検索文字]/[置換文字]/g ※全ての文字列
-置換対象は指定した範囲の行
:[開始行番号],[終了行番号]s/[検索文字]/[置換文字]/g
-検索文字列が複数あった場合
--末尾に"g"なしは、最初に検出した文字列のみ
--末尾に"g"ありは、全ての文字列
**コピー、削除、ペースト [#s91e4d58]
-編集内容を指定する1文字を入力後に、カーソル操作で対象範...
-編集内容のどれを指定しても、対象範囲で指定した対象の値は...
***編集内容を指定 [#bc90533b]
y ※コピー
d ※削除
c ※削除(削除後に入力モード)
***対象範囲を指定(行単位の操作) ※編集内容がコピー(y)の...
-編集内容と同じ文字を2回入力した場合は、カーソル行全体を...
yy
-カーソル操作で対象範囲を指定
yj ※カーソル行と下の1行
yk ※カーソル行と上の1行
y数値j ※カーソル行と、下の指定した数分の行
y数値k ※カーソル行と、下の指定した数分の行
***対象範囲を指定(文字単位の操作) ※編集内容がコピー(y)...
-カーソル操作で対象範囲を指定
yh ※カーソル位置の左1文字
yl ※カーソル位置の右1文字
y数値h ※カーソル位置の左、指定した数分の文字
y数値l ※カーソル位置の右、指定した数分の文字
y0 ※カーソル位置の左、全ての文字(「y^」と同じ)
y$ ※カーソル位置の右、全ての文字
***ペースト [#le68182c]
-行単位の操作の場合
p ※カーソル行の下にペースト
P ※カーソル行の上にペースト
-文字単位の操作の場合
p ※カーソル位置の右にペースト
P ※カーソル位置の左にペースト
-複数個のペースト
--pまたはPの前に数値を指定すると、指定した数分をペースト...
***補足 [#d5959b96]
cc[string] ※カーソル行全体を削除(改行は削除せず、入力...
cw[string] ※
cf[char] [string] ※
D ※「d$」と同じ。カーソル位置の右、全ての文字を削除
C ※「c$」と同じ。カーソル位置の右、全ての文字を削除(削...
**範囲指定 [#t1e3b242]
***範囲指定(ビジュアルモード) [#ob979e0d]
-v ※ビジュアルモードに切り替わり、カーソル操作で範囲を指...
--d ※指定した範囲の文字を削除
***範囲指定(マーク) [#e1fcc515]
-下記操作による範囲指定後に、各編集の操作を実施
++範囲の開始行で:ms
++範囲の終了行で:me
-複数行のコピー [#a4a4bf1b]
++「:'s,'ey」と入力し、Enter押下
++貼り付け先で:Shift + p
-複数行の削除 [#a69d6aff]
++「:'s,'ed」と入力し、Enter押下
-範囲指定の置換 [#d307a0c6]
++「:'s,'es/置換される文字列/置換する文字列/g」と入力し、...
**入力補完 [#tc466184]
Ctrl+p
**設定 [#rc38b1c0]
***viを起動中のみ(終了すると設定が消える) [#x909620a]
-行番号
--表示
:set number
:set nu
--非表示
:set nonumber
:set nonu
-タブ幅
:set ts=<number>
***常時の設定 [#j70f79ce]
-設定ファイル
--~/.exrc ※viエディター
--~/.vimrc ※Vim
-設定ファイルへの記述
--コマンドの頭":"を除いた状態で記述する
*チュートリアル [#s130a47a]
-vimtutor
--viエディタの操作をチュートリアルで学習できる
--パッケージ
---vim-enhanced パッケージ ※CentOS
---vim パッケージ ※Ubuntu
*関連用語 [#k34c6f0c]
-[[Linuxコマンド]]
-[[Linuxのファイル編集]]
-[[Elvis]]
終了行:
*Vim とは [#y92b1238]
-Vi Improved
-Linuxで利用できる[[テキストエディタ]]
-viエディタを機能拡張したもの
-コマンドモードと入力モードを切り替えながら使う
*viの操作 [#fe4a55dc]
**viの起動 [#w5351f73]
-vi <file-name> ※ファイル名を指定して起動
--vi -R <file-name> ※読み取りモードで起動(編集不可)
-vi ※空の新規ファイルを開いて起動
**ファイルの操作(Exコマンド) [#q804cb81]
-保存
:w
:w <file-name>
-終了
:q ※変更がある場合は保存するか確認する
--保存しないで終了
:q!
--保存して終了
:wq
:x
-ファイルを開く
:e <file-name>
-最後に保存した状態に復帰する
:e!
-指定したファイルの内容をカレント行の下に読み込む
:r <file-name>
-シェルコマンドを実行
--viを終了しないでシェルコマンドを実行
:!<command>
--シェルコマンドを実行して実行結果をカレント行の下に挿入...
:r!<command>
**ファイルの操作 [#qfb01985]
-保存して終了
ZZ ※:wqと同じ
**カーソルの操作 [#g38435a1]
-上下左右 ※カーソルキー(↑↓←→)も同じ
j ※上に移動
k ※下に移動
h ※左に移動
l ※右に移動
--数字に続けて入力すると指定した回数分繰り返す
2h ※2文字左に移動
-単語
b ※前の単語の先頭
e ※単語の末尾
w ※次の単語の先頭
-カーソル行
0 ※先頭
^ ※先頭(先頭が空白の場合は、先頭の文字)
$ ※末尾
-カーソル行の前行/次行
- ※前の行の先頭
[Enter] ※次の行の先頭
-画面の最上行/下行
H ※最上行
M ※中央行
L ※最下行
-ファイルの先頭/末尾
--先頭
gg
:0
--末尾
G
:$
-指定した行
数字 ※カーソル行から指定した数
:数字 ※行番号
数字G ※ファイルの先頭行番号
-括弧の開始/終了
% ※カーソル位置の括弧に対応する括弧の開始/終了
**画面の操作 [#p20f30ef]
-1画面
Ctrl+b ※上
Ctrl+f ※下
-半画面
Ctrl+u ※上
Ctrl+d ※下
**文字の編集 [#g0c58065]
***編集の操作 [#r2562a3d]
-元に戻す
u
-やり直し
Ctrl+r
-直前の操作の繰り返し
.
***文字の挿入(入力モード) [#xf6e6836]
-カーソル位置で入力モード
i ※カーソル位置の左
a ※カーソル位置の右
-行の先頭/末尾で入力モード
I ※カーソル行の先頭
A ※カーソル行の末尾
-行を追加して入力モード
o ※カーソル行の下に行を追加
O ※カーソル行の上に行を追加
***文字の上書き [#o4171c32]
-1文字のみ
r[char] ※カーソル位置の1文字を、入力した1文字に
-入力した文字列に ※Escで文字列の入力を終了
R[string] ※カーソル位置の文字から右に、入力した文字列と...
s[string] ※カーソル位置の1文字を、入力した文字列に
S[string] ※カーソル行全体を入力した文字列
***文字の削除 [#v7c30d6c]
-1文字を削除
x ※カーソル位置の1文字
X ※カーソル位置の左の1文字
dl ※「x」と同じ
--数字に続けて入力すると指定した回数分繰り返す
3x ※カーソル位置の文字を含む右の3文字
-単語を削除
dw ※カーソル位置の単語を削除
-行を削除
dd ※カーソル行全体を削除(改行含む)
--数字に続けて入力すると指定した回数分繰り返す
3dd ※カーソル行を含む下の3行
-カーソル位置から同じカーソル行の指定した場所までを削除
--行頭/行末まで
d^ ※行頭までを削除
d$ ※行末までを削除
--左右の最も近いキー入力した文字までを削除
df[char] ※順方向(右)
dF[char] ※逆方向(左)
**検索 [#s34f8e0f]
***文字列 [#t838bfbd]
-キー入力で指定した文字列を検索
/[string] ※下方向
?[string] ※上方向
-カーソル位置の文字列を検索
* ※下方向
# ※上方向
-次の文字列を検索する
n ※順方向
N ※逆方向
***文字 [#p53eb2bd]
-カーソル行のみ
f[char] ※順方向(右)
F[char] ※逆方向(左)
***文字列の置換 [#e572c53a]
-置換対象:カーソル行のみ
:s/[検索文字]/[置換文字]/ ※最初に検出した文字列のみ
:s/[検索文字]/[置換文字]/g ※全ての文字列
-置換対象:全ての行
:%s/[検索文字]/[置換文字]/ ※最初に検出した文字列のみ
:%s/[検索文字]/[置換文字]/g ※全ての文字列
-置換対象は指定した範囲の行
:[開始行番号],[終了行番号]s/[検索文字]/[置換文字]/g
-検索文字列が複数あった場合
--末尾に"g"なしは、最初に検出した文字列のみ
--末尾に"g"ありは、全ての文字列
**コピー、削除、ペースト [#s91e4d58]
-編集内容を指定する1文字を入力後に、カーソル操作で対象範...
-編集内容のどれを指定しても、対象範囲で指定した対象の値は...
***編集内容を指定 [#bc90533b]
y ※コピー
d ※削除
c ※削除(削除後に入力モード)
***対象範囲を指定(行単位の操作) ※編集内容がコピー(y)の...
-編集内容と同じ文字を2回入力した場合は、カーソル行全体を...
yy
-カーソル操作で対象範囲を指定
yj ※カーソル行と下の1行
yk ※カーソル行と上の1行
y数値j ※カーソル行と、下の指定した数分の行
y数値k ※カーソル行と、下の指定した数分の行
***対象範囲を指定(文字単位の操作) ※編集内容がコピー(y)...
-カーソル操作で対象範囲を指定
yh ※カーソル位置の左1文字
yl ※カーソル位置の右1文字
y数値h ※カーソル位置の左、指定した数分の文字
y数値l ※カーソル位置の右、指定した数分の文字
y0 ※カーソル位置の左、全ての文字(「y^」と同じ)
y$ ※カーソル位置の右、全ての文字
***ペースト [#le68182c]
-行単位の操作の場合
p ※カーソル行の下にペースト
P ※カーソル行の上にペースト
-文字単位の操作の場合
p ※カーソル位置の右にペースト
P ※カーソル位置の左にペースト
-複数個のペースト
--pまたはPの前に数値を指定すると、指定した数分をペースト...
***補足 [#d5959b96]
cc[string] ※カーソル行全体を削除(改行は削除せず、入力...
cw[string] ※
cf[char] [string] ※
D ※「d$」と同じ。カーソル位置の右、全ての文字を削除
C ※「c$」と同じ。カーソル位置の右、全ての文字を削除(削...
**範囲指定 [#t1e3b242]
***範囲指定(ビジュアルモード) [#ob979e0d]
-v ※ビジュアルモードに切り替わり、カーソル操作で範囲を指...
--d ※指定した範囲の文字を削除
***範囲指定(マーク) [#e1fcc515]
-下記操作による範囲指定後に、各編集の操作を実施
++範囲の開始行で:ms
++範囲の終了行で:me
-複数行のコピー [#a4a4bf1b]
++「:'s,'ey」と入力し、Enter押下
++貼り付け先で:Shift + p
-複数行の削除 [#a69d6aff]
++「:'s,'ed」と入力し、Enter押下
-範囲指定の置換 [#d307a0c6]
++「:'s,'es/置換される文字列/置換する文字列/g」と入力し、...
**入力補完 [#tc466184]
Ctrl+p
**設定 [#rc38b1c0]
***viを起動中のみ(終了すると設定が消える) [#x909620a]
-行番号
--表示
:set number
:set nu
--非表示
:set nonumber
:set nonu
-タブ幅
:set ts=<number>
***常時の設定 [#j70f79ce]
-設定ファイル
--~/.exrc ※viエディター
--~/.vimrc ※Vim
-設定ファイルへの記述
--コマンドの頭":"を除いた状態で記述する
*チュートリアル [#s130a47a]
-vimtutor
--viエディタの操作をチュートリアルで学習できる
--パッケージ
---vim-enhanced パッケージ ※CentOS
---vim パッケージ ※Ubuntu
*関連用語 [#k34c6f0c]
-[[Linuxコマンド]]
-[[Linuxのファイル編集]]
-[[Elvis]]
ページ名: