-> 06 { 05 / 24 }
vim7 新機能の説明
あっちで出そうと思ったけど途中書きかけで放置してて続き書く気もなくなったのでこっちで書いとく。
:h new-7
new-vim-script
vim スクリプト周りの説明ですが、vim スクリプト書けないでよく解りません…。List, Funcref 型や let での +=, -=, .= 演算子の追加 などが行われたようです。id:motemen が List あると超便利になりますよ!とか云ってた気もします。
また、vimball と呼ばれる vim プラグインのパッケージングが加わりました。.vba ファイル開いて、
vim PackageName.vba :so %
のようなコマンドで plugin やら document やらを適切なディレクトリにインストールしてくれます。また、vimball の使い方も簡単で、自作の plugin やドキュメントなどを runtimepath においておきます。
~/.vim/plugin/example.vim ~/.vim/doc/example.vim
次に、そのファイル名から runtimepath をのぞいた文字列を作り
plugin/example.vim doc/example.vim
その文字列を範囲選択して
:MkVimball example.vba
と MkVimball コマンドで vimball ファイルを作ることができます。
Spell checking
スペルチェック機能が加わりました。使ってないのでよく解りませんが、辞書ファイルなどからチェックが可能になり、[s などのコマンドでエラー箇所に飛べるみたいです。
Omin completion
インテリジェンスな補完を行う機能が加わりました。デフォルトでは Ctrl-X Ctrl-O で補完が可能になります。VIMRUNTIME/autoload/*.vim に filetype のファイルがあり、その中で *complete#Complete* という関数(php なら phpcomplete#CompletePHP )が定義されていると利用できるようになります。
例えば JavaScript で
document.getE[tab]
と押したときは
document.getElementById( ~ getElementById( ~ getElementsByName( ~ getElementsByTagName(
と補完候補が表示され補完が行えます。また今現在、次の形式がサポートされています。
php の Omni 補完はめっちゃ強まってます(参考)が、vim だと遅くて話にならなかったりします、、、。(gvim でなんとか)
MzScheme interface
MzScheme のインタプリタがサポートされました。--enable-mzschemeinterp してコンパイルすると使えるようになります。
これで mzscheme の中から vim を弄ったり、:mzf で選択範囲を実行したりといったことができるようです。
Printing multi-byte text
マルチバイト文字を PostScript を使ったときに印刷できるようになったみたいです。
Tab pages
ネイティブでタブがサポートされました。以下簡単な使い方です。
vim -p foo.txt bar.txt baz.txt # おのおののタブでファイルを開く :tabe foo.txt # foo.txt を新しいタブで編集 gt # 次のタブへ :tabn # 次のタブへ :tabp # 前のタブへ :tabonly # そのタブのみにする :tab ball # バッファをすべてタブで開く :tabs # タブの一覧表示 :h tabpage # タブ機能のヘルプ
個人的には MiniBufExplorer の方が今のところ使い勝手がよいです。
Undo branches
undo や redo を時系列で戻せる機能がつきました。例えば 30 秒前まで遡りたければ、
:earlier 30s
5分前まで遡りたければ
:earlier 5m
で戻ることが可能です。この undo は undolevels によってどこまで undo の履歴を保存しておくか(default 1000)なので、数百時間前まで戻したいような人は、set undolevels で多めに設定しておくと良さそうです。
Elim2006/05/24 20:35capsule イイネ!
secondlife2006/05/25 00:49新作は好みじゃないかも><
shugo2006/05/26 08:27vimのundoって、すぐに「u_undo: 行番号が間違っています」って言われません?
secondlife2006/05/26 09:50む、云われたこと無いですね。
shugo2006/05/26 12:05やっぱり日頃の行いですかねえ:(
secondlife2006/05/26 12:10そうだと思います!:P