TeraTerm で開いた ssh コンソールで
vim のカラー表示 。~/.vimrc に以下の設定を追加する。
256 色表示もあったが、いい配色がなかった。
set term=builtin_linux
set ttytype=builtin_linux
colorscheme pablo
syntax on
vim はすごい、ほとんどemacs 。
なんとはなしに
/proc/プロセス番号/mapsを見てみた。
すると、libperlとかlibpythonがロードされていた。
で、vimで
:help perlしてみたら、perlのスクリプトを
編集するためのオプションのほかに、vim内からperlを呼ぶ方法が
書かれていた。しかも、vim内部のデータを利用しながら、
vimのJavaScriptのような感じで利用できる。vim内部のデータを
利用するときは、perlのVimモジュールを利用する。
pythonとrubyでも同じようなことができるらしい。
確かに、vim のスクリプティング言はなかったので、
perl や pythonを使って拡張してしまうのも、あり。
機能が別々になってしまいそうだけれども。
ただしFedora 9添付のvimにはrubyはリンクされていなかった。
Windowの分割表示もできるし。
作成(Ctrl-W n)、単一化(Ctrl-W o)、次へ(Ctrl-W j)、前へ(Ctrl-W k)
など。
もちろん編集中モードにしておけば、上下左右のカーソルキーで
どこにでも移動できるので、コマンドモードに戻って
jklhなどのカーソル移動コマンドも覚える必要がない。
覚えたほうが速い操作ができるけれども、emacsとvimの差は
あまりない。スクリプトだって、Lispで書くか、よく知っている
perl/python/rubyで書くか、の違い。Lispでネットワーク関係の
スクリプトを書くことも少ないので、当然vimのほうがよい。
emacsも、エディタの内部データを扱うスクリプトを
perl/ruby/pythonで書けるのか? 最近使ってないのでわからないが。
Linux標準教科書の "viを一番簡単に利用する方法"を読んでみて 。
かなりぐっとくる見出しだったので読んでみた。iコマンドでinsertモードに
入っても、カーソルキーが効く、とある。なるほどー。今は効くのか。
これは簡単。上の行でも下の行でも移動できる。
行移動に関しては:コマンドを使った行指定が説明
されている。確かに、s/// コマンドでも利用するので、これは必要。
vi に慣れたら、Gを使ってほしい。
| コマンド | 操作
|
|---|
1G | ファイルの先頭行へ移動する
|
|---|
[数字]G | 数字で指定した番号の行に移動する
|
|---|
G | ファイルの最終行に移動する
|
|---|
あと、強制上書きコマンドの :w! は、ファイルの書き込み
モードがオフになっていても、オーナーがグループが合っていれば
書き込みできてしまうので、よく注意が必要だ。
EMobile環境の vi (vim) で便利なのは、f コマンドと
; コマンド 。fコマンドに続けて1文字打ち込むと、現在行内で指定した
文字の上にカーソルを移動する。
; コマンドで、さらに右にある同じ文字の上にカーソルを移動する。
この応用で、直近の " までの文字を削除するviコマンドは、これ。
x f "
遅延が大きいネットワークでは、コマンドでカーソル移動を高速化
できると気持ちいい。