diff --git a/public/index.html b/public/index.html
index 2706ede6324cd7347cb100d63272e6e1f7e4911c..a04ba84f2c001495fa44b3c361db9eea8fd51f1a 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*$/, '');