2007/12/07

Recent entries from same category

  1. vimからtumblrにポスト出来るvimscript「tumblr.vim」で日本語がポスト出来る様にしてみた。 Hatena
  2. vim-twitterとvim-wassrとvim-mogo2とvim-haikuをcodereposにあげた。 Hatena
  3. vimからVisual Studioを操作出来るvisual_studio.vimの日本語対応してみた。 Hatena
  4. 意外と知られていないvimのtips(perlのファイルを開くのが遅いと思ったら) Hatena
  5. 意外と知られていないvimのtips(ゆの in vimscript) Hatena

はてな
色んな人のvimrcを見ていて意外とmapされていないのがこの技。
元はと言うとKoRoNさんから教えて貰った技で、先日公開した私のvimrcにも入っています。
" expand path
cmap <c-x> <c-r>=expand('%:p:h')<cr>/
" expand file (not ext)
cmap <c-z> <c-r>=expand('%:p:r')<cr>
これを使って例えば
# vi /path/to/file/file.txt
type some text...
:pwd
/path/to/file
な状態で、ファイルのある場所にカレントディレクトリを移したいならば
:cd <C-X>  <= Ctrl押しながらX
とコマンドモードで<C-X>をタイプすれば
:cd /path/to/file/
と補完されます。あとはENTERで移動。
結構便利だったりします。またコマンドモードで<C-Z>とすれば編集中のファイルへの絶対パスに補完されますので、例えば編集中のHTMLファイルをFirefoxで確認したいならば
:!firefox-remote <C-Z>ENTER
で簡単に確認出来ます。書きはじめたjavascriptを試すにはいいですね。
※Windowsの場合はvimrcで「set shellslash」してあり、かつfirefoxまでのパスが通っている状態ならば「:!firefox <C-Z>」で行けるかもしれません。(確認してません)

応用として、例えばまだインストールしていないGreaseMonkeyスクリプトをvimで閲覧/編集中に「:!firefox <C-Z>」すれば簡単にインストール出来てしまいます。UN*XユーザでいちいちファイラからFirefoxにjsファイルをドロップ...なんてメンドクサイですよね。特にcoderepos等のCVS/SVNリポジトリでグリースモンキーを見つけ中身をvimで確認してすぐさまインストールしたい!なんて時には大活躍です。
おそらく他にも使い道は沢山あるかと思います。
皆さんもvimrcに加えてみては如何でしょうか。

WriteBacks

TrackBack ping me at
Post a comment

writeback message: Ready to post a comment.