From e6af8bc92a67578c4f37328e82b5869cfec8e5ff Mon Sep 17 00:00:00 2001
From: Johann150 <johann.galle@protonmail.com>
Date: Sat, 28 Aug 2021 12:03:01 +0200
Subject: [PATCH] hashtag can not include XML tags (#74)

---
 src/internal/parser.pegjs | 2 +-
 test/parser.ts            | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/internal/parser.pegjs b/src/internal/parser.pegjs
index fda5a19..cfe6778 100644
--- a/src/internal/parser.pegjs
+++ b/src/internal/parser.pegjs
@@ -355,7 +355,7 @@ hashtagBracketPair
 	/ "「" hashtagContent* "」"
 
 hashtagChar
-	= ![  \t.,!?'"#:\/\[\]【】()「」] CHAR
+	= ![  \t.,!?'"#:\/\[\]【】()「」<>] CHAR
 
 // inline: URL
 
diff --git a/test/parser.ts b/test/parser.ts
index 88d62cd..72bef4c 100644
--- a/test/parser.ts
+++ b/test/parser.ts
@@ -716,6 +716,12 @@ hoge`;
 			assert.deepStrictEqual(mfm.parse(input), output);
 		});
 
+		it('ignore angle bracket', () => {
+			const input = '#foo<bar>';
+			const output = [HASHTAG('foo'), TEXT('<bar>')];
+			assert.deepStrictEqual(mfm.parse(input), output);
+		});
+
 		it('allow including number', () => {
 			const input = '#foo123';
 			const output = [HASHTAG('foo123')];
-- 
GitLab