mdBook 代码折行(wrap)
mdBook 是一个基于 Rust 的文档网站生成工具。虽然 mdBook 中有代码高亮,可编辑代码等特性,但是默认情况下不支持代码折行的设定。在代码行或注释较长的时候,用户需要手动左右移动,体验不佳。
查阅文档可知,mdBook 使用的是 Ace Editor。再查询 Ace Editor 的文档,可以发现通过 editor.getSession().setUseWrapMode(true);
启用折行。
在 mdBook 生成的 book 文件夹中,可以找到 book.js
文件,在 line 6 开始进行如下修改,手动设定 editor 属性即可。
// Global variable, shared between modules
function playground_text(playground) {
let code_block = playground.querySelector("code");
if (window.ace && code_block.classList.contains("editable")) {
let editor = window.ace.edit(code_block);
// CODE ADDED BEGIN
editor.getSession().setUseWrapMode(true);
// CODE ADDED END
return editor.getValue();
} else {
return code_block.textContent;
}
}