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