これからvimを使い始める人のための便利な使い方Tips


 

3分動画のドットインストールでvimの動画をすべて見たので自分なりに知らなかったことなどをまとめてみます。vimは以前からサーバを操作するときにconfファイルの編集などで使っていました。今後はメインのエディタとして使っていけるように色々便利なコマンドなどを勉強していこうと思います。

コマンドモード

:e [file]:ファイルを開く
:w [file]:ファイル名をつけて保存

 
ノーマルモード

w / b :単語単位の移動
^: 行頭に移動
$: 行末へ移動
f  [文字]: 文字へ飛ぶ。; で次の文字へ飛べる
%(カッコの上で):対応するカッコへ飛ぶ

 
指定行へ移動

[行番号]gg

 
検索について

* / # : 今カーソルが合う位置の単語を検索 (* は前方へ #は後方へ)

 
置換について

コマンドモードから
:s/検索前/置換後 :箇所のみ置換
:s/検索前/置換後/g :行中の検索前をすべて置換する
:%s/検索前/置換後/g:行中の検索前をすべて置換する
:%s/検索前/置換後/gc:確認をしながら行中の検索前をすべて置換する

 
やり直し機能

undo(戻る): u
redo(進む): ctrl+r

 
ウインドウの分割

:sp 上下分割
:vsp 左右分割
ctrl + w + w   : ウインドウ間を移動
:close 分割を閉じる

 
タブ分割

:tabnew:新しいタブを開く
:tabe ファイル名:ファイルをタブで開く

 
タブ間の移動

ノーマルモードで gt
:tabclose:タブを閉じる

 
タブ間で共通の処理をする

:tabdo (例タブ間で置換する :tabdo %s/android/ANDROID/gc

 
インデントを揃えるためのイコール

v ビジュアルモードで範囲を選択して=(イコール)
インデントを揃えることができる。ビジュアルモードで選択しなければその行のみ揃え直す

補完

入力途中で ctrl+n 補完候補が出てくる

 
直前の操作を繰り返す

. ピリオド 超然に行った動作を繰り返す (削除に使えるなど)

 
ビジュアルモード(テキスト選択モード)

v :文字単位のビジュアルモード
Shift + v :行単位のビジュアルモード
ctrl + v :短形のビジュアルモード

 
短形ビジュアルモード(短形選択モード)の応用(一括で変数にプレフィックスなどを付けたい時)

ノーマルモードから
ctrl + v  短形選択モードに入る
プレフィックスを付けたい部分を選択する。
shift + i 挿入モードへ入る。 「my_」など付けたいプレフィックスを入力
ESCキーで戻る。 短形選択していた部分すべてにmy_のプレフィックスが入る。
また、プレフィックス部分を一括で消す場合は、短形選択し、x で選択した部分を削除する。

 
テキストオブジェクト

HTMLやXMLなどの文書構造を一括で削除するなどできる。
<title>タイトル名</title>
オレンジの部分で ノーマルモードからcit と入力するとタイトル名という文字が消えて入力モードとなる。

c / d / y : change(カットされてinsertモードになる) / delete(削除) / copy(ヤンクにコピー)

i / a : 中身か全体化

t / ” / ) /] : tag

例)ーーー
<meta charset=”utf-8“>
utf-8 の部分で ci” と入力するとutf-8が消えて入力モードになる
ーーーーー

 
その他設定

:set number (:set nonumber) 行番号の表示・非表示
:syntax on (:syntax off) 色付け
:set tabstop 4  タブの文字数設定
:set ignorecase (:set noignorecase) 検索時に大文字小文字を区別したくないとき

参考サイト
http://ogawa.s18.xrea.com/fswiki/wiki.cgi?page=Vim%A4%CE%A5%E1%A5%E2
http://d.hatena.ne.jp/Yuzuemon/20110304/1299199079

【FaceBookでコメント】

comments

Powered by Facebook Comments

これからvimを使い始める人のための便利な使い方Tips」への3件のフィードバック

  1. ノーマルモードで数字にカーソルを合わせて

    Ctrl + a => 数字をインクリメント
    Ctrl + x => 数字をデクリメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です