open-browser.vim, urilib.vim
という2つのプラグインを作った。
tyru/open-browser.vim · GitHub
tyru/urilib.vim · GitHub
nmap hoge <Plug>(openbrowser-open) vmap hoge <Plug>(openbrowser-open)
とかやればhogeでカーソル下のURLを開いてくれます。
visual modeでもhogeとやれば選択してるURLを開いてくれます。
また「ttp://〜」なURLもurilib.vimというライブラリを入れることでhttpとして開くことができるようになります。
詳しく言うと、urilib.vimというライブラリがインストールされていれば
URLのパースを行ってg:openbrowser_fix_schemesというグローバル変数で
指定されてるようにschemeの変換をしてくれます。
urilib.vimはPerlのURI.pmにインスパイアされた作りになっていて、
try let uri = urilib#new('http://twitter.com/tyru') " httpと表示 echo uri.scheme " twitter.comと表示 echo uri.host " tyruと表示 echo uri.path catch /^uri parse error:/ echoerr v:exception catch /^not valid uri::/ echoerr v:exception endtry
もしくは
let uri = urilib#new_no_throw('http://twitter.com/tyru', -1) if type(uri) == type(-1) echoerr v:exception endif " httpと表示 echo uri.scheme " twitter.comと表示 echo uri.host " tyruと表示 echo uri.path
という風に扱えます。
追記:
最新版ではurilib#new_no_throw()は削除されました。
urilib.vimについてはまた後で書きます。