vim 前半

学習したプラクティス

 

vim

vimvim入門 (ドットインストール)で勉強しました。

vimにはノーマル•入力•コマンド•ヴィジュアルの四つのモードがあり

それぞれ出来る事が違います。

モードの移動は

i

ノーマルモード→入力モード

 

:

ノーマルモード→コマンドモード

 

v

ノーマルモード→ビジュアルモード

 

esc

ノーマルモード以外→ノーマルモード

 

以下にモードごとに出来る内容をまとめていきます。

 

ノーマルモード

ノーマルモードではコマンドを用いたカーソルの移動や文字の削除が出来ます。

また、コピー&ペーストや検索•置換もノーマルモードで行う事が出来ます。

カーソルの移動は矢印キーでも出来るのですがノーマルモードでは、

f、b、gなどを用いる事で素早く移動する事が出来ます。

(かなモードになっていると、うまくいきません。)

f

行の次の単語に移動する

 

b

行の前の単語に移動する

 

ctr + f

次の画面に移動する

 

ctr + b

前の画面に移動する

 

gg

ファイルの先頭に移動する

 

shift + g

ファイルの末尾に移動する

 

f + アルファベット一文字

行のそれより後の、アルファベットと同じ文字に移動する

; で次の同じ文字に移動する

 

%(括弧の上で)

対応する括弧に移動する

 

^

行の最初に移動する

 

$

行の最後に移動する

 

x

カーソル位置の文字を消去する

 

dd

行単位でカットする

数字をつけた後にddを入力する事で複数行をまとめてカットできる

 

yy

行をコピーする

数字をつけた後にyyを入力する事で複数行をまとめてコピーできる

 

p

カットあるいはコピーした内容を貼付ける

 

/ 文字列

入力した文字列を検索する

nを押す事で下方向に検索して行ける

shift + n を押す事で上方向二検索して行ける

 

*

今カーソルがある位置の単語を下方向に検索して行く

 

#

今カーソルがある位置の単語を上方向に検索して行く

 

 

入力モード

入力モードでは文字を入力して行く事が出来ます

基本的にコーディングはこのモードでして行くと思います

コピー&ペースト等はノーマルモードで行います

 

 

コマンドモード

コマンドモードではvimの保存や終了などが行えます

ノーマルモードで : を入力するとコマンドモードに移る事が出来ますが、

この : はコマンドが終了するたびに入力する必要があります

(コマンドを入力して処理が終了した後は自動的にノーマルモードに移行する)

 

w

ファイルを保存します

スペースを一つ空けて新たなファイル名を入力する事で

別ファイルに保存する事が出来ます

 

q

vimを終了します

ファイルを保存する事無く終了すると警告が出ます

 

q!

vimでファイルを保存する事無く強制終了します

 

s/置換前の文字列/置換後の文字列 /

カーソルのある行の置換前の文字列を一つだけ置換後の文字列に変換する

 

s/置換前の文字列/置換後の文字列 /g

 カーソルのある行の全ての置換前の文字列を置換後の文字列に変換する

 

%s/置換前の文字列/置換後の文字列 /g

ファイル全体 の全ての置換前の文字列を置換後の文字列に変換する

 

%s/置換前の文字列/置換後の文字列 /g

確認をしながらファイル全体 の全ての置換前の文字列を置換後の文字列に変換する

 

 

ビジュアルモード

このモードではテキストの選択を行う事が出来ます。

まだ、テキストを選択した後の操作は勉強

 

v

文字単位で選択する

 

V

行単位で選択して行く

 

ctr + v

矩形で選択して行く事が出来る

 

gg → v → ahift + g 

全体選択をする

 

感想

普段はemacsのキーバインディングで作業しているのですが、

vimは結構多機能だなと思いました。

垂直に選択して行くなんてemacsにあったかな?

またemacsはキーの同時押しが多いのですが、vimは少ないですね。

指がつりにくそうですw

これからはvimを使う事も多くなってくると思うので少しずつ覚えて行きたいです。

 

これで前半は終了です。

残りの機能は後半に書いて行きます。