summaryrefslogtreecommitdiff
path: root/src/typeset.rs
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@digital-scurf.org>2021-01-16 11:54:54 +0000
committerDaniel Silverstone <dsilvers@digital-scurf.org>2021-01-16 11:54:54 +0000
commitac032d01f41ad8da67ccaae35bf8cfd62054683a (patch)
treeb2b3b4ea20a96f2a505c2cc579dc250676b82d83 /src/typeset.rs
parente5ae0c58c64de7f6304aa144f502d8fe88de9e68 (diff)
downloadsubplot-ac032d01f41ad8da67ccaae35bf8cfd62054683a.tar.gz
typeset: recognise noNumberLines to invert default numberLines
Signed-off-by: Daniel Silverstone <dsilvers@digital-scurf.org>
Diffstat (limited to 'src/typeset.rs')
-rw-r--r--src/typeset.rs10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/typeset.rs b/src/typeset.rs
index c421e58..a30df6f 100644
--- a/src/typeset.rs
+++ b/src/typeset.rs
@@ -32,7 +32,15 @@ pub fn file_block(attr: &Attr, text: &str) -> Block {
let filename = inlinestr(&attr.0);
let filename = Inline::Strong(vec![filename]);
let intro = Block::Para(vec![inlinestr("File:"), space(), filename]);
- let codeblock = Block::CodeBlock(attr.clone(), text.to_string());
+ let mut cbattrs = attr.clone();
+ if cbattrs.1.iter().any(|s| s == "noNumberLines") {
+ // If the block says "noNumberLines" we remove that class
+ cbattrs.1.retain(|s| s != "noNumberLines");
+ } else if cbattrs.1.iter().all(|s| s != "numberLines") {
+ // Otherwise if it doesn't say numberLines we add that in.
+ cbattrs.1.push("numberLines".to_string());
+ }
+ let codeblock = Block::CodeBlock(cbattrs, text.to_string());
let noattr = ("".to_string(), vec![], vec![]);
Block::Div(noattr, vec![intro, codeblock])
}