Skip to content
Snippets Groups Projects
Commit ce17943f authored by marihachi's avatar marihachi
Browse files

update syntax doc

parent 6d2a0643
No related branches found
No related tags found
No related merge requests found
...@@ -35,6 +35,13 @@ ...@@ -35,6 +35,13 @@
>>nest >>nest
``` ```
## 詳細
- 引用された内容には再度FullParserを適用する。
- `>`の後に続く0~1文字のスペースを無視する。
- 隣接する引用の行は一つになる。
- 複数行の引用では空行も含めることができる。
- 引用の後ろにある空行は無視される。([#61](https://github.com/misskey-dev/mfm.js/issues/61))
## ノード ## ノード
```js ```js
{ {
...@@ -45,13 +52,6 @@ ...@@ -45,13 +52,6 @@
} }
``` ```
## 詳細
- 引用された内容には再度FullParserを適用する。
- `>`の後に続く0~1文字のスペースを無視する。
- 隣接する引用の行は一つになる。
- 複数行の引用では空行も含めることができる。
- 引用の後ろにある空行は無視される。([#61](https://github.com/misskey-dev/mfm.js/issues/61))
<h1 id="search">Block: 検索ブロック</h2> <h1 id="search">Block: 検索ブロック</h2>
...@@ -64,6 +64,9 @@ MFM 書き方 [Search] ...@@ -64,6 +64,9 @@ MFM 書き方 [Search]
MFM 書き方 [検索] MFM 書き方 [検索]
``` ```
## 詳細
- Searchの大文字小文字は区別されない。
## ノード ## ノード
```js ```js
{ {
...@@ -75,9 +78,6 @@ MFM 書き方 [検索] ...@@ -75,9 +78,6 @@ MFM 書き方 [検索]
} }
``` ```
## 詳細
- Searchの大文字小文字は区別されない。
<h1 id="code-block">Block: コードブロック</h2> <h1 id="code-block">Block: コードブロック</h2>
...@@ -99,6 +99,9 @@ abc ...@@ -99,6 +99,9 @@ abc
```` ````
</pre> </pre>
## 詳細
- langは指定されない場合はnullになる。
## ノード ## ノード
```js ```js
{ {
...@@ -110,9 +113,6 @@ abc ...@@ -110,9 +113,6 @@ abc
} }
``` ```
## 詳細
- langは指定されない場合はnullになる。
<h1 id="math-block">Block: 数式ブロック</h2> <h1 id="math-block">Block: 数式ブロック</h2>
...@@ -128,6 +128,11 @@ a = 2 ...@@ -128,6 +128,11 @@ a = 2
\] \]
``` ```
## 詳細
- `\[`は行頭でなければならない。
- `\]`は行末でなければならない。
- 前後のスペースと改行はトリミングされる。
## ノード ## ノード
```js ```js
{ {
...@@ -138,11 +143,6 @@ a = 2 ...@@ -138,11 +143,6 @@ a = 2
} }
``` ```
## 詳細
- `\[`は行頭でなければならない。
- `\]`は行末でなければならない。
- 前後のスペースと改行はトリミングされる。
<h1 id="center">Block: 中央寄せブロック</h2> <h1 id="center">Block: 中央寄せブロック</h2>
...@@ -157,6 +157,12 @@ abc ...@@ -157,6 +157,12 @@ abc
</center> </center>
``` ```
## 詳細
- `<center>`は行頭でなければならない。
- `</center>`は行末でなければならない。
- 中身を空にすることはできない。
- 内容には再度InlineParserを適用する。
## ノード ## ノード
```js ```js
{ {
...@@ -167,12 +173,6 @@ abc ...@@ -167,12 +173,6 @@ abc
} }
``` ```
## 詳細
- `<center>`は行頭でなければならない。
- `</center>`は行末でなければならない。
- 中身を空にすることはできない。
- 内容には再度InlineParserを適用する。
<h1 id="big">Inline: 揺れる字</h2> <h1 id="big">Inline: 揺れる字</h2>
...@@ -183,6 +183,10 @@ abc ...@@ -183,6 +183,10 @@ abc
***big!*** ***big!***
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
- 内容には改行も含めることが可能です。
## ノード ## ノード
```js ```js
{ {
...@@ -197,10 +201,6 @@ abc ...@@ -197,10 +201,6 @@ abc
} }
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
- 内容には改行も含めることが可能です。
<h1 id="bold">Inline: 太字</h2> <h1 id="bold">Inline: 太字</h2>
...@@ -221,6 +221,15 @@ __bold__ ...@@ -221,6 +221,15 @@ __bold__
<b>bold</b> <b>bold</b>
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
構文1,3のみ:
- 内容にはすべての文字、改行が使用できる。
構文2のみ:
- 内容には`[a-z0-9 \t]i`にマッチする文字が使用できる。
## ノード ## ノード
```js ```js
{ {
...@@ -231,15 +240,6 @@ __bold__ ...@@ -231,15 +240,6 @@ __bold__
} }
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
構文1,3のみ:
- 内容にはすべての文字、改行が使用できる。
構文2のみ:
- 内容には`[a-z0-9 \t]i`にマッチする文字が使用できる。
<h1 id="small">Inline: 目立たない字</h2> <h1 id="small">Inline: 目立たない字</h2>
...@@ -249,6 +249,10 @@ __bold__ ...@@ -249,6 +249,10 @@ __bold__
<small>small</small> <small>small</small>
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
- 内容には改行も含めることが可能です。
## ノード ## ノード
```js ```js
{ {
...@@ -259,10 +263,6 @@ __bold__ ...@@ -259,10 +263,6 @@ __bold__
} }
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
- 内容には改行も含めることが可能です。
<h1 id="italic">Inline: イタリック</h2> <h1 id="italic">Inline: イタリック</h2>
...@@ -283,16 +283,6 @@ __bold__ ...@@ -283,16 +283,6 @@ __bold__
_italic_ _italic_
``` ```
## ノード
```js
{
type: 'italic',
children: [
{ type: 'text', props: { text: 'italic' } }
]
}
```
## 詳細 ## 詳細
- 内容には再度InlineParserを適用する。 - 内容には再度InlineParserを適用する。
...@@ -304,6 +294,16 @@ _italic_ ...@@ -304,6 +294,16 @@ _italic_
- 内容には`[a-z0-9 \t]i`にマッチする文字が使用できる。 - 内容には`[a-z0-9 \t]i`にマッチする文字が使用できる。
- 開始記号の前の文字が(無い、改行、半角スペース、[a-zA-Z0-9]に一致しない)のいずれかの時にイタリック文字として判定される。 - 開始記号の前の文字が(無い、改行、半角スペース、[a-zA-Z0-9]に一致しない)のいずれかの時にイタリック文字として判定される。
## ノード
```js
{
type: 'italic',
children: [
{ type: 'text', props: { text: 'italic' } }
]
}
```
<h1 id="strike">Inline: 打ち消し線</h2> <h1 id="strike">Inline: 打ち消し線</h2>
...@@ -319,6 +319,15 @@ _italic_ ...@@ -319,6 +319,15 @@ _italic_
<s>strike</s> <s>strike</s>
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
構文1のみ:
- 内容には`~`、改行以外の文字を使用できる。
構文2のみ:
- 内容には改行以外の文字を使用できる。
## ノード ## ノード
```js ```js
{ {
...@@ -329,15 +338,6 @@ _italic_ ...@@ -329,15 +338,6 @@ _italic_
} }
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
構文1のみ:
- 内容には`~`、改行以外の文字を使用できる。
構文2のみ:
- 内容には改行以外の文字を使用できる。
<h1 id="inline-code">Inline: インラインコード</h2> <h1 id="inline-code">Inline: インラインコード</h2>
...@@ -347,6 +347,10 @@ _italic_ ...@@ -347,6 +347,10 @@ _italic_
`$abc <- 1` `$abc <- 1`
``` ```
## 詳細
- 内容には改行を含めることができない。
- 内容には「´」を含めることができない。
## ノード ## ノード
```js ```js
{ {
...@@ -357,10 +361,6 @@ _italic_ ...@@ -357,10 +361,6 @@ _italic_
} }
``` ```
## 詳細
- 内容には改行を含めることができない。
- 内容には「´」を含めることができない。
<h1 id="math-inline">Inline: インライン数式</h2> <h1 id="math-inline">Inline: インライン数式</h2>
...@@ -370,6 +370,9 @@ _italic_ ...@@ -370,6 +370,9 @@ _italic_
\(y = 2x\) \(y = 2x\)
``` ```
## 詳細
- 内容には改行を含めることができない。
## ノード ## ノード
```js ```js
{ {
...@@ -380,9 +383,6 @@ _italic_ ...@@ -380,9 +383,6 @@ _italic_
} }
``` ```
## 詳細
- 内容には改行を含めることができない。
<h1 id="mention">Inline: メンション</h2> <h1 id="mention">Inline: メンション</h2>
...@@ -395,6 +395,19 @@ _italic_ ...@@ -395,6 +395,19 @@ _italic_
@user @user
``` ```
## 詳細
- 最初の`@`の前の文字が(改行、スペース、無し、[a-zA-Z0-9]に一致しない)のいずれかの場合にメンションとして認識する。
### ユーザ名
- 1文字以上。
- `A``Z` `0``9` `_` `-`が含められる。
- 1文字目と最後の文字は`-`にできない。
### ホスト名
- 1文字以上。
- `A``Z` `0``9` `_` `-` `.`が含められる。
- 1文字目と最後の文字は`-` `.`にできない。
## ノード ## ノード
```js ```js
{ {
...@@ -418,19 +431,6 @@ _italic_ ...@@ -418,19 +431,6 @@ _italic_
} }
``` ```
## 詳細
- 最初の`@`の前の文字が(改行、スペース、無し、[a-zA-Z0-9]に一致しない)のいずれかの場合にメンションとして認識する。
### ユーザ名
- 1文字以上。
- `A``Z` `0``9` `_` `-`が含められる。
- 1文字目と最後の文字は`-`にできない。
### ホスト名
- 1文字以上。
- `A``Z` `0``9` `_` `-` `.`が含められる。
- 1文字目と最後の文字は`-` `.`にできない。
<h1 id="hashtag">Inline: ハッシュタグ</h2> <h1 id="hashtag">Inline: ハッシュタグ</h2>
...@@ -440,6 +440,13 @@ _italic_ ...@@ -440,6 +440,13 @@ _italic_
#abc #abc
``` ```
## 詳細
- 内容には半角スペース、全角スペース、改行、タブ文字を含めることができない。
- 内容には`.` `,` `!` `?` `'` `"` `#` `:` `/` `【` `】` `<` `>` を含めることができない。
- 括弧は対になっている時のみ内容に含めることができる。対象: `()` `[]` `「」`
- `#`の前の文字が(改行、スペース、無し、[a-zA-Z0-9]に一致しない)のいずれかの場合にハッシュタグとして認識する。
- 内容が数字のみの場合はハッシュタグとして認識しない。
## ノード ## ノード
```js ```js
{ {
...@@ -450,13 +457,6 @@ _italic_ ...@@ -450,13 +457,6 @@ _italic_
} }
``` ```
## 詳細
- 内容には半角スペース、全角スペース、改行、タブ文字を含めることができない。
- 内容には`.` `,` `!` `?` `'` `"` `#` `:` `/` `【` `】` `<` `>` を含めることができない。
- 括弧は対になっている時のみ内容に含めることができる。対象: `()` `[]` `「」`
- `#`の前の文字が(改行、スペース、無し、[a-zA-Z0-9]に一致しない)のいずれかの場合にハッシュタグとして認識する。
- 内容が数字のみの場合はハッシュタグとして認識しない。
<h1 id="url">Inline: URL</h2> <h1 id="url">Inline: URL</h2>
...@@ -480,6 +480,15 @@ http://hoge.jp/abc ...@@ -480,6 +480,15 @@ http://hoge.jp/abc
<http://藍.jp/abc> <http://藍.jp/abc>
``` ```
## 詳細
構文1のみ:
- 内容には`[.,a-z0-9_/:%#@$&?!~=+-]i`にマッチする文字を使用できる。
- 内容には対になっている括弧を使用できる。対象: `( )` `[ ]`
- `.``,`は最後の文字にできない。
構文2のみ:
- 内容には改行、スペース以外の文字を使用できる。
## ノード ## ノード
構文1: 構文1:
```js ```js
...@@ -514,15 +523,6 @@ http://hoge.jp/abc ...@@ -514,15 +523,6 @@ http://hoge.jp/abc
} }
``` ```
## 詳細
構文1のみ:
- 内容には`[.,a-z0-9_/:%#@$&?!~=+-]i`にマッチする文字を使用できる。
- 内容には対になっている括弧を使用できる。対象: `( )` `[ ]`
- `.``,`は最後の文字にできない。
構文2のみ:
- 内容には改行、スペース以外の文字を使用できる。
<h1 id="link">Inline: リンク</h2> <h1 id="link">Inline: リンク</h2>
...@@ -538,6 +538,10 @@ silent=true ...@@ -538,6 +538,10 @@ silent=true
?[Misskey.io](https://misskey.io/) ?[Misskey.io](https://misskey.io/)
``` ```
## 詳細
- リンクラベルには再度InlineParserを適用する。
- リンクラベルに含まれるURL、リンク、メンションはテキストとしてパースする。
## ノード ## ノード
```js ```js
[ [
...@@ -559,10 +563,6 @@ silent=true ...@@ -559,10 +563,6 @@ silent=true
] ]
``` ```
## 詳細
- リンクラベルには再度InlineParserを適用する。
- リンクラベルに含まれるURL、リンク、メンションはテキストとしてパースする。
<h1 id="emoji-code">Inline: 絵文字コード(カスタム絵文字)</h2> <h1 id="emoji-code">Inline: 絵文字コード(カスタム絵文字)</h2>
...@@ -572,6 +572,9 @@ silent=true ...@@ -572,6 +572,9 @@ silent=true
:thinking_ai: :thinking_ai:
``` ```
## 詳細
- 内容には[a-z0-9_+-]iにマッチする文字を使用できる。
## ノード ## ノード
```js ```js
{ {
...@@ -582,9 +585,6 @@ silent=true ...@@ -582,9 +585,6 @@ silent=true
} }
``` ```
## 詳細
- 内容には[a-z0-9_+-]iにマッチする文字を使用できる。
<h1 id="fn">Inline: 関数</h2> <h1 id="fn">Inline: 関数</h2>
...@@ -625,6 +625,11 @@ $[flip.h,v MisskeyでFediverseの世界が広がります] ...@@ -625,6 +625,11 @@ $[flip.h,v MisskeyでFediverseの世界が広がります]
[flip.h,v MisskeyでFediverseの世界が広がります] [flip.h,v MisskeyでFediverseの世界が広がります]
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
- 内容には改行も含めることが可能です。
- 使用できる関数名やパラメータはホスト側で定義され、パーサはその登録状況を関知しません。
## ノード ## ノード
```js ```js
{ {
...@@ -639,11 +644,6 @@ $[flip.h,v MisskeyでFediverseの世界が広がります] ...@@ -639,11 +644,6 @@ $[flip.h,v MisskeyでFediverseの世界が広がります]
} }
``` ```
## 詳細
- 内容には再度InlineParserを適用する。
- 内容には改行も含めることが可能です。
- 使用できる関数名やパラメータはホスト側で定義され、パーサはその登録状況を関知しません。
<h1 id="unicode-emoji">Inline: Unicode絵文字</h2> <h1 id="unicode-emoji">Inline: Unicode絵文字</h2>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment