diff options
author | lonkaars <loek@pipeframe.xyz> | 2023-01-26 09:52:08 +0100 |
---|---|---|
committer | lonkaars <loek@pipeframe.xyz> | 2023-01-26 09:52:08 +0100 |
commit | f0a3122d720f3f959e465b7b40e8338d6f62829b (patch) | |
tree | f51dbb226d254ed3113412305f15bfe907e56de6 /anki-card-template/card.js | |
parent | 0456e3813e84378f2bb8cece6ce3d0b9a9bb7d29 (diff) |
inline spoilers, indicator stamps, and smaller japanese in indicators
Diffstat (limited to 'anki-card-template/card.js')
-rw-r--r-- | anki-card-template/card.js | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/anki-card-template/card.js b/anki-card-template/card.js index b538664..f723d76 100644 --- a/anki-card-template/card.js +++ b/anki-card-template/card.js @@ -88,6 +88,8 @@ function parseIndicators(nodes) { var input = node.data; var indicator = false; // indicator is open + var content = ""; // indicator content + var stamp = ""; // filled if indicator has stamp var out = ""; for (var i = 0; i < input.length; i++) { // escape characters preceded by \ @@ -95,12 +97,22 @@ function parseIndicators(nodes) { var escaped = input[i+1]; if (escaped == "[") { out += "["; i++; continue; } if (escaped == "]") { out += "]"; i++; continue; } + if (escaped == "-" && indicator) { content += "-"; i++; continue; } } if (input[i] == "[") { indicator = true; out += `<span class="indicator">`; continue; } - if (input[i] == "]" && indicator) { indicator = false; out += `</span>`; continue; } + if (input[i] == "]" && indicator) { + indicator = false; + if (stamp) out += `<span class="stamp">${stamp}</span>`; + out += `${content}</span>`; + content = ""; + stamp = ""; + continue; + } + if (input[i] == "-" && indicator) { stamp = content; content = ""; continue; } - out += input[i]; + if (indicator) content += input[i]; + else out += input[i]; } node.data = out; } |