From 7d937615c124b2db994ab1402e13feb5eae5d7b0 Mon Sep 17 00:00:00 2001 From: paperbenni Date: Wed, 28 Jul 2021 11:11:46 +0200 Subject: [PATCH] Feature: VimwikiPasteLink to get absolute wiki link to the current file --- autoload/vimwiki/path.vim | 11 +++++++++++ doc/vimwiki.txt | 11 +++++++++++ ftplugin/vimwiki.vim | 1 + 3 files changed, 23 insertions(+) diff --git a/autoload/vimwiki/path.vim b/autoload/vimwiki/path.vim index 26f7c50..9ae520f 100644 --- a/autoload/vimwiki/path.vim +++ b/autoload/vimwiki/path.vim @@ -221,6 +221,17 @@ function! vimwiki#path#is_absolute(path) abort endfunction + +function! s:get_wikifile_link(wikifile) abort + return vimwiki#base#subdir(vimwiki#vars#get_wikilocal('path'), a:wikifile). + \ fnamemodify(a:wikifile, ':t:r') +endfunction + +function! vimwiki#path#PasteLink(wikifile) abort + execute 'r !echo "[[/'.s:get_wikifile_link(a:wikifile).']]"' +endfunction + + if vimwiki#u#is_windows() " Combine: a directory and a file into one path, doesn't generate duplicate " path separator in case the directory is also having an ending / or \. This diff --git a/doc/vimwiki.txt b/doc/vimwiki.txt index e55d027..50a04bf 100644 --- a/doc/vimwiki.txt +++ b/doc/vimwiki.txt @@ -974,6 +974,14 @@ Vimwiki file. colors are configured by |vimwiki-option-color_dic| and the format of the surrounding color tags by |vimwiki-option-color_tag_template| +*:VimwikiPasteLink* + Pastes an absolute wiki link (relative to the wiki root) to the current + wiki file into the current buffer + +*:VimwikiPasteUrl* + Pastes the url to the html file corresponding to the current wiki file + into the current buffer + ============================================================================== 5. Wiki syntax *vimwiki-syntax* @@ -3914,6 +3922,7 @@ Contributors and their Github usernames in roughly chronological order: - Brennen Bearnes - Stefan Schuhbäck (@stefanSchuhbaeck) - Vinny Furia (@vinnyfuria) + - paperbenni (@paperbenni) ============================================================================== 16. Changelog *vimwiki-changelog* @@ -3970,6 +3979,8 @@ New:~ * PR #934: RSS feed generation for diary with :VimwikiRss. * Feature: Add option |vimwiki-option-template_date_format| to configure alternative date string format + * Feature: Add |VimwikiPasteLink| to paste an absolute wiki link to the + current file Changed:~ * PR #1047: Allow to replace default mapping of VimwikiToggleListItem diff --git a/ftplugin/vimwiki.vim b/ftplugin/vimwiki.vim index 8eb815e..35ffc45 100644 --- a/ftplugin/vimwiki.vim +++ b/ftplugin/vimwiki.vim @@ -369,6 +369,7 @@ command! -buffer -nargs=* -complete=custom,vimwiki#tags#complete_tags \ call vimwiki#tags#generate_tags(1, ) command! -buffer VimwikiPasteUrl call vimwiki#html#PasteUrl(expand('%:p')) +command! -buffer VimwikiPasteLink call vimwiki#path#PasteLink(expand('%:p')) command! -buffer VimwikiCatUrl call vimwiki#html#CatUrl(expand('%:p')) command! -buffer -nargs=* -range -complete=custom,vimwiki#base#complete_colorize \ VimwikiColorize ,call vimwiki#base#colorize()