summaryrefslogtreecommitdiff
path: root/src/mfm/parser.ts
diff options
context:
space:
mode:
authorAya Morisawa <AyaMorisawa4869@gmail.com>2019-01-27 19:12:45 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2019-01-27 19:12:45 +0900
commit62d41023e19dfb551e0d9fd28f1361efaced9765 (patch)
treeaaea0c571dec5eac8f81ce2e8264af36ba3b72d5 /src/mfm/parser.ts
parent[MFM] spinの中でflipを使えるように (diff)
downloadsharkey-62d41023e19dfb551e0d9fd28f1361efaced9765.tar.gz
sharkey-62d41023e19dfb551e0d9fd28f1361efaced9765.tar.bz2
sharkey-62d41023e19dfb551e0d9fd28f1361efaced9765.zip
Add jump syntax (#4007)
* Add jump syntax * Fix typo: spin -> jump * Fix typo
Diffstat (limited to 'src/mfm/parser.ts')
-rw-r--r--src/mfm/parser.ts16
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,