Vimwiki

             __   __  ___   __   __  _     _  ___   ___   _  ___             ~
            |  | |  ||   | |  |_|  || | _ | ||   | |   | | ||   |            ~
            |  |_|  ||   | |       || || || ||   | |   |_| ||   |            ~
            |       ||   | |       ||       ||   | |      _||   |            ~
            |       ||   | |       ||       ||   | |     |_ |   |            ~
             |     | |   | | ||_|| ||   _   ||   | |    _  ||   |            ~
              |___|  |___| |_|   |_||__| |__||___| |___| |_||___|            ~

选项设置:

let g:vimwiki_use_mouse = 1
let g:vimwiki_camel_case = 0
let g:vimwiki_CJK_length = 1
let g:vimwiki_list = [{'path': 'D:\My Dropbox\VimPrivateWiki'},
                    \ {'path': 'D:\My Dropbox\vimwiki',
                    \ 'path_html': 'D:\My Dropbox\Public\vimwiki',
                    \ 'html_header': 'D:\My Dropbox\vimwiki\template\header.tpl',
                    \ 'html_footer': 'D:\My Dropbox\vimwiki\template\footer.tpl'},
                    \ {'path': 'F:\vim-script-cn\intro-wiki',
                    \ 'path_html': 'F:\vim-script-cn\intro',
                    \ 'html_header': 'F:\vim-script-cn\intro-wiki\template\header.tpl',
                    \ 'html_footer': 'F:\vim-script-cn\intro-wiki\template\footer.tpl'}
                    \ ]

其中 g:vimwiki_CJK_length 从 v1.0 beta 开始支持,它让 vimwiki 的表格更好的适应双宽度字符。

技巧

TagList

让 Vimwiki 支持 TagList 的大纲视图。

需要安装有 ctags v5.8 及其以上版本的 +regex 特性支持。

在用户目录中创建 .ctags 文件,并加入以下代码。
for Windows XP: C:\Documents and Settings\%USER_NAME%\ctags.cnf
for Windows 7: C:\Users\%USER_NAME%\.ctags
for Linux & Mac: ~/.ctags

--langdef=wiki
--langmap=wiki:.wiki
--regex-wiki=/^=[ \t]+(.+)[ \t]+=$/\1/h,header/
--regex-wiki=/^==[ \t]+(.+)[ \t]+==$/. \1/h,header/
--regex-wiki=/^===[ \t]+(.+)[ \t]+===$/.   \1/h,header/
--regex-wiki=/^====[ \t]+(.+)[ \t]+====$/.     \1/h,header/
--regex-wiki=/^=====[ \t]+(.+)[ \t]+=====$/.       \1/h,header/
--regex-wiki=/^======[ \t]+(.+)[ \t]+======$/.         \1/h,header/

如果不在乎层级结构,可以使用更简洁的模式。

--langdef=wiki
--langmap=wiki:.wiki
--regex-wiki=/^(={1,6})[ \t]+(.+)[ \t]+\1$/\2/h,header/

然后在 vimrc 中添加代码:

let tlist_vimwiki_settings = 'wiki;h:Headers'

搜索 Wiki

直接使用 :VimwikiSearch key 命令或者:

:vimgrep /KEY/ %:p:h/*.wiki

资源

延伸阅读