めたらーのブログ別館

vim から url をブラウザで開く(radikoのurlも開ける)

作成 2017-01-30 | 更新 2017-06-07 23:13

vim で開いているテキストファイルに
http://foo.bar.jp/
の記述がある場合、それをブラウザで開きたい。

いままで Windows 版の muraoka さんが作った dll 経由で起動していたんだけど、
ubuntu の場合は簡単にできた。
~/.vimrc に以下を書く。

function! s:open_url()
  let sl=matchstr(getline("."), "\\%(https\\=:\\|file:\\)//[^'\" <>\\[\\]()]\\+")
  if sl != ''
    let sl=escape(sl, '%#!')
    silent execute '!firefox --new-tab "' . sl . '" &'
  endif
endfunction
nnoremap <silent> <s-cr> :call <sid>open_url()<cr>

んで http://radiko.jp/ のある行で Shift + Return すればブラウザが起動する。

疑問

それはそうと #! とか入っている
http://radiko.jp/#!/live/FMJ
は開けないぞ。

あと xdg-open を firefox の代わりに指定しても使えなかった。

追記 2017/02/10

旧
execute '!firefox --new-tab "' . sl . '" &'
新
silent execute '!firefox --new-tab "' . sl . '" &'

後者だと余計な Enter を必要としない。

追記 2017/06/07

やっと調査した・・・

旧
let sl=escape(sl, '%')
新
let sl=escape(sl, '%#!')

後者で radiko.jp の #! 以下がついても開けるようになった。

関連タグ

Vim
小さいデバイスで表示される

Copyright © めたらー


一番上へ | 一番下へ