技术学习笔记管理方案——Org mode + Github

许多年来我从 EverNote 到 OneNote,中途还陆陆续续试过其他知名或不知名的平台,都没一个满意。用的时间最长的是 OneNote,有四年多,笔记存了近百兆,但随之而来就是莫名卡死和崩溃、同步非常慢、还因为同步慢问题导致笔记中老出现冲突;体验上来说,网页版特别难用,不得不去 Windows 虚拟机装个臃肿的客户端,记代码也不方便。

其实,大家也总是不断地在寻找更强大的软件来记技术笔记,要求也颇多,要代码能高亮、支持 Markdown、能够云端同步、还支持 Vim 快捷键等等。我自己总结了下需求:

其他的,关于收不收费这些都不太重要,只要价格在可接受范围内。

如果你也是遇到类似问题和烦恼,没关系,我来安利一波我的方案——Org mode 和 Github 的强大组合。

什么?要用 Markdown?不好意思,试下 Org mode 吧。

我的每日生活离不开 Emacs 和 Org mode,写笔记、编程、任务管理等等。

方案很简单,写笔记用 Org mode。笔记里编辑点代码、高亮点代码啥的完全不是什么事,看图:

1.png

你只需要做的就是本地新建个文件夹存放笔记,按自己的习惯做好目录划分就是了,也可以参考上图,图中左侧的目录划分也正是我博客的内容。

接下来,在 Emacs 中装个 neotree 插件,就可以实现上图中左侧的目录树展示了。为了方便,我还在 Emacs 启动文件中自定义了一个函数:

(defun my-notes ()
  (interactive)
  (neotree-dir "/my/Notes"))

有了这个函数,每当想写笔记时,就在当前 Emacs 执行:M-x my-notes 即可。

最后,去 Github 新建个私有仓库,把笔记同步上去就是了。每次写完后就 push 一次。

Github 也支持 *.org 文件的渲染,所以网页上浏览起的效果也很不错的。

关于移动端的支持

移动端直接访问 Github 就是了。万不得已需要修改笔记,也支持在线编辑,只不过对我而言,不需要在手机或者 iPad 上干写技术笔记这回事。

关于笔记检索

本地检索直接用 grep 命令,或者 Emacs 里:M-x find-grep 就是了;网页上就用 Github 自带的搜索就行了。