Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

mdbook-lang

mdbook-lang是一个mdbook预处理器插件和多编程语言playground服务器,支持在浏览器中通过与playground交互、运行mdbook电子书嵌入的多种编程语言代码,并展示结果。而该playground服务器可以自行部署或本地部署,可以容易扩展到其他编程语言。

本软件受mdbookmdbook-repl启发,但mdbook基于https://play.rust-lang.org实现的playground,目前仅支持rust语言;而mdbook-repl主要支持pythonjavascripttypescript等解释型语言,两者都依赖在线playground服务器,使得mdbook支持的编程语言不易扩展。而本软件借助自主部署的编译器环境为mdbook电子书嵌入的多编程语言代码段架起浏览器和编译器之间的桥梁,且便于扩展,也给出了多电子书和沙箱安全等配置。

如下电子书中的C/C++代码,在安装了mdbook-lang主机环境中,是否让其提供支持的区别,使用mdbook-lang支持:

#include <iostream>
using namespace std;
int main() {
    cout << "Hello, World!" << endl;
    return 0;
}

不使用mdbook-lang支持:

#include <iostream>
using namespace std;
int main() {
    cout << "Hello, World!" << endl;
    return 0;
}

在启用mdbook-lang支持的代码中,以ACE Editor作为代码编辑器,可对其进行可配置的编辑、重置和运行等。您可以直接在浏览器中修改并执行代码,实时查看输出结果。如果您是教师为学生布置练习,还可以控制剪切、复制和粘贴等操作,并禁用浏览器调试功能,以实现更受控的教学环境。

本软件仍处于持续开发和优化中,未来将支持更多的编程语言。