diff options
Diffstat (limited to 'src/mfm/parser.ts')
| -rw-r--r-- | src/mfm/parser.ts | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mfm/parser.ts b/src/mfm/parser.ts index 1d72496a67..6b7c3c5845 100644 --- a/src/mfm/parser.ts +++ b/src/mfm/parser.ts @@ -92,6 +92,7 @@ const mfm = P.createLanguage({ r.big, r.small, r.spin, + r.jump, r.bold, r.strike, r.italic, @@ -126,6 +127,7 @@ const mfm = P.createLanguage({ r.emoji, r.mathInline, r.spin, + r.jump, r.text ).atLeast(1).tryParse(x), {})), //#endregion @@ -154,6 +156,15 @@ const mfm = P.createLanguage({ ).atLeast(1).tryParse(x), {})), //#endregion + //#region Jump + jump: r => + P.regexp(/<jump>(.+?)<\/jump>/, 1) + .map(x => createTree('jump', P.alt( + r.emoji, + r.text + ).atLeast(1).tryParse(x), {})), + //#endregion + //#region Block code blockCode: r => newline.then( @@ -189,6 +200,7 @@ const mfm = P.createLanguage({ r.big, r.small, r.spin, + r.jump, r.bold, r.strike, r.italic, @@ -240,6 +252,7 @@ const mfm = P.createLanguage({ r.big, r.small, r.spin, + r.jump, r.bold, r.strike, r.link, @@ -297,6 +310,7 @@ const mfm = P.createLanguage({ r.big, r.small, r.spin, + r.jump, r.bold, r.strike, r.italic, @@ -347,6 +361,7 @@ const mfm = P.createLanguage({ r.bold, r.small, r.spin, + r.jump, r.strike, r.italic, r.mention, @@ -410,6 +425,7 @@ const mfm = P.createLanguage({ r.big, r.small, r.spin, + r.jump, r.bold, r.strike, r.italic, |