mirror of
https://activitypub.software/TransFem-org/sfm-js
synced 2024-11-25 23:45:14 +00:00
Merge branch 'develop' of https://github.com/misskey-dev/mfm.js into develop
This commit is contained in:
commit
8ebf1a25e4
3 changed files with 34 additions and 8 deletions
|
@ -349,6 +349,7 @@ _italic_
|
||||||
## 詳細
|
## 詳細
|
||||||
- インライン構文。
|
- インライン構文。
|
||||||
- 内容には改行を含めることができない。
|
- 内容には改行を含めることができない。
|
||||||
|
- 内容には「´」を含めることができない。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -447,12 +448,14 @@ _italic_
|
||||||
- 内容には`.` `,` `!` `?` `'` `"` `#` `:` `/` `【` `】` を含めることができない。
|
- 内容には`.` `,` `!` `?` `'` `"` `#` `:` `/` `【` `】` を含めることができない。
|
||||||
- 括弧は対になっている時のみ内容に含めることができる。対象: `()` `[]` `「」`
|
- 括弧は対になっている時のみ内容に含めることができる。対象: `()` `[]` `「」`
|
||||||
- `#`の前の文字が(改行、スペース、無し、[a-zA-Z0-9]に一致しない)のいずれかの場合にハッシュタグとして認識する。
|
- `#`の前の文字が(改行、スペース、無し、[a-zA-Z0-9]に一致しない)のいずれかの場合にハッシュタグとして認識する。
|
||||||
|
- 内容が数字のみの場合はハッシュタグとして認識しない。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h1 id="url">URL</h2>
|
<h1 id="url">URL</h2>
|
||||||
|
|
||||||
## 形式
|
## 形式
|
||||||
|
構文1:
|
||||||
```
|
```
|
||||||
https://misskey.io/@ai
|
https://misskey.io/@ai
|
||||||
```
|
```
|
||||||
|
@ -461,6 +464,15 @@ https://misskey.io/@ai
|
||||||
http://hoge.jp/abc
|
http://hoge.jp/abc
|
||||||
```
|
```
|
||||||
|
|
||||||
|
構文2:
|
||||||
|
```
|
||||||
|
<https://misskey.io/@ai>
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
<http://藍.jp/abc>
|
||||||
|
```
|
||||||
|
|
||||||
## ノード
|
## ノード
|
||||||
```js
|
```js
|
||||||
{
|
{
|
||||||
|
@ -473,10 +485,15 @@ http://hoge.jp/abc
|
||||||
|
|
||||||
## 詳細
|
## 詳細
|
||||||
- インライン構文。
|
- インライン構文。
|
||||||
|
|
||||||
|
構文1のみ:
|
||||||
- 内容には`[.,a-z0-9_/:%#@$&?!~=+-]i`にマッチする文字を使用できる。
|
- 内容には`[.,a-z0-9_/:%#@$&?!~=+-]i`にマッチする文字を使用できる。
|
||||||
- 内容には対になっている括弧を使用できる。対象: `(` `)` `[` `]`
|
- 内容には対になっている括弧を使用できる。対象: `(` `)` `[` `]`
|
||||||
- `.`や`,`は最後の文字にできない。
|
- `.`や`,`は最後の文字にできない。
|
||||||
|
|
||||||
|
構文2のみ:
|
||||||
|
- 内容には改行、スペース以外の文字を使用できる。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<h1 id="link">リンク</h2>
|
<h1 id="link">リンク</h2>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "mfm-js",
|
"name": "mfm-js",
|
||||||
"version": "0.16.5",
|
"version": "0.17.0",
|
||||||
"description": "An MFM parser implementation with PEG.js",
|
"description": "An MFM parser implementation with PEG.js",
|
||||||
"main": "./built/index.js",
|
"main": "./built/index.js",
|
||||||
"types": "./built/index.d.ts",
|
"types": "./built/index.d.ts",
|
||||||
|
|
|
@ -291,7 +291,7 @@ strike
|
||||||
// inline: inlineCode
|
// inline: inlineCode
|
||||||
|
|
||||||
inlineCode
|
inlineCode
|
||||||
= "`" content:$(!"`" c:CHAR { return c; })+ "`"
|
= "`" content:$(![`´] c:CHAR { return c; })+ "`"
|
||||||
{
|
{
|
||||||
return INLINE_CODE(content);
|
return INLINE_CODE(content);
|
||||||
}
|
}
|
||||||
|
@ -341,7 +341,13 @@ hashtag
|
||||||
}
|
}
|
||||||
|
|
||||||
hashtagContent
|
hashtagContent
|
||||||
= (hashtagBracketPair / hashtagChar)+ { return text(); }
|
= !(invalidHashtagContent !hashtagContentPart) hashtagContentPart+ { return text(); }
|
||||||
|
|
||||||
|
invalidHashtagContent
|
||||||
|
= [0-9]+
|
||||||
|
|
||||||
|
hashtagContentPart
|
||||||
|
= hashtagBracketPair / hashtagChar
|
||||||
|
|
||||||
hashtagBracketPair
|
hashtagBracketPair
|
||||||
= "(" hashtagContent* ")"
|
= "(" hashtagContent* ")"
|
||||||
|
@ -354,7 +360,7 @@ hashtagChar
|
||||||
// inline: URL
|
// inline: URL
|
||||||
|
|
||||||
url
|
url
|
||||||
= "<" url:urlFormat ">"
|
= "<" url:altUrlFormat ">"
|
||||||
{
|
{
|
||||||
return N_URL(url);
|
return N_URL(url);
|
||||||
}
|
}
|
||||||
|
@ -364,14 +370,11 @@ url
|
||||||
}
|
}
|
||||||
|
|
||||||
urlFormat
|
urlFormat
|
||||||
= "http" "s"? "://" urlContent
|
= "http" "s"? "://" urlContentPart+
|
||||||
{
|
{
|
||||||
return text();
|
return text();
|
||||||
}
|
}
|
||||||
|
|
||||||
urlContent
|
|
||||||
= urlContentPart+
|
|
||||||
|
|
||||||
urlContentPart
|
urlContentPart
|
||||||
= urlBracketPair
|
= urlBracketPair
|
||||||
/ [.,] &urlContentPart // last char is neither "." nor ",".
|
/ [.,] &urlContentPart // last char is neither "." nor ",".
|
||||||
|
@ -381,6 +384,12 @@ urlBracketPair
|
||||||
= "(" urlContentPart* ")"
|
= "(" urlContentPart* ")"
|
||||||
/ "[" urlContentPart* "]"
|
/ "[" urlContentPart* "]"
|
||||||
|
|
||||||
|
altUrlFormat
|
||||||
|
= "http" "s"? "://" (!(">" / _) CHAR)+
|
||||||
|
{
|
||||||
|
return text();
|
||||||
|
}
|
||||||
|
|
||||||
// inline: link
|
// inline: link
|
||||||
|
|
||||||
link
|
link
|
||||||
|
|
Loading…
Reference in a new issue