Vi-Improved†
武士にとっての刀
プログラマーにとってのエディタ
Simple is the BEST! We are "vimer".
ウガンダの恵まれない子供達に援助を!
困ったときは†
ヘルプを見よう。
:help commandname
たとえば
:help :w :help :syn :help i :help /
省略形とか完全系とかも:helpで一撃。
:help smarttab →se smarttabと書かなくともse staでOKということがわかる
本当に困ったときは†
キー入力がバグった!そんなときは慌てず
Ctrl-C
を連打するんだ!!
emacsでいうC-gですね。
Frequently Asked 困った†
:ex
と間違って打ってしまい、変な状態になったら
:vi
と打てば戻ります。
Qを押したときにもExモードになるらしいです。とにかくExモードというのになってしまった!というときは:viを実行すればOK。
基本操作++†
%
で対応する括弧に飛びます。
d%
でブロック一個を削除/カットします。
ct"
を
printf("Hogehoge");
のHの部分でやると
printf("");
となり、さらに""の間に挿入モードでカーソルが置かれるので、文字列を変更するときに便利です。
設定全般†
とりあえず
:set ほにゃらら
略して
:se ほにゃらら
でもOK!
今の設定は
:set all
smarttabっていまONだっけ?と思ったときは
:set sta?
のように?を付ければ"smarttab"とか"nosmarttab"とかいってくれます。
インデントとか†
普通にインデント
:se ai
C言語によさそうなインデント
:se cin
case:文がインデントされるのは頭狂ってる!Vimだいきらい!!
:se cino+=:0
やっぱりVimだいすき!!
タブストップとか
:se ts=4 sw=4
(ts=TabStop、sw=ShiftWidth(Tab押したときのインデント幅))
タブじゃなくてスペースで
:se et :se sta
インデントが狂いまくった。もうだめだ!
gg=G
設定じゃないね
カラーリング†
文字に色がついて逆に見にくい
:syn off
逆に色がついてない
:syn on
このとき「そんなオプションはない」といわれたらそれきっとvim.tinyです。vim.basicかvimパッケージを入れましょう。
黒背景じゃ見づらい/白背景じゃ見づらい
:se bg=dark (黒背景) :se bg=light (白背景)
このコマンド自体は背景色を変えません。色の明るさを変えるだけです。(ボールドとか高輝度とかいわれてるはず…)
検索/置き換え†
検索は
/
置き換えは
:%s/元文字列/置き換え文字列/g
(%が文書全て、s///gは置き換え。実際はregexが使えたりして便利)
繰り返しの動作†
面倒なときは
qq (一通り操作) q
(qはキー記録、qaだと"a"に保存、qqだと"q"に保存)で記録して、
@q
で実行("q"を実行)
別に
qa (一通り動作) q
して
@a
でもOKだったりする。
マーク†
おもむろに
ma
(mark、"a"に。)適当にほかの場所を修正して
'a
(go "a"に。)で元に戻れる。
ちなみに
''
という裏技があったりする。(たまに役に立つ)
tags†
ctagsしてから関数の上で
Ctrl-]
でふっとべる。元に戻るには
Ctrl-T
でOK。実は:helpにも書いてあったりする。
スクロール†
1行ずつ
Ctrl-E Ctrl-Y
半ページずつ
Ctrl-U Ctrl-D
1ページずつ
Ctrl-F Ctrl-B
範囲選択†
おもむろに
v V Ctrl-V
してからカーソルを移動し、yなりdなり押す。おためしあれ。
文字コード†
これEUCじゃねーよ、UTF-8だよ
:e ++enc=utf8 hogehoge.txt
EUCじゃなくてUTF-8で保存したい!
:se fenc=utf8 :w
vimrc†
.exrcは、VIとVim両方読みます。
.vimrcは、Vimのみ読みます。
viminfo†
.viminfoがうざいときは
:se viminfo=
(自信なし)
マルチウィンドウ†
分割(同じファイルが2つ)
:sp :vsp
分割(新しいファイル)
:vnew
起動時に分割
$ vim -o hoge.txt fuga.txt $ vim -O hoge.txt fuga.txt
ウィンドウのフォーカス移動
Ctrl-W Ctrl-W Ctrl-W h Ctrl-W j Ctrl-W k Ctrl-W l
ウィンドウの移動
Ctrl-W H Ctrl-W J Ctrl-W K Ctrl-W L
ウィンドウのリサイズ(最大と均等)
Ctrl-W | Ctrl-W _ Ctrl-W =
ウィンドウのリサイズ(ちょっと)
Ctrl-W (prefix)+ Ctrl-W (prefix)- Ctrl-W (prefix)< Ctrl-W (prefix)>
(prefix)を指定するとその数分変化します。(Ctrl-W 22>とすると22文字分広がる)
ウィンドウのリサイズ(指定サイズに)
Ctrl-W <prefix>| Ctrl-W <prefix>_
<prefix>分の桁/行数にします。最小桁数はあるみたい。
diff†
差分も表示できます。おもむろに2つ以上分割して開き、それぞれに対して
:diffthis
とするとすばらしくなります。
fold†
:se foldmethod=syntax
として、
zo zc
などとするとおいしいと思います。
zM zR
というのもあります。
執筆中†
リンクとか†
5月2日の技術勉強会 - はてな技術発表会日記 - 機能変更、お知らせなど
http://hatena.g.hatena.ne.jp/hatenatech/20060508/1147073721
from [備忘録][vim] textwidth について | コンピュータ!
http://sugi3.jugem.jp/?eid=61
from Google検索: vim textwidth
たぶん九州大のどこか
http://www.c.csce.kyushu-u.ac.jp/kb/wiki/index.php?%A5%BD%A5%D5%A5%C8%A5%A6%A5%A8%A5%A2%2FVim%2FFAQ
from Google検索: vim textwidth
ツッコミ欄†
- sbjibw1 まじ大興奮なんですけどwwww 何コレ! http://www.shavitrue.com/sbjibw1/ -- [2011-08-07 21:59:27.823]





