From c948728db3b8c5122db364d99ba1f9867493a30f Mon Sep 17 00:00:00 2001 From: Dustin Swan Date: Mon, 20 Jan 2014 12:14:45 -0600 Subject: [PATCH] Adding map to open url in browser. Only works on mac for now --- vimrc | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/vimrc b/vimrc index 8dc109a..ce8a33f 100644 --- a/vimrc +++ b/vimrc @@ -274,3 +274,27 @@ nnoremap hi :HdevtoolsInfo " Vim-move let g:move_key_modifier = 'C' + +" Open URLs +ruby << EOF + def open_uri + re = %r{(?i)\b((?:[a-z][\w-]+:(?:/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))} + + line = VIM::Buffer.current.line + + if url = line[re] + system("open", url) + VIM::message(url) + else + VIM::message("No URI found in line.") + end + end +EOF + +if !exists("*OpenURI") + function! OpenURI() + :ruby open_uri + endfunction +endif + +nnoremap b :call OpenURI()