1 unstable release
0.1.0 | Mar 30, 2024 |
---|
#1914 in Text processing
37KB
880 lines
mdbook-shiftinclude
A preprocessor for mdbook for including portions of files, but with the contents of the file shifted.
The {{#shiftinclude }}
command extends the
syntax of the normal {{#include }}
command to
include a shift indicator. This is followed by a colon, and then the normal include
syntax follows.
- A number, indicating the amount to shift.
- A positive number shifts right by prepending that number of spaces to each line.
- A negative number shifts left by removing that number of characters from the start of each line (regardless of whether they are spaces or not!).
auto
, which indicates that any block of whitespace that is common to all (non-empty) lines in the included text will be removed.
So for an input file somefile.txt
:
Indent
More Indent
Back
The following outputs are possible:
{{#shiftinclude auto:somefile.txt}
givesIndent More Indent Back
{{#shiftinclude 2:somefile.txt}
givesIndent More Indent Back
{{#shiftinclude -2:somefile.txt}
givesIndent More Indent Back
{{#shiftinclude -4:somefile.txt}
givesdent More Indent ck
Installation
To use, install the tool
cargo install mdbook-shiftinclude
and add it as a preprocessor in book.toml
:
[preprocessor.shiftinclude]
Dependencies
~13–24MB
~349K SLoC