Refactoring: simplify and remove some regexes

This commit is contained in:
EinfachToll
2018-05-20 15:18:05 +02:00
parent 946b3feb12
commit 9a8854756e
4 changed files with 31 additions and 33 deletions

View File

@ -116,11 +116,6 @@ function! vimwiki#base#resolve_link(link_text, ...)
let link_text = a:link_text
" if link is schemeless add wikiN: scheme
if link_text !~# vimwiki#vars#get_global('rxSchemeUrl')
let link_text = 'wiki'.source_wiki.':'.link_text
endif
let link_infos = {
\ 'index': -1,
@ -129,18 +124,23 @@ function! vimwiki#base#resolve_link(link_text, ...)
\ 'anchor': '',
\ }
if link_text == ''
return link_infos
endif
" extract scheme
let link_infos.scheme = matchstr(link_text, vimwiki#vars#get_global('rxSchemeUrlMatchScheme'))
if link_infos.scheme == '' || link_text == ''
let link_infos.filename = '' " malformed link
return link_infos
let scheme = matchstr(link_text, '^\zs'.vimwiki#vars#get_global('rxSchemes').'\ze:')
if scheme == ''
let link_infos.scheme = 'wiki'.source_wiki
else
let link_infos.scheme = scheme
if link_infos.scheme !~# '\mwiki\d\+\|diary\|local\|file'
let link_infos.filename = link_text " unknown scheme, may be a weblink
return link_infos
endif
let link_text = matchstr(link_text, '^'.vimwiki#vars#get_global('rxSchemes').':\zs.*\ze')
endif
if link_infos.scheme !~# '\mwiki\d\+\|diary\|local\|file'
let link_infos.filename = link_text " unknown scheme, may be a weblink
return link_infos
endif
let link_text = matchstr(link_text, vimwiki#vars#get_global('rxSchemeUrlMatchUrl'))
let is_wiki_link = link_infos.scheme =~# '\mwiki\d\+' || link_infos.scheme ==# 'diary'