对于稍微篇幅长一点的或者经常有公式和参考文献这种编号会变化的内容的写作来说,仅仅使用纯文本(text)的标记语言远远比隐藏了大量格式说明的“所见即所得”的文字编辑器方便。
当然,最成功和万能的是\(\LaTeX\),mediaWiki也很好,HTML也不错,Markdown语法更简单(注意,就算后面三者,实现数学公式的时候还是靠一个叫做MathJax的依赖\(\LaTeX\)语法的软件)。很早以前的WPS其实也是标记语言,后来就跟堕落的Word学习了这种——适用于不想深入一点学习结构化写作和一点点语法的用户,适用于写纯文字的短文章的用户的——所见即所得。结构化写作,先布局整体结构,再来补充细节,是能够启发你的思考的写作方式。任何人都应该优先尝试一下结构化写作,而不是顺着思路往下写。
对于不需要数学公式,但是还是需要参考文献以及结构化写作的用户来说,\(\LaTeX\)可能学习成本太高,也不太有必要。那是不是可以用Markdown来写书呢?这是可以的,例如“简书”和”Gitbook”就是一个可以用Markdown写书的网站。但是,对于一个团队,可能其中一部分成员已经习惯了用\(\LaTeX\),另一部分习惯用Markdown。怎么办呢?
当然,很早就有人来做三者之间的转换,例如pandoc。不过,很少有软件,并且是在Web端的不需要安装到本地的软件,能够让你直接把其中的两种甚至三种混合起来使用。Web端的软件第一是不用安装维护,第二是方便多人协作,如果还能提供版本管理功能就更好了。
现在,Web端\(\LaTeX\)写作平台Overleaf,就提供了这样一个实现(当然还有待于进一步提高,例如,除了PDF,如果最终能够输出成markdown或者\(\LaTeX\)格式就更好了):通过使用markdown.sty宏包,可以在\(\LaTeX\)中同时使用\(\LaTeX\)和markdown。具体可以参考这里的模板:
https://www.overleaf.com/learn/latex/Articles/How_to_write_in_Markdown_on_Overleaf
https://www.overleaf.com/learn/latex/Articles/Markdown_into_LaTeX_with_Style