From 67b456dcd2bbf864985bb9ca901572e06dc651cc Mon Sep 17 00:00:00 2001 From: Julian Rother <julian@cccv.de> Date: Sat, 25 Sep 2021 20:39:52 +0200 Subject: [PATCH] Support for HedgeDocs user syntax --- public/index.html | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/public/index.html b/public/index.html index 2706ede..a04ba84 100644 --- a/public/index.html +++ b/public/index.html @@ -140,6 +140,28 @@ const renderer = { }; marked.use({renderer}); +/* [name=USERNAME] */ +const userLink = { + name: 'userLink', + level: 'inline', + start(src) { return src.match(/\[name=/)?.index; }, + tokenizer(src, tokens) { + const rule = /^\[name=([^\]]+)\]/; + const match = rule.exec(src); + if (match) { + return { + type: 'userLink', + raw: match[0], + username: match[1].trim(), + }; + } + }, + renderer(token) { + return `--- //[[user:${token.username}]]//`; + } +}; +marked.use({extensions: [userLink]}); + function convert_text() { let input = document.getElementById("text-input").value; let output = marked(input).replace(/\n\n\n*/g, '\n\n').replace(/^\n*/, '').replace(/\n*$/, ''); -- GitLab