From: Hiroshi Shirosaki Date: Thu, 26 Jul 2018 05:36:42 +0000 (+0900) Subject: Merge branch 'master' into master X-Git-Url: https://git.madduck.net/etc/vim.git/commitdiff_plain/8f67b23f0993155097f87b3f9a7866029ccb72cf?hp=a4adecf25536f6b84efdf63725cc39c3bf4cd644 Merge branch 'master' into master --- diff --git a/README.md b/README.md index 037ba63..bb26e05 100644 --- a/README.md +++ b/README.md @@ -309,6 +309,14 @@ well, or you will have to remove an indent each time you add a new list item: let g:vim_markdown_new_list_item_indent = 0 ``` +### Change how to open new files + +By default when following a link the target file will be opened in your current buffer. This behavior can change if you prefer using splits or tabs by using the `vim_markdown_edit_url_in` variable. Possible values are `tab`, `vsplit`, `hsplit`, `current` opening in a new tab, vertical split, horizontal split, and current buffer respectively. Defaults to current buffer if not set: + +```vim +let g:vim_markdown_edit_url_in = 'tab' +``` + ## Mappings The following work on normal and visual modes: diff --git a/doc/vim-markdown.txt b/doc/vim-markdown.txt index 714d3a9..9bc972c 100644 --- a/doc/vim-markdown.txt +++ b/doc/vim-markdown.txt @@ -319,6 +319,19 @@ the 'vim_markdown_auto_extension_ext' variable: > let g:vim_markdown_auto_extension_ext = 'txt' < +------------------------------------------------------------------------------- + *vim-markdown-edit-url-in* +Change how to open new files ~ + +By default when following a link the target file will be opened in your +current buffer. This behavior can change if you prefer using splits or tabs +by using the 'vim_markdown_edit_url_in' variable. Possible values are 'tab', +'vsplit', 'hsplit', 'current' opening in a new tab, vertical split, horizontal +split, and current buffer respectively. Defaults to current buffer if not +set: +> + let g:vim_markdown_edit_url_in = 'tab' +< =============================================================================== *vim-markdown-mappings* Mappings ~ diff --git a/ftplugin/markdown.vim b/ftplugin/markdown.vim index 1aa3494..68d1d3d 100644 --- a/ftplugin/markdown.vim +++ b/ftplugin/markdown.vim @@ -609,7 +609,23 @@ if !exists('*s:EditUrlUnderCursor') endif endif let l:url = fnameescape(fnamemodify(expand('%:h').'/'.l:url.l:ext, ':.')) - execute 'edit' l:url + let l:editmethod = '' + " determine how to open the linked file (split, tab, etc) + if exists('g:vim_markdown_edit_url_in') + if g:vim_markdown_edit_url_in == 'tab' + let l:editmethod = 'tabnew' + elseif g:vim_markdown_edit_url_in == 'vsplit' + let l:editmethod = 'vsp' + elseif g:vim_markdown_edit_url_in == 'hsplit' + let l:editmethod = 'sp' + else + let l:editmethod = 'edit' + endif + else + " default to current buffer + let l:editmethod = 'edit' + endif + execute l:editmethod l:url endif if l:anchor != '' silent! execute '/'.l:anchor