vimwiki
常用命令
- :VimWiki2HTML:将当前页面编译成 HTML 文件
- :VimWikiAll2HTML:将本 wiki 所有源文件都编译成 HTML 文件(如果文件很多,将花费较长时间)
- :VimWikiGoTo:转到指定的 wiki 页面
- :VimWikiIndex:转到 wiki 首页
- :VimWikiSearch /Ruchee/:搜索指定关键字,:cnext 跳到下一个,:cprevious 跳到上一个
- :VimWikiTable 3 2:插入一个 2 行 3 列的表格。注意,列数在前,行数在后
- :VimWikiDeleteLink:删除当前页面
wto 为当前页面生成 table of contents
更多命令使用方法请参考 Vimwiki 自带的帮助文件,使用命令:help VimWiki
基本语法
= 一级标题 = == 二级标题 == === 三级标题 === 此次类推。 当标题前面有空白时,标题文本居中对齐。 = 我是居中的标题 = *粗体* _斜体_ ~~删除线~~ `Some Code 代码` 注意 这几个针对文本格式的标签,都要求左右留有空白。 请注意你的代码高亮,一般来说,有了相应的高亮,你用的wiki标签才生效。 ^上^标 ,,下,,标 四个空格缩进的内容会被转成blockquote NOTE:已废弃 {{ { class="brush:php" 这中间的内容会被放到一个 pre 里,适合贴代码。 上面的 class 是可选的,一般用来安排代码高亮。 事实上,这一块代码展示就是放在了一个 pre 里。 }} } WikiItem 大写开头的驼峰英文会被自动当作一个维基词条,并添加链接 [[Wiki Item]] 这是手动建立维基词条的方式 [[wiki item|description]] 输出HTML时显示description,链到 wiki item http://ktmud.com/ 外部URL会被自动转换成链接 [http://ktmud.com Ktmud] 带文字的外链 [images/hello.jpg] 输出 <img src="images/hello.jpg" /> [[images/hello.jpg]] 输出图片,并链向图片地址 * 无序列表 条目一 * 无序列表 条目二 - 子列表 条目一 - 自列表 条目二 # 有序列表 条目一 # 有序列表 条目二
- 和 - 是等价的,后面必须跟一个空格 参考:h vimwiki-syntax
特殊占位符
在 wiki 条目中使用以下占位符,能对生成的 HTML 文件做一些特殊的处理。
%% * %toc 自动生成的目录 * %title 指定 HTML 文档的 title,建议放到文档最末尾。如果不指定,title 就是文件名 * %nohtml 告诉 vimwiki 不为某条目生成 HTML 文件。即使你在该条目打开时为它单独执行 :Vimwiki2HTML ,也不会生成。 * $template * %date
快捷键
快捷键总览
ww 在当前窗口打开维基首页 wt 在新 tab 打开维基首页 wi 打开日至索引 w w 打开/新建当天日记 w t 在新 tab 打开/新建当天日记 ws 选择维基项目(详见下面的“多个维基项目”一节)
编辑时的按键
- 尚未建立的词条会被显示为红色(或其他你的 Vim 语法高亮定义的错误颜色),在词条上敲回车键,可以编辑这个词条。点击 Shift-回车, 在新的分割窗口编辑该词条。编辑好以后点击退格(Backspace)键,可以返回链入页
- 使用 Tab 键,可以跳到下一个维基词条或链接,使用 Shift-Tab 跳到上一个
- 插入模式下使用 Shift-Enter,插入
<br>
并换行 - 在标题上点击 - 和 = (也就是 - 和 + ),可以分表提升和降低标题层级
另有条目管理相关的快捷键
vimwiki 使用体会
文件命名
出于编辑效率考虑,我没有在 wiki 目录下划分目录。区分不同类别的 wiki,用文件名完成,例如 Linux 类别的文档 linux_xxx.wiki, Apache 类别的文档 apache_xxx.wiki,如果还有子类,继续用 _ 串联起来。文件名一定要规范,否则等到你需要用脚本批量处理 wiki 文件时,麻烦就纷至沓来。
文档归类
文件划分的另一个问题是,因为 VimWiki 创建文件过于方便,所以可能创建很多小文档,其中又没有太多内容(我的 wiki 就有这个严重毛病,在克服)。 最好是把同类知识放入一个文档,直到该文档大得维护/引用不便后,再去拆分。
日期与时间戳
日期。把 VimWiki 当作知识管理工具,通常无需为文档注明日期,因为需要在一份文档上进行数十,甚至上百次修改(如果你经常更新知识库的话);如果要输出 HTML,供人阅读,那最好也通过脚本自动为文档添加日期(最后修改时间)。
写作方法
写作。看到的、实践过的、学习的、经历过的都可以记录在案,供日后快速恢复思路、供人参考之需。有句话说不要在一个地方摔倒两次, 那么通过日积月累的写作、归纳,可以在一个小知识点上进行巨大的扩展,打通不同领域的知识。特别是当前人心浮躁,知识碎片过多,通过 wiki 式的不懈记录, 可以积小流而成江海,积跬步而至千里。