R bookdown 用扩展的 Markdown 语法来写书,可以很方便地导出 Word 格式,虽然不完美,但只需稍微调一下样式,就是一个漂漂亮亮的文档。但是,如果在 Word 里做了修改,想转回 Markdown 该怎么办?
多年来,我一直奢望能找到这样一款软件,哪怕是把 Word 转成 LaTeX 也行。随着时间的流逝,希望却是越来越渺茫; 我越来越深信,这样的软件过去不曾有,现在还没有,将来永远都不会有。因为,逻辑上是不可能实现的。
Markdown 和 LaTeX 能相互转换,是因为两者都是标记语言,是逻辑上有对应关系的。Markdown 里的标题标记#
,翻译成 LaTeX 标记就是\section{}
; Markdown里的粗体标记** **
,翻译成 LaTeX 标记就是\textbf{}
。这就是所想即所得,大家虽然你说英语我说德语,但想法是一样的,只要有本字典,以词为单位互换,那么大体意思就能通。想完美的话,根据各自的语法规则调整调整就行了。
但是 Word 不是这样的。你看见一个大字体加粗的词,看上去像是标题,乐观一点可能是用 Word 的标题样式设置的,一般情况下是用户把正文样式的文字直接点加粗换字号得到的,悲观一点说不定是插入的文本框或图片……所见即所得,你永远猜不透一个大字体背后的逻辑是什么。这就好比你说英语而我画了一幅水墨山水画,你猜我是什么意思?你猜我大量的留白该翻译成那句英语?就像小说《三体》里说的:
教授挂出了两幅大图片,一幅是画面庞杂精细的《清明上河图》,另一幅是一张空旷的天空照片,空荡荡的蓝天上只有一缕似有似无的白云。教授问这两幅画中哪一幅所包含的信息量更大,答案是后者要比前者大一至两个数量级!
Word 的一个简单格式背后,藏着的信息量比 Markdown 大几个数量级,你怎么转换?
Markdown 跟 LaTeX 对话,就像男人跟男人对话,说什么就是什么; Markdown 跟 Word 对话,就像男人跟女人对话,男人永远猜不透女人到底是哪层意思。所以还是歇了吧。
那么,难道 Markdown 永远理解不了 Word 吗?
也不是。我觉得等人工智能成熟的时候就可以了。你只需吩咐一句“小A,把这篇Word 书稿转换成 Markdown,我要在 R bookdown 里修改”就行了。
但人工智能可能会回答你:“主人,我已经全部帮你把书改好并且已经出版了。”