用 markdown 文档完全替代 word 文档的可行性

2019-06-18 20:09:25 +08:00
 shijingshijing

目前公司正在讨论后续文档管理的策略,在方案选型的时候,在 word 和 markdown 之间有些犹豫。

主要是分析了现有文档管理情况,然后考虑新项目的文档如何管理。大致情况如下:
1.硬件团队的嵌入式的代码直接使用文本文件的 README,甚至用 ASCII 化简图(有非常 nb 的老工程师在驱动代码文件头部用 ASCII 拼除了芯片引脚和寄存器移位的示意图,这种只能膜拜,绝壁是不能动的)。
2.软件团队内部主要使用 Sphinx,部分 java 代码相关的用 javadoc。
3.系统架构、需求方面以 word 文档为主,有不少内嵌的 UML 截图,visio 截图。
4.测试文档也是用的 word 编写,测试用例主要是 excel 模板管理,测试报告也是 excel 套 word 模板生成的,一边测一边填 excel,测完运行一个宏直接生成。
5.用户手册也是用的 Word 模板,然后人工编写。
6.各个部门内部有一些比较好的经验分享类的文章,也是用 word 编制的,很多都是图文并茂。

现在的主要问题是这些文档都是独立的文档,公司想把这些文档做成某种能够在线检索的知识库,同时还要考虑以下问题:
1,去微软化,彻底替换 word,而且不考虑 WPS,文档格式需要能够完全透明,根据自己的需要检索、解析或者批量处理,能用 git 进行版本管理。
2,显示输出要保持同类型 word 文档的层次和条目,不能跟以前老项目的文档看起来有很大不同,细微的差别可以接受。
3,必须能够像 word 那样在 A4 纸上分页打印输出,同时如果在线查看也能像 HTML 那样连续输出一整篇。
4,能够导出成 pdf 作为离线的电子版发布。
5,一篇文章作为一个文件,图片必须内嵌到文章里,不能以链接的方式单独存放。
6,支持离线编辑,支持图文混和编辑,所见即所得。

我已经在 word 上面做了大量尝试,包括使用 sharepoint 来进行版本管理,这套方案还是太厚重了,sharepoint 的版本管理和 git 还不太一样。另外在网上看见有方案是用 BASE64 编码图片然后内嵌到 markdown 文档里面,不知道较大的图片是否可行。文档格式方面其实没有特别复杂的需求,刚性的主要是图文混排,分段,加粗加黑,缩进这些,word 和 wps 的格式其实已经太复杂了,很多功能用不上。

大家有没有其他好的实践,希望能分享一下。

11423 次点击
所在节点    程序员
66 条回复
creanme
2019-06-18 20:16:25 +08:00
要不试试语雀?
gtlions
2019-06-18 20:32:48 +08:00
在一个 api 项目(几十个接口)中开始推广和使用 md,一直到现在,还行,技术类文档一般没啥问题
shijingshijing
2019-06-18 20:42:28 +08:00
@creanme 忘记说了,不能依赖任何外网的云服务。github 都不行。
dreamertn9527
2019-06-18 20:46:31 +08:00
base64 可行的,不过缺点是文件越大,越长。占用了不少编辑行。我有道云上的图片全是 base64 转的。
Nasei
2019-06-18 20:50:05 +08:00
一个图文混排原生 md 就不行了
ztcaoll222
2019-06-18 20:51:41 +08:00
markdown 对表格的支持并不完善, 比如分行, 合并, 除非写 html
tamlok
2019-06-18 20:52:57 +08:00
vnote and viki
shijingshijing
2019-06-18 20:59:22 +08:00
@dreamertn9527 我也比较好奇微软是怎么把 doc 文件里面图文混排做的这么厉害的。我看过有 BASE64 方案是把所有图片放在文章最后,然后正文中用 id 替换。

还没尝试过 LaTex,感觉这个只会更麻烦。。。
lithiumii
2019-06-18 21:01:50 +08:00
3 和 4,导出和分页反正不难,markdown 用 pandoc 转 pdf 或者 docx 都挺完美的(完美的意思是足够支持我大学时候的论文排版需求)
别的就不懂了
shijingshijing
2019-06-18 21:04:29 +08:00
@Nasei 所见即所得和图文混排主要是有很多非程序员需要使用,比如系统工程师编写系统分析文档,客户服务工程师编写用户手册,word 还是有优势的。
Nasei
2019-06-18 21:19:31 +08:00
@shijingshijing 是呢, 当然通过 html 怎么都能弄, 但拓展和标签加多了真的很麻烦, 第三方工具坑也多, 有段时间我甚至用 md 写 ppt 画流程图, 现在还是 office 走起
Vamposine
2019-06-18 21:25:23 +08:00
内部文档系统,是不是可以考虑内网搭个 confluence ……或者类似 gitbook 这样的
shijingshijing
2019-06-18 21:31:03 +08:00
@Vamposine 是的,这种类 wiki 的其实解决方案还是很多的,我们的难点在与离线编辑和图文混排,还要做到能够在线分享且能够版本管理。
uhian
2019-06-18 21:47:50 +08:00
MarkDown 让我想起 dos 时代的 WPS,顺带想起了 CCED,中文之星……
jorneyr
2019-06-18 22:14:08 +08:00
不要折腾了,还是用 word 吧!
iyaozhen
2019-06-18 22:19:26 +08:00
@shijingshijing 内网 Wiki 速度差不多能当本地 word 用了
alinwu05
2019-06-18 22:20:02 +08:00
非技术人员用 md 很困难的,不要太理想化了
jdhao
2019-06-18 22:26:02 +08:00
Markdown 复杂排版还是不行,楼上说的表格就是一个弱项,只能处理比较标准的表格,一旦涉及到单元格合并等等,就不行了。另外图片的并列等,也不太好弄,只能 hack。

我最近在写一个文档,就是用 Markdown,然后使用 pandoc 转为 PDF,就需要用到 LaTeX 的一些知识,我自己懂,所以还好,你要做出精美的文档,不懂 LaTeX 是不太行的,但是让普通人学习 LaTeX,感觉难度比较高,不太好推广。

我写了一篇从 Markdown 生成 PDF 的博文,把所有能想到的问题和坑都写了,地址在 https://jdhao.github.io/2019/05/30/markdown2pdf_pandoc/

楼主可以试一下,遇到问题可以交流一哈
jdhao
2019-06-18 22:28:42 +08:00
@jdhao 另外关于图片的存储,既然你有 git,可以把图片和 Markdown 源文件放在一个 project,然后 Markdown 直接引用,生成 PDF
love
2019-06-18 22:35:54 +08:00
图片干嘛要和文本放在一起,没道理,操作修改和 diff 都不方便。
表格复杂的直接在 md 里写 html 不就完事了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/575242

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX