没有vimwiki的vimwiki风格链接?

Chr*_*ris 3 vim hyperlink vim-plugin

我最喜欢的vimwiki功能之一是它处理链接的方式.不幸的是,我使用其他东西(vimoutliner)作为我的主要笔记,并且它没有任何接近vimwiki的链接功能.

是否有一个插件在编辑任意文件时添加vimwiki(或至少类似的东西)的链接功能,而不仅仅是*.wiki文件?

Ken*_*ent 6

我想你可以为你的简单用例写一个,例如:

function! LinkForward()
    let g:fromFile=expand('%:p')
    let fn= substitute(getline('.'),'^.*\[\[\([^\]]*\)\].*$',"\\1",'g')
    execute "e ".fn
endfunction

nnoremap <cr> :call LinkForward()<cr>

function! LinkBackward()
    execute "e ".g:fromFile
endf

nnoremap <bs> :call LinkBackward()<cr>
Run Code Online (Sandbox Code Playgroud)

来源这个会做一些similiar行动,如按Enter[[path/to/file/foo]]foo会去那个foo文件,该文件按内<Backspace>将让你回来.

请注意上面的代码只是示例,它不会完美.你可以让它更好地工作,例如:

  • 添加列表/(堆栈)以存储文件跳转历史记录.
  • 定义这种动作仅适用于某种文件类型
  • 检查光标下的行是否不匹配,[[...]]然后执行正常操作<Enter>
  • 等等..如果你喜欢你可以看看vimwiki的代码并"借用"一些片段供你个人使用.

希望它可以帮助你..祝你好运.