Markdown笔记软件Marketo

sadhen | 2015/12/17

在 Linux 上试过各种 Markdown 编辑器,都觉得满足不了我的个人需求。开源的我试过Retext,Smark,闭源的也试过一些。总的来说,闭源的 Markdown 编辑器整个体验要比开源的好许多。所以,去年冬天开始谋划着写一个 KDE 下的 Markdown 笔记软件,顺带把编辑器的部分搞定。直到前段时间,才加上了一些个人比较需要的特性,在 KDE-Apps 上发布了出来(欢迎 Vote Up :))。界面还比较粗糙,不过大体的功能都已经具备。

核心观点

我觉得笔记应该以纯文本的形式存放在文件系统上,这样可以方便地用自己喜欢的编辑器编辑。另外,编辑 Markdown 的笔记的时候,大部分语法上的问题应该由语法高亮提示用户,把预览这种功能尽量用于成品的展示与阅读。

主要特性

Marketo 具备如下特性:

  • 在界面上可以复制粘贴笔记链接,用以跳转
  • 基于 Katepart,所以自带强大的Vim编辑模式
  • 支持 Fenced Code,且在编辑模式下,会根据代码的类型实时渲染
  • 使用自己维护的 Markdown Parser,支持 CommonMark 的大部分特性
  • 支持实时预览,编辑模式和预览模式同步滚动
  • 支持标签,且标签同时可以在 Dolphin 的显示和编辑

因为打算写一个比较纯粹的 CommonMark Parser,所以表格、数学公式这些不打算在 Markdown Parser 里面实现,未来可能以扩展形式在笔记软件的选择打开或者关闭。

至于第三点,没有理解什么意思的同学可以看这个图:

实时渲染

原本以为实时渲染的功能必须维护一个 Markdown Parser,再根据 Fenced Code 的类型,实时地分析并高亮各种语言的代码。其实不用,因为 Katepart 的语法高亮功能非常强大。只要自定义一个语法高亮的规则文件,就可以搞定了。老实说,自以为目前这个笔记软件的最大亮点就是 Katepart。如果你不喜欢目前这个粗糙的界面,不妨 Hack 一下我的语法高亮文件,直接用 Kate 就行了,不过是缺了预览而已。

后续开发

后续开发会关注在 Markdown Editor 和 Previewer 上。

有兴趣加入开发的同学可以看这里: https://github.com/sadhen/marketo

安装试用

建议从源代码安装,KDE-Apps 上面提供的deb包已经过时了。最新的源码在外观上为Ubuntu Unity用户做了一些改进。Arch用户直接从AUR安装就是了。

详细请参考安装指南

Tags: ,

5 FEEDBACKS

  1. 支持 ~~!!

  2. 现在已经支持 MathJax 数学公式了

  3. OwenChia

    Gentoo 用户现在可以从 gentoo-zh 这个 overlay 里安装了。

  4. 我制作了一个整合了 KaTex + MathJax 的包,自动调用 KaTex 渲染,如果出错回退到 MathJax。

    外加 HiDPI 缩放。

    感觉一个大问题是每次编辑重新渲染 ……

Leave a Reply

Your email address will not be published. Required fields are marked *

Note: Commenter is allowed to use '@User+blank' to automatically notify your reply to other commenter. e.g, if ABC is one of commenter of this post, then write '@ABC '(exclude ') will automatically send your comment to ABC. Using '@all ' to notify all previous commenters. Be sure that the value of User should exactly match with commenter's name (case sensitive).