大家好,我是 Tomi (@tommyecguitar),是制造业的软件开发工程师。
以前在公司做个文档解释交付成果,当时我也试过用 Markdown 排版,所以我想总结一下我是怎么用的,哪里出了问题,优点和缺点。
有很多博客是用 Vivliostyle 排版的,所以请到那里看看它的样子。Vivliostyle 网站请看。
Word还不够吗?
在制造业中创建长文档时,我认为有很多地方通常是多人编辑Word。
但是Word有很多缺陷。
- 在团队内共同编辑时,编辑的部分会消失,或者字体和设计由于某种原因不统一。
- 即使您为每个部分划分职责,合并也将是手动的。
至于前者,如果你将Word设置为共享,并尝试在团队内同时编辑,编辑的内容消失的情况并不少见,可能是因为保存的时间问题。还有,Word有统一设计的功能,但是不知为什么,有些字体变得奇怪,颜色也变了,所以设计管理比较费劲。
那么,即使你按照职责范围划分文件,然后再把它们放在一起,合并也会手动完成,无法消除人为错误。由于某种原因,我前面提到的设计问题出现了。
正因为如此,在Word中编辑一个多人的长文档需要格外注意,而且很麻烦!还有什么可以做的吗? ?它变成了
Markdown 可以用 CSS 样式化!GitHub 也可以用于合并!
所以我转向 Markdown。
Markdown 是一种用标签和参数编写句子的方法,如下图所示,编写时只指定句子的结构,而不考虑设计。 (这被称为标记语言,它就是其中之一。)
降价示例# 見出し1 ## 見出し2 ### 見出し3 何もタグがなければ本文  [リンク名](リンクURL)如果只是 Markdown,设计比较平淡,但是 VSCode 有 Markdown Preview Enhanced 等扩展,稍微研究一下,就可以相对轻松地编辑设计。
这样一来,编辑器和设计就完全分离了,只要结构写得好,以后就可以对设计进行综合管理了。这解决了Word设计因某种原因而改变的坏处。
Markdown 的另一个好处是你可以将它与 GitHub 合并。 Word 做不到,所以是手动合并,但是如果用 GitHub 能做到,合并的时候就不用盯着每一句话。
Markdown + Markdown Preview Enhanced 简单又强大!?
首先,我寻找可以改变 Markdown 外观的 VSCode 扩展。
其中,Markdown Preview Enhanced 表现最好。目前,第一个挑战是用这个写一个测试手稿。此扩展允许您指定自定义样式,如果您有一些 CSS 或 Tailwind 知识,您可以指定基本设计。易用性相当高,默认样式也很酷,所以从这个意义上说它可能是最强的。
但是,Markdown 也有一些不好的地方。
就是这样的Markdown,但是能不能做到和Word一样的事情就不好说了。比如当你想给一个图加标题或者调整图的大小时,不能用Markdown表示法写,所以突然要在Markdown中写一个html的img标签。
没关系,但是从整体设计的角度来看,样式可能不会仅反映在该图表中,因此我希望尽可能避免它。
因此,我想编写一个样式规范扩展,即使直接编写html也可以处理,如果可能的话,至少在Markdown中进行标题大小规范。
那是我发现 Vivliostyle 的地方。
当我查找它时,我发现那里有人用 Markdown 写书。
其中有很多人使用了一个叫做 Vivliostyle 的工具,所以我考虑介绍它。符号是 VFM
在 Vivliostyle 中,为了解决 Markdown 发痒的部分,视觉调频使用符号。基本和Markdown一样,但是可以很方便的指定class,不用直接写html就可以指定图的caption和size。
(它并不完美,但比 Word 的可编辑性要好。)VFM 示例# クラス指定はこうする{.class-name} # idはこうする{#id-name}使用 SCSS 进行样式设置。您可以更改每个页面的样式。
具体使用方法可以看官网和各种人的博客,不过是指定样式的方便的地方。
Vivliostyle 基本上将每一章的 Markdown 文件分开。它不一定是那样,但它似乎应该是可操作的。
例如,通常希望将封面、目录和文本的设计分开。与以前一样,类指定没有问题,但 Vivliostyle 允许您将这个 CSS 应用于封面,并将另一个 CSS 应用于文本。 Markdown Preview Enhanced 等知名扩展无法做到这一点。轻松的 PDF 输出
无论是 Markdown Preview Enhanced 还是 Word,在转换为 PDF 的时候都有些令人沮丧。
- 字
- 画质很烂
- 字体嵌入可能失败
- 我不能使用 svg 太糟糕了
- Markdown 预览增强
- 背景可能无法导出
- 字体可以被替换
与此相比,Vivliostyle 目前已经解决了所有问题。
我自己先试过
暂时我也是第一次使用,所以一边参考了各种博客,一边尝试了Create Book。
这篇文章会有所帮助。把 Node.js
据说使用 Vivliostyle 需要 Node.js 10.0 或更高版本,所以我安装了它。
现在可以用npm了,但是最近有资料说yarn比较好,所以
npm install -g yarn我把它放进去。之后,您可以将 npm 替换为 yarn。
安装 Vivliostyle CLI
通过在终端中键入以下命令来安装 vivliostyle。
npm install -g @vivliostyle/cli创建图书
移动到要创建文档的目录并执行以下操作以创建所有必要的文件。
npm create book <directory>系统会要求您输入设置,但请参阅上一篇文章。
在这里你会被要求选择一个风格主题,所以选择一个你喜欢的。我认为一本学术技术书会很好。我使用学术主题 theme-academic。
复制主题
要创建自定义主题,很容易将其基于默认主题。
默认主题是./node_modules/@vivliostyle/theme-xxxx,所以复制它并粘贴到你喜欢的地方。最好把它放在文档目录的某个地方。我直接放在文档目录下。就像这样。- 图书目录
- node_modules
- theme-academic(我刚刚复制的那个)
- .gitignore
- 许可证
- manuscript.md
- package.json
- 自述文件.md
- vivliostyle.config.js
- (使用 yarn 产生 yarn.lock。)
定制现已完成。
如何以团队的形式运营 Vivliostyle
这是关键时刻。
为了在团队中进行操作,我们必须让其他人可以轻松创建环境,因此我们必须删除不必要的文件并使其尽可能易于使用。看文件夹结构
此时的文件夹结构如上所述。
theme-academic 的内容是这样的。- 主题-学术
- 示例
- scss
- 更改日志.md
- 许可证
- package.json
- 自述文件.md
- theme_common.css
- theme_common.css.map
- theme_print.css
- theme_print.css.map
- theme_screen.css
- theme_screen.css.map
- vivliostyle.config.js
example 有一个手稿的 Markdown 示例,而 scss 有一个 scss 文件。 *.css 是将这些 scss 编译为 css 的结果。
这里,CHANGELOG.md、LICENCE、package.json、README.md、vivliostyle.config.js 与父文件夹的内容重叠。 CHANGELOG.md、LICENCE 和 README.md 与文档创建无关,因此如果不需要,可以将其删除。
package.json 和 vivliostyle.config.js 的内容与父文件夹不同。
vivliostyle.config.js是创建文档的配置文件,所以theme-academic中的那个是从example创建的配置,父文件夹是从manual.md创建的文件。对于您的团队想要创建的文档,您不需要多个配置文件,所以最后,只需要一个就可以了。
package.json 是一个文件,它总结了包含文档生成所需的包的设置以及可用于使用 npm 和 yarn 生成文档的命令。在没有任何包的环境中,
npm install将读取 package.json 的内容,安装必要的包,并将它们放在 node_modules 文件夹中。
在这里,我对比一下父文件的package.json和theme-achademic,theme-achademic里面的那个功能比较多,所以决定用那个。
如果你仔细想想,你可以用theme-academic中的文件来完成它。
正如您现在可能已经猜到的那样,theme-academic 中的文件就是您所需要的。
因此,虽然我创建了一本书,但我会全部删除。 (微笑)摆弄设置。
我从父文件夹中删除了除了 theme-academic 之外的所有内容,现在 theme-achademic 是顶层目录。
我还删除了不必要的文件并使其成为这样。 (css是在构建时生成的,所以不是必需的。)
- 图书目录
- md(重命名示例)
- scss
- package.json
- vivliostyle.config.js
哦简单
摆弄 package.json
这个因人而异,但是如果你改变上面的文件夹结构,你必须改变package.json中的设置。尤其是
build脚本的sass系列文件夹名称、files值等。这取决于这里的人,所以请尽力而为。摆弄 vivliostyle.config.js
这是装订设置,请参考官方文档进行设置。
尽可能仔细地编写 README
我想这是因为我们是在制造业,但是有很多人习惯了Word,不使用Markdown来创建文档。
幸运的是,这很容易,因为我刚刚安装了 Node.js 并在途中完成了
npm install。在 GitHub 上!
在这个状态下在 GitHub 上管理它。你做到了。
Vivliostyle 也有它的缺点。
方便的 Vivliostyle 仍然有其缺点。
好像还有更新的计划,所以新建文档的时候应该检查一下。重置计数器有点困难
到目前为止,第一个不便之处是难以重置计数器。
我认为你用css写计数器设置来设置章节号和子号,但取决于你在重置数字时是否写@page,它可能会或可能不会正常工作......标题的符号仍然
图像说明现在更容易了,但表格说明似乎还没有在 VFM 中。
没办法,只能直接写html了。毕竟它是基于 Markdown 的,所以想到它在某种程度上是无济于事的并使用它会很好。
- 字
原创声明:本文系作者授权爱码网发表,未经许可,不得转载;
原文地址:https://www.likecs.com/show-308626139.html