From: Hiroshi Shirosaki Date: Wed, 1 Feb 2017 06:47:49 +0000 (+0900) Subject: Merge pull request #293 from artumi-richard/gitlabwiki X-Git-Url: https://git.madduck.net/etc/vim.git/commitdiff_plain/94f85d78fd274a69694de26836b2fd0e7806e240?hp=20aef6091bc1b6d75859b8a629162bac2a819b2f Merge pull request #293 from artumi-richard/gitlabwiki Option to not require .md extensions in markdown links --- diff --git a/README.md b/README.md index 17c97b9..c626e0a 100644 --- a/README.md +++ b/README.md @@ -228,6 +228,24 @@ vim-markdown automatically insert the indent. By default, the number of spaces o let g:vim_markdown_new_list_item_indent = 2 ``` +### Do not require .md extensions for Markdown links + +If you want to have a link like this `[link text](link-url)` and follow it for editing in vim using the "ge" command, but have it open the file "link-url.md" instead of the file "link-url", then use this option: + +```vim +let g:vim_markdown_no_extensions_in_markdown = 1 +``` +This is super useful for GitLab and GitHub wiki repositories. + +Normal behaviour would be that vim-markup required you to do this `[link text](link-url.md)`, but this is not how the Gitlab and GitHub wiki repositories work. So this option adds some consistency between the two. + +### Auto-write when following link + +If you follow a link like this `[link text](link-url)` using the "ge" shortcut, this option will automatically save any edits you made before moving you: + +```vim +let g:vim_markdown_autowrite = 1 +``` ## Mappings diff --git a/ftplugin/markdown.vim b/ftplugin/markdown.vim index bf28d5e..21c9442 100644 --- a/ftplugin/markdown.vim +++ b/ftplugin/markdown.vim @@ -582,7 +582,14 @@ if !exists("*s:EditUrlUnderCursor") function s:EditUrlUnderCursor() let l:url = s:Markdown_GetUrlForPosition(line('.'), col('.')) if l:url != '' - execute 'edit' l:url + if get(g:, 'vim_markdown_autowrite', 0) + write + endif + if get(g:, 'vim_markdown_no_extensions_in_markdown', 0) + execute 'edit' fnamemodify(expand('%:~'), ':p:h').'/'.l:url.'.md' + else + execute 'edit' l:url + endif else echomsg 'The cursor is not on a link.' endif