41 lines
1.2 KiB
Plaintext
41 lines
1.2 KiB
Plaintext
Execute (Setup):
|
|
" assumes 3 registered wikis in vimrc
|
|
let g:wiki_nr = 3
|
|
|
|
Before (Define functions):
|
|
" change the syntax using a temporary wiki
|
|
function! SetSyntax(vw_syn)
|
|
if a:vw_syn ==# 'default'
|
|
let ext = 'wiki'
|
|
elseif a:vw_syn ==# 'markdown'
|
|
let ext = 'md'
|
|
elseif a:vw_syn ==# 'media'
|
|
let ext = 'mw'
|
|
else
|
|
Log 'ERROR: Invalid syntax "' . a:vw_syn . '" in SetSyntax()'
|
|
Log 'NOTE: function only accepts "media" for setting mediawiki syntax'
|
|
return
|
|
endif
|
|
let path = expand('%:p:h')
|
|
let new_temp_wiki_settings = {'path': path,
|
|
\ 'ext': ext,
|
|
\ 'syntax': a:vw_syn,
|
|
\ }
|
|
call vimwiki#vars#add_temporary_wiki(new_temp_wiki_settings)
|
|
call vimwiki#vars#set_bufferlocal('wiki_nr', g:wiki_nr)
|
|
let g:wiki_nr += 1
|
|
|
|
" verify syntax was set correctly
|
|
Assert vimwiki#vars#get_wikilocal('syntax') ==# a:vw_syn, 'ERROR: Vimwiki syntax not set correctly.'
|
|
endfunction
|
|
|
|
" reload plugin to change settings
|
|
function! ReloadVimwiki()
|
|
" clear mappings so plugin can be reloaded
|
|
" this is needed if running manually multiple times
|
|
nmapclear
|
|
|
|
unlet g:loaded_vimwiki
|
|
source plugin/vimwiki.vim
|
|
endfunction
|