Huaiyao Jin

Huaiyao Jin

实现一个需求

最近看 sqlserver 官方文档的 pdf,越看越觉得其中的知识点十分繁杂,众多分支无穷尽焉,让人心生畏惧。

于是想着能不能有个工具,可以把 pdf 里的大纲提取出来,并且能够标记完成度,这样能有信心一点一点去学习,逐渐拨开层层迷雾。

一顿谷歌,发现没有现成的工具可以一步到位实现需求。不过搜索过程中发现了 OmniOutliner,试用了一下,发现它界面精美,可以展示大纲并且可以标记,完美符合我的需求。

剩下的问题就是如何把 pdf 文档里的大纲导出然后导入 OmniOutliner 了。

又是一番搜索,找到了 mupdf,这个工具可以导出 pdf 大纲。

虚拟机 Windows 里运行

c:\mupdf-1.20.0-windows>mutool.exe show SQLServer.pdf outline >b.txt

2

Mac 里处理一下多余的字符

去掉右面的 #page=xxx

vi b.txt

:1,$s/#page.*$//g

3

:set list

4

去除左面多余 |tab 和 -tab 以及所有的双引号

:1,$s/|^I//g

5

:1,$s/-^I//g

6

:1,$s/"//g

7

:set nolist

8

搞定!

导入 OmniOutliner,看成果图,完美。

9