作为经常使用Windows和Linux两大桌面系统的我来说,经常希望能在两个平台中使用同一套生产力工具,比如Chrome、Vim等。
作为重度笔记创作者,一直没有找到两个平台上都能很好工作的笔记软件,特别是针对Markdown的笔记软件。虽然有很多跨平台的Markdown编辑器,但不是编辑功能羸弱,或是清一色地双边预览,就是缺少文件管理功能。
不过,一年多前终于等到国内个人开发者开发的跨平台Markdown笔记软件VNote。在作者每月一更的完善和增强后,全新的VNote 1.22,终于让很多人,特别是程序员,在Linux有了一款胜任整理知识笔记的Markdown软件。
1. 自动补全
VNote里面的自动补全,是类似于代码编辑器中的自动补全,而不是常见的那种输入左括号补全右括号那种。这很是符合我的口味:很多时候,我就是喜欢我输入啥就是啥,有时候我就是要输入一个左括号,括号补全会打断我的输入思路。
VNote里面的补全和Vim里面的一样,需要通过快捷键Ctrl+N/P
激活补全。VNote会将当前文章简单分词,然后作为一个候选列表供我们选择。在做代码笔记或者绘制UML图表的时候,面对冗长的类名字,这个功能简直是不能再爽。
当然,VNote里面也是支持快捷键输入常见标记的,如Ctrl+B
会插入****
,并将光标放在两个**
中间,然后可以继续输入内容,结束后,再按一次Ctrl+B
,光标会跳过后面的**
,一气呵成,行云流水。而按Ctrl+B
输入****
后,如果后悔了,再按一次Ctrl+B
会将这插入的4个标记符号删除。
2. 内容为大,专心记录
VNote在界面上的设计一直都是针对内容为主,尽可能最大化编辑区域。没有牛屎大的顶部按钮,没有摆设的侧边导航按钮,更没有闪亮的广告区域。
菜单栏可以隐藏,工具栏可以隐藏,文件导航栏可以隐藏,大纲栏也可以隐藏,也可以全屏,一个编辑区域可以占据整个软件界面。相比那种两边大量留白、编辑区域只占1/3的所谓专注模式,个人更喜欢这种清净直率的界面,特别是当一半屏幕参考一半屏幕记录的时候。
3. 强大的文档管理和分类
从未有哪个Markdown软件或者笔记软件能够提供VNote目前提供的文件管理体验。
3.1. 无限层级目录树和标记
VNote通过笔记本来管理笔记。我们可以根据数据的不同属性来建立不同的笔记本,比如个人的学习笔记、生活笔记和工作笔记。每个笔记本都对应系统上的一个文件夹,只需要把这个文件夹保存、同步妥当,我们就能在任意电脑上使用VNote来管理笔记。每个笔记本下面是不限层级的目录和子目录。
3.2. 标签
VNote同时也支持通过标签来管理笔记,可以为笔记添加多个标签,并按照标签来索引笔记。
3.3. 外部文件
另外,VNote也提供一个浏览栏来浏览系统的文件,从而可以作为一个普通的编辑器来编辑外部文件。或者,我们只需要将一个文件夹拖拽到VNote上面,VNote就会打开该文件夹。
3.4. 强大的搜索
很多Markdown编辑器都被我否定了,无他,就是因为没有全文搜索,一切都是白说。VNote提供的全文搜索除了强大,还可以用舒适来形容。
VNote配备了一个搜索栏。我在使用的时候,一般都是将该栏拖拽成一个浮动窗口,这样显示搜索结果的窗口会大很多。(其实,我很少使用搜索栏)
- 支持“与”和“或”逻辑的多个关键词搜索;
- 支持在已打开文件、当前文件夹、当前笔记本和所有笔记本中进行搜索;
- 支持搜索文件名、路径、内容、标签和大纲(没错,能搜索当前所有已打开文件的大纲标题);
- 支持搜索笔记本、文件夹或者文件对象;
- 支持文件名模式过滤或选定特定文件,比如
*.md
搜索所有Markdown文件; - 支持大小写敏感、只搜索整个词、模糊查找和正则表达式(没错,有了正则表达式,你还想要啥)。
这是VNote搜索强大的一方面,舒适就体现在VNote的通用入口了。程序员估计都知道Vim的CtrlP插件或者SublimeText的随意跳转。通用入口就是这样一个功能。
通过快捷键Ctrl+G
唤出一个简单的输入框:
输入q
(表示在所有笔记本中根据文件名搜索文件夹或者笔记文件),然后输入关键词vim
,马上就能列出所有名字包含vim
的文件或者文件夹:
接下来,Ctrl+J/K
就能在搜索结果中进行上下导航,Enter
打开对应项目。对了,Vim对VNote的影响可谓是深到骨子里面的,几乎所有窗口都可以使用Ctrl+J/K
进行上下导航;双手放在键盘上就是舒服。
4. 其他功能
4.1. 解析HTML富文本为Markdown格式文本
我们可以直接复制网页或者OneNote上的一段图文,然后粘贴到VNote中,VNote会尝试解析并转换为Markdown文本插入。非常方便对信息进行收集。
当然,很多工具实现这个功能都是基于开源库Turndown的,这就是开源的好处和力量!
4.2. 强大的快捷键
前面提到,Vim对VNote的影响是深到骨子里面的。
- 编辑器支持Vim模式;
- 阅读模式下,支持Vim导航、Vim查找等;
- 大部分的部件都支持
Ctrl+J/K
进行上下导航; - 大部分的输入框都支持
Ctrl+H/W/U
来删除一个字符、一个词或者一行; - 引入舰长模式,通过前导键
Ctrl+E
避免大部分的快捷键冲突问题; - 引入导航模式,
Ctrl+E W
后,所有部件都会显示两个提示字符,按下对应字符,对应的部件就可以获得输入焦点;可以看出,这是受Vim里面的EasyMotion插件的启发。
另外,VNote早期版本就支持正则表达式的页内查找和替换。
4.3. 强大的导出功能
VNote支持复制导出到微信公众号、OneNote等等,也支持在编辑模式下直接将所选文本转换为HTML并复制。
VNote支持导出为Markdown、HTML和PDF。对于PDF的导出,支持将多个笔记导出为一个PDF文件。支持通过调用外部工具(如Pandoc)来导出各种各样的格式。
VNote还有一个比较有趣的小工能小推车。类似于购物车,我们能将感兴趣的几个笔记放到小推车里面,然后在导出的时候把小推车里面的笔记统一导出。可以看到,作者在用心地将平时的使用经验融进到VNote里面。
5. 未来可期
以上只是VNote里面的几个主要功能,更多功能有待大家自己去发掘。个人而言,VNote给我们带来了舒适的Markdown体验和强大的文件管理,使得在Linux下做Markdown笔记从未如此轻松。如果你觉得VNote很好用,一定要去官网支持VNote哦!作为一款开源软件,除了能免费下载使用、没有广告、不用破解之外,更多的是提供了一个框架,让有能力的人能够按照自己的喜好去魔改一个属于自己的工具!希望有更多的程序员能参与到VNote的开发社区中。
VNote项目地址:https://github.com/tamlok/vnote
。