diff --git a/src/internal/parser.pegjs b/src/internal/parser.pegjs index fda5a19b821d77a7f3060ef6464a593f47f05592..cfe67788480772548db51a44d32765183aef9b35 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 88d62cd8dab9953b082ab72e3e8261c4aea0270c..72bef4c4eaa78e200fba8127f23b78bdc36c254d 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')];