Skip to content

代码块

Liii STEM 中与代码相关的内容分为三种环境,分别适用于不同的场景:代码块用于展示程序源码,算法环境用于排版伪代码,会话用于在文档内直接执行代码。

代码块

输入 \code 后回车插入纯文本代码块,或点击 插入程序代码块 选择具体语言。插入后在焦点工具栏可切换编程语言,支持 Python、Gnuplot、Maxima、C/C++、Java、Shell/Bash、JavaScript、Julia、SQL、Scheme 等。代码块会自动保留语法高亮与缩进。

如需在段落中插入行内代码,点击 插入程序行内代码 即可。

如果需要显示行号,在 \listing 环境内插入代码块即可。

算法环境

输入 \algorithm 后回车,或点击 插入程序算法 即可插入算法环境。在算法环境中,通过以下命令构建伪代码结构:

结构命令说明
语句\algo-state普通算法步骤
输入条件\algo-requireRequire
输出条件\algo-ensureEnsure
返回\algo-returnReturn
打印\algo-printPrint
注释\algo-comment注释(斜体)
条件判断\algo-ifIf 条件
否则如果\algo-else-ifElse If
否则\algo-elseElse
While 循环\algo-whileWhile 循环
For 循环\algo-forFor 循环
重复直到\algo-repeatRepeat-Until
过程\algo-procedureProcedure
函数\algo-functionFunction
调用\algo-call函数调用
逻辑与/或/非\algo-and / \algo-or / \algo-not逻辑运算符

此外还支持 \algo-for-all\algo-for-each\algo-loop\algo-begin\algo-inputs\algo-outputs\algo-data\algo-result\algo-xor\algo-to\algo-true\algo-false\algo-globals 等命令。

焦点工具栏可选择居中排版、是否编号,以及修改算法标题。

会话

点击 插入会话 选择语言即可插入可执行会话。在会话中输入内容后,按 Enter 或点击工具栏的运行按钮即可执行,结果会自动嵌入文档。其交互方式与 Jupyter Notebook 类似。

Liii STEM 支持 Python、Gnuplot、Maxima、Scheme、Elvish、Goldfish Scheme 等会话。其中 Python 会话支持 Matplotlib 2D/3D 图渲染、SymPy 公式输出和 Pandas 表格渲染。

选读:与 LaTeX 的对比

代码块在 Liii STEM 中通过 \code 后回车或菜单插入,焦点工具栏可切换语言。LaTeX 中使用 \begin{verbatim}...\end{verbatim}listings/minted 宏包。算法环境在 Liii STEM 中通过 \algorithm 后回车插入,内置伪代码命令。LaTeX 中需要 algorithmicxalgorithm2e 宏包。可执行会话是 Liii STEM 的特色功能,LaTeX 不支持在文档中直接执行代码。