# 2021-01-15 #「Zim」- 常用插件
在 Zim 中,支持众多插件以扩展功能,使其更加强大。比如,时序图、代码块、截图、拼写检查等等。
该笔记会介绍:部分插件使用方法及配置方法。
有哪些可以使用的插件?
与 Zim 共同打包发布的插件
1)有关插件的详细的介绍可以查看官方 Plugins 文档
2)或者在 Zim 中按下 F1 来显示 Zim 的帮助手册,在 Plugins 中有对插件的详细介绍。
这也是本笔记重点记录的插件。
第三方插件与插件开发
Plugins · jaap-karssenberg/zim-wiki Wiki · GitHub
插件安装目录
系统自带的插件目录:/usr/lib/python2.7/dist-packages/zim/plugins/(根据 Zim 的安装方式的不同,具体路径可能会有所差异)。
用户自定义插件目录:$HOME/.local/share/zim/plugins/
关于插件的启用
如果无特殊说明,文中所指的插件启用方法为:Menu Bar > Edit > Preferences > Plugins > (在插件列表中勾选某个插件) > OK
在菜单栏中的某些菜单选项中会显示该插件相关的按钮。
关于插件的设置
如果无特殊说明,文中所指的插件设置方法默认为:Menu Bar > Edit > Preferences > Plugins > (在插件列表中勾选某个插件) > Configure > OK
注意,某些插件不支持配置,即 Configure 按钮为灰色。
已知插件列表
Arithmetic
这个插件就比较神奇了,支持在 Zim 中进行数学计算。这么说你可能听不懂,看下面的操作示例:
1)启用该插件:「Edit」>「Preferences」>「Plugins」>「Arithmetic」
2)在Zim中输入:2 + 3 =
3)将光标置于等号的后面,像这个样子:2 + 3 = |
4)按F5键,该插件会自动计算2 + 3的值并显示在等号后面:2 + 3 = 5
该插件是使用了arithmetic模块实现的,非常好用了,当然示例中只是介绍了简单的功能,可参考官方文档的说明。
Attachment Broswer
这个插件相当有用了。可以将当前页面的附件文件夹显示在底部。下面截图的底部就是Attachment Broswer,显示了这篇文章中引用了三张图片(截图时文章还未完成):
该插件支持查看文件、使用外部程序打开图片、缩放等等,还可以设置该面板显示的位置。
BackLinks Pane
该插件会在界面中显示一个窗格,该窗格中显示了链接到当前文章的所有页面(窗格的内容与文章有关,切换文章,窗格中的内容也会发生变化)。比如文章A中的某个词语被连接到文章B,那文章B的BackLinks Pane中就会显示文章A的名称。下面截图中当前文章被一个名为「1.Installation」的文章引用,点击「1.Installation」可以跳转到该文章:
BookmarksBar
该插件提供了书签功能,可以将某个页面加入书签,以便于快速切换到该文章。如下截图,点击“绿色的加号”可以将当前文章添加到书签中:
Distraction Free Editing
无干扰编辑,该插件添加了一些设置来帮助使用Zim。比如,在全屏模式时隐藏某些界面的元素。可以在插件启用界面中设置某些选项。
Inline Calculator
该插件允许你在Zim中快速的计算简单的数学表达式,类似于Arithmetic插件。启用该插件后,在菜单中Tools下会有一个Evaluate Math按钮。
Insert Symbol
支持在Zim中插入一些特殊的符号,比如✆、Å、Ã、æ、ò等等。额……这个不是乱码,这是插入的符号。
Journal
将笔记的特定部分变为日记(默认情况下部分名为“Journal”,但这是可配置的)。 它可以每天都有一个页面,按年份和月份组织,或者每周或每月有一个页面。
Line Sorter
对选中的多个行进行排序,它是按照字母顺序进行排序(A-Z或者Z-A)的。如果行已经排序了,则进行反向排序。
Link Map
这个插件依赖于GraphViz,启用该插件后会在菜单栏中的View中出现一个「Show Link Map」选项,点击「Show Link Map」会显示一个“思维导图”来展示当前页面与其他页面之间的关系。
Log events with Zeitgeist
将事件推送到Zeitgeist服务。Zeitgeist是用来记录用户活动和事件的,从文件的打开到站点访问和会话。它使得这些信息以时间线和统计的可读的形式被其他程序使用。
Print to Browser
该插件解决了Zim笔记的打印问题,该插件将页面到处到HTML并在浏览器中打开,然后来使用浏览器的打印功能来打印笔记。
Quick Note
该插件会显示一个Dialog,用于快速的将某些文本或者剪切板你的内容放到笔记中。Dialog的截图如下:
Source View
代码块插件,支持在笔记中插入代码,以保持某些文本的特殊格式。如下截图:
如何启启用该插件?
该插件依赖于python-gtksourceview2,先安装python-gtksourceview2:
#!/bin/bash apt-get install libgtksourceview2.0-0 libgtksourceview2.0-common python-gtksourceview2
然后重启Zim来加载该插件。
Spell Checker
Zim中的拼写检查插件。该插件依赖于gtkspellcheck与gtkspell,所以启用该插件前要先安装这两个模块。
Table Editor
该插件支持在Zim中插入表格,如下截图:
可以设置表格内容的对齐方式、标题、自动换行等等。
Table of Contents
该插件会在界面上显示一个控件,该控件中显示的内容为当前文章的“目录”,这个目录是根据页面上的Heading 1~5(菜单栏中的Format中的Heading 1, Heading 2...)创建的。如下截图:
在Zim中,菜单栏中的Format中的Heading 1~5用于格式化选中的文本,使其成为标题。在Table of Contents中,Heading 5显示在Heading4下面,Heading 4显示在Heading 3下面...
Tags
该插件会在界面中添加一个名为Tags的窗格,该窗格会根据“文章中的Tags”对文章进行分类。这里的“文章中的Tags”是指文章中的一个@符号后紧跟一段文本。形如@Debug、@Profile、@Test。
比如说,如果页面中有一个 @ZimPlugin ,那么Zim就会在Tags窗格中自动生成一个ZimPlugin分类,该分类中列出了包含该ZimPlugin这个标签的文章。此时,如果另一个页面中也包含了 @ZimPlugin ,那么也会显示在Tags窗格的ZimPlugin分类下。如下截图中有两个地方包含了ZimPlugin这个标签:
Task List
该插件会在界面中显示一个名为Tasks的窗格,该窗格中显示了整个笔记中的待办事项。如下截图:
如果要在Tasks窗格中显示,则要满足下面的条件之一:
* 该行以TODO开始或者以FIXME开始,且TODO或者FIXME前面除了空白字符、CheckBox、Bullet List这三者以外不能有其他字符。 * 未选中的CheckBox会显示在Tasks中。
这里的CheckBox和Bullet List指的是菜单栏中的Insert中插入的控件。
Tray Icon
该插件可以在系统的托盘中显示一个Zim的图标,在图标上点击可以快速切换笔记、退出Zim等等。如下截图:
Version Control
对笔记进行版本控制。支持的版本控制系统有Bazaar(bzr)、Git(git)、Mercurial(hg)、fossil,所以至少要先安装这些版本控制系统中的一个。
启用该插件后,可以设置自动进行版本提交的周期、在关闭Zim时自动进行版本提交。
macOS Menubar
这个插件是用在macOS系统下的Zim中的。主要的用途是将菜单栏显示在macOS的菜单栏中。启用该插件后需要重启Zim才能看到效果。话说屏幕空间资源这么宝贵,没有什么理由拒绝使用这个插件吧。
该插件依赖于gtkosx_application,可以通过brew进行安装(brew install gtk-mac-integration)。下面的截图中显示了使用该插件(图一)和不使用该插件(图二)的对比:
(图一)
(图二)
图像、插图、绘图
没有人愿意在博客里放一张要经常要维护的图片。原稿、编辑、导出、替换、保存,想想都麻烦。为什么不能在博客里直接编辑呢?
下面是在Zim中与图形、绘图、公式相关的工具,这些工具提高了在博客中嵌入和管理时序图、流程图、公式等图像的便捷性:
Insert Ditaa
该插件依赖于 ditaa 工具,可以在 Zimditaa 图解。
Insert Equation
该插件依赖于 LaTeX,提供公式编辑器。
Insert GNU R Plot
该插件依赖于 GNU R,绘图工具,使用 GNU R 的 S 语言进行绘图。
Insert GNUplot
该插件是一个科学绘图工具,支持二维和三维图形。它的功能是把数据资料和数学函数转换为容易观察的平面或立体的图形,它有两种工作方式,交互式方式和批处理方式,它可以让使用者很容易地读入外部的数据结果,在屏幕上显示图形,并且可以选择和修改图形的画法,明显地表现出数据的特性。用户通过输入命令,可以逐步设置或修改绘图环境,并以图形描述数据或函数,使我们可以借由图形做更进一步的分析。
Insert Score
一笔带过:该插件依赖于 GNU Lilypond,用于编辑乐谱的,没错就是编辑乐谱。
Insert Screenshot
截图工具,该插件的截图功能依赖于 import(1)(ImageMagick)或者 scrot 命令。
Insert Sequence Diagram
通过该插件可以在笔记中插入与编辑序列图。该插件依赖于「seqdiag」工具,安装方法:
# 在Debian中,可以安装 python-seqdiag 安装,然后重启 Zim 后再启用该插件即可 ap-get install python-seqdiag pip2.7 install seqdiag
使用方法参考「seqdiag - Sequence Diagram」文章。
# Insert Diagram
该插件基于 GraphViz,可以在 Zim 插入和编辑 GraphViz 图解。因为基于 Graphviz,所以可以使用 DOT 语言来编写图解,因此文章中可以避免插入一些“死图“,维护起来也很方便。
如果要启用该插件,要先安装 Graphviz,并确保 GraphViz 的命令在环境变量 PATH 中可以搜索到。因为该插件需要使用系统中的 GraphViz 命令来生成在文章中显示的图解。
启用该插件后,菜单栏的「Insert」中会有一个「Diagram......」项,点击它会弹出一个图解编辑框。「Preview」可以进行预览图解。编辑完成后点击「OK」就可以在文章中显示图解了。在文章的图解上点击右键,选择「Edit Diagram」可再次编辑图解。功能的截图如下:
参考文献
WikiNotes/常用插件
GitHub/jaap-karssenberg/zim-wiki/Plugins