Editor
In addition to providing runnable code playpens, mdBook optionally allows them to be editable. In order to enable editable code blocks, the following needs to be added to the book.toml:
[output.html.playpen] editable = true
To make a specific block available for editing, the attribute editable
needs to be added to it:
```rust,editable fn main() { let number = 5; print!("{}", number); } ```
The above will result in this editable playpen:
fn main() {
let number = 5;
print!("{}", number);
}
Note the new Undo Changes
button in the editable playpens.
Customizing the Editor
By default, the editor is the Ace editor, but, if desired, the functionality may be overriden by providing a different folder:
[output.html.playpen] editable = true editor = "/path/to/editor"
Note that for the editor changes to function correctly, the book.js
inside of the theme
folder will need to be overriden as it has some couplings with the default Ace editor.