【重要】For contributers

鸣谢

衷心感谢以下参与者对本指南的贡献。

Made with contrib.rocks.

贡献指南

若希望对CSBasicKnowledge进行贡献,请以SUMMARY.md为大纲,在src文件夹下进行markdown文件的添加即可。

目前,mdbook对数学公式的支持还不完善,如您需要使用数学公式,请参考下面的数学公式支持部分。

(可选) 如果您在部署了mdbook并运行后,可以直接在SUMMARY.md中添加章节,例如:

# CSBasicKnowledge

- [example](./example/example.md)

mdbook会自动创建example文件夹和example.md文件。 当然,mdbook依赖于rust语言开发,如果您不喜欢rust相关内容,可以无视可选项及后续的本地部署部分。

数学公式支持

注意: MathJax 目前仍不能使用 $$ ... $$ 作为分隔符,并且 \[ ... \] 分隔符需要额外的反斜杠才能工作。 希望这个限制很快能解除。

注意: 当您需要在 MathJax 块中使用双反斜杠(例如 \begin{cases} \frac 1 2 \\ \frac 3 4 \end{cases} 等命令中)时,您需要添加两个额外的反斜杠(例如,\begin{cases} \frac 1 2 \\\\ \frac 3 4 \end{cases})。

行内公式

行内公式由 \\(\\)包围。例如,要渲染以下行内方程 \( \int x dx = \frac{x^2}{2} + C \),可以这么写:

\\( \int x dx = \frac{x^2}{2} + C \\)

块公式

块公式由 \\[\\]分隔。 要渲染下面这个块公式

\[ \mu = \frac{1}{N} \sum_{i=0} x_i \]

可以这么写:

\\[ \mu = \frac{1}{N} \sum_{i=0} x_i \\]

本地部署

CSBasicKnowledge的bookfy基于mdbook实现,该工具基于Rust开发,是markdown文件书本化非常值得推荐的工具。Rust的圣经 The Rust Programming Language 便是利用了mdbook生成的。

要安装mdbook请安装Rust相关工具链。随后,通过Rust的包管理器cargo进行mdbook的安装:

cargo install mdbook

通常,mdbook会安装在$HOME/.cargo/bin,请将该目录添加至PATH

mdbook的运行非常简单,只需要:

# For detail, run `mdBook serve -h`
mdbook serve            # default 127.0.0.1:3000
mdbook serve -p 8080    # 127.0.0.1:8080