Markdownãšã¯ïŒè»œéããŒã¯ã¢ããèšèªã®åºæ¬
Markdownã¯2004幎ã«John GruberãšAaron Swartzãéçºãã軜éããŒã¯ã¢ããèšèªã§ããHTMLã®ããã«è€éãªã¿ã°ãæžããªããŠãããã¬ãŒã³ããã¹ãã«è¿ãèšæ³ã§ææžæ§é ã衚çŸã§ããããšãæå€§ã®ç¹é·ã§ããå ã ã¯ããã°èšäºãå¹çããæžãããã«èšèšãããŸããããä»ã§ã¯GitHubãNotionãSlackãæè¡ããã¥ã¡ã³ããŒã·ã§ã³ãªã©ãããããå Žé¢ã§æšæºçãªãã©ãŒããããšããŠäœ¿ãããŠããŸãã
Markdownãåºãæ®åããçç±ã¯3ã€ãããŸãã第äžã«ãå¯èªæ§ã§ããHTMLã®<h1>ã¿ã°ãšæ¯ã¹ãŠã#äžã€ã§èŠåºãã衚çŸã§ããMarkdownã¯ãœãŒã¹ã³ãŒãèªäœãèªã¿ãããã®ã§ãã第äºã«ãããŒã¿ããªãã£ã§ãããã¬ãŒã³ããã¹ããã¡ã€ã«ã®ãããã©ã®ãšãã£ã¿ã§ãéããŠãããŒãžã§ã³ç®¡çãšã®çžæ§ãæçŸ€ã§ãã第äžã«ã倿ã®å®¹æãã§ããHTMLãPDFãEPUBãWordãªã©å€æ§ãªãã©ãŒãããã«å€æããããŒã«ãè±å¯ã«ååšããŸãã
2026幎çŸåšãCommonMark仿§ãäºå®äžã®æšæºãšãªã£ãŠããŸããããã¯Gruberã®ãªãªãžãã«ä»æ§ã®ææ§ããè§£æ¶ããå³å¯ãªããŒã¹èŠåãå®çŸ©ãããã®ã§ããGitHub Flavored MarkdownïŒGFMïŒã¯CommonMarkãæ¡åŒµããããŒãã«ãã¿ã¹ã¯ãªã¹ããåãæ¶ãç·ãªã©ã远å ããŠããŸããã©ã®ä»æ§ã䜿ã£ãŠããããæèããããšã§ãã¬ã³ããªã³ã°çµæã®å·®ç°ãé²ããŸãã
æ¬ã¬ã€ãã§ã¯ãCommonMarkãšGFMãäžå¿ã«ãMDXããã®ä»ã®æ¡åŒµèšæ³ãå«ããŠMarkdownã®å šäœåã解説ããŸããåºæ¬çãªèšæ³ããå§ããŠãè€éãªããã¥ã¡ã³ãæ§é ã®æ§ç¯æ¹æ³ãŸã§ã段éçã«é²ããŠãããŸãã
èŠåºãã»æ®µèœã»åŒ·èª¿ïŒããã¹ãæ§é ã®åºæ¬
èŠåºãã¯#ã®æ°ã§éå±€ã衚ããŸãã# ã h1ã## ã h2ã### ã h3ãšå¯Ÿå¿ããæå€§######ã§h6ãŸã§äœ¿ããŸããéèŠãªã®ã¯#ã®åŸã«å¿ ãåè§ã¹ããŒã¹ãå ¥ããããšã§ãã#headerã¯å€ãã®ããŒãµãŒã§èŠåºããšããŠèªèãããŸããããŸããææžæ§é ãšããŠh1ã¯ããŒãžã«1ã€ã ã䜿ããæ¬æã®æ§æèŠçŽ ã«ã¯h2以äžã䜿ãã®ãã»ãã³ãã£ã¯ã¹äžã®ãã¹ããã©ã¯ãã£ã¹ã§ãã
段èœã¯ç©ºè¡ã§åºåããŸããé£ç¶ããè¡ã¯åãæ®µèœãšããŠçµåããããããæ¹è¡ãæç€ºçã«å ¥ãããå Žåã¯è¡æ«ã«åè§ã¹ããŒã¹2ã€ãå ¥ãããã<br>ã¿ã°ã䜿ããŸãããã ãè¡æ«ã¹ããŒã¹ã¯ç®ã«èŠããªããããå€ãã®ã¹ã¿ã€ã«ã¬ã€ãã§ã¯é¿ããããšãæšå¥šããŠããŸãã代ããã«ããã¯ã¹ã©ãã·ã¥+æ¹è¡ïŒ\ã«ç¶ããŠæ¹è¡ïŒãäœ¿ãæ¹æ³ãCommonMarkã§å®çŸ©ãããŠããŸãã
匷調ïŒemphasisïŒã¯*ãŸãã¯_ã§å²ã¿ãŸãã*italic*ã§æäœã**bold**ã§å€ªåã***both***ã§æäœ+倪åã§ããGFMã§ã¯~~strikethrough~~ã§åãæ¶ãç·ã䜿ããŸããåŒ·èª¿èšæ³ãéžã¶éã®ãã€ã³ãã¯äžè²«æ§ã§ãããããžã§ã¯ãå ã§*ãš_ãæ··åšããããšã³ãŒãã¬ãã¥ãŒæã«æ··ä¹±ãæããããã©ã¡ããäžæ¹ã«çµ±äžããŸããããäžè¬çã«ã¯*ãæšå¥šãããŸãã_ã¯ã¹ããŒã¯ã±ãŒã¹ã®å€æ°åïŒmy_variable_nameïŒãšã®è¡çªãé¿ããããããã§ãã
ã€ã³ã©ã€ã³ã³ãŒãã¯ããã¯ã¯ã©ãŒãïŒ`ïŒã§å²ã¿ãŸãã`console.log()`ã®ããã«äœ¿ããŸããããã¯ã¯ã©ãŒãèªäœãã€ã³ã©ã€ã³ã³ãŒãå ã«è¡šç€ºãããå Žåã¯ãäºéããã¯ã¯ã©ãŒãïŒ`` ` ``ïŒã§å²ãããååŸã«ã¹ããŒã¹ãå ¥ããŠ`` ` ``ãšæžããŸããããã¯æå€ãšç¥ãããŠããªãTIPã§ãããCLIã³ãã³ãã®ããã¥ã¡ã³ããæžãéã«é »ç¹ã«å¿ èŠã«ãªããŸãã
# h1 èŠåºãïŒããŒãžã¿ã€ãã«ïŒ
## h2 èŠåºãïŒã»ã¯ã·ã§ã³ïŒ
### h3 èŠåºãïŒãµãã»ã¯ã·ã§ã³ïŒ
éåžžã®æ®µèœããã¹ãã
ãã®è¡ã¯äžãšåãæ®µèœã«çµåãããŸãã
ãã®è¡ã¯æ°ããæ®µèœã§ãïŒäžã«ç©ºè¡ãããããïŒã
*æäœããã¹ã* ãŸã㯠_æäœããã¹ã_
**倪åããã¹ã** ãŸã㯠__倪åããã¹ã__
***倪å+æäœ*** ãŸã㯠___倪å+æäœ___
~~åãæ¶ãç·~~ïŒGFMæ¡åŒµïŒ
`ã€ã³ã©ã€ã³ã³ãŒã` ã®äŸ
``ããã¯ã¯ã©ãŒãïŒ\`ïŒãå«ãã€ã³ã©ã€ã³ã³ãŒã``ãªã¹ãã»åŒçšã»æ°Žå¹³ç·ïŒã³ã³ãã³ãã®æŽç
é åºãªããªã¹ãã¯-ã*ã+ã®ããããã§å§ããŸããCommonMarkã§ã¯ã©ããåãããã«åŠçãããŸãããäžè²«æ§ã®ããã«1ã€ã®ããŒã«ãŒã«çµ±äžããã®ããã¹ãã§ããå€ãã®ãããžã§ã¯ãã§ã¯-ãæšæºã§ãããã¹ãã¯4ã¹ããŒã¹ãŸãã¯1ã¿ãã®ã€ã³ãã³ãã§è¡šçŸããŸãã3段é以äžã®ãã¹ãã¯èªã¿ã«ãããªããããæ§é ãèŠçŽããµã€ã³ãšèããŸãããã
é åºä»ããªã¹ãã¯æ°å+ããªãªãã§å§ããŸãã1. 2. 3.ãèªç¶ã§ãããå®ã¯ãã¹ãŠ1.ã§æžããŠãæ£ããé£çªãã¬ã³ããªã³ã°ãããŸããããã¯ãªã¹ãã®éäžã«é ç®ãæ¿å ¥ããéã«çªå·ãæ¯ãçŽãæéãçããã¡ãªããããããŸãããã ãããœãŒã¹ã®å¯èªæ§ã®ããã«å®éã®çªå·ãæ¯ãæµæŽŸãããã奜ã¿ãåãããŸããéèŠãªã®ã¯æåã®æ°åã§ãCommonMarkã§ã¯æåã®æ°åããªã¹ãã®éå§çªå·ãšããŠäœ¿ãããŸãã
åŒçšãããã¯ã¯>ã§å§ããŸããè€æ°è¡ã«æž¡ãåŒçšã¯åè¡ã«>ãä»ããŸãã>ã®åŸã®ã¹ããŒã¹ã¯ãªãã·ã§ã³ã§ãããå¯èªæ§ã®ããã«å ¥ããããšãæšå¥šãããŸããåŒçšãããã¯å ã«ä»ã®MarkdownèŠçŽ ïŒèŠåºãããªã¹ããã³ãŒããããã¯ïŒããã¹ãããããšãå¯èœã§ããé£ç¶ãã>ã¯åãåŒçšãããã¯ãšããŠçµåããã空ã®>è¡ã§æ®µèœãåããŸãã
æ°Žå¹³ç·ã¯---ã***ã___ã®ããããã§çæããŸãã3ã€ä»¥äžã®åãæåã䞊ã¹ãå¿ èŠãããããã®è¡ã«ã¯ä»ã®æåïŒã¹ããŒã¹ãé€ãïŒãå«ããŠã¯ãããŸããã---ã¯èŠåºãïŒsetext圢åŒã®h2ïŒãšæ··åãããå ŽåããããããååŸã«ç©ºè¡ãå ¥ããããšãæšå¥šããŸããæ°Žå¹³ç·ã¯ã»ã¯ã·ã§ã³ã®åºåããšããŠäœ¿ããŸãããHTMLã®ã»ãã³ãã£ã¯ã¹ã§ã¯<hr>ã¯ããŒãã®å€æŽã瀺ããããåãªãèŠãç®ã®åºåãã«ã¯é床ã«äœ¿ããªãæ¹ãè¯ãã§ãããã
- é åºãªããªã¹ãé
ç®1
- é
ç®2
- ãã¹ããããé
ç®ïŒ4ã¹ããŒã¹ã€ã³ãã³ãïŒ
- ãã¹ããããé
ç®
- é
ç®3
1. é åºä»ããªã¹ã
2. 2çªç®ã®é
ç®
3. 3çªç®ã®é
ç®
1. ãã¹ãŠ1.ã§æžããŠã
1. æ£ããé£çªã«
1. ã¬ã³ããªã³ã°ãããŸã
> åŒçšãããã¯
> è€æ°è¡ã®åŒçš
>
> åŒçšå
ã®æ°ããæ®µèœ
>
> > ãã¹ããããåŒçš
---
äžäžã«ç©ºè¡ãå
¥ããæ°Žå¹³ç·ã³ãŒããããã¯ãšã·ã³ã¿ãã¯ã¹ãã€ã©ã€ã
ã³ãŒããããã¯ã¯ããã¯ã¯ã©ãŒã3ã€ïŒ```ïŒãŸãã¯ãã«ã3ã€ïŒ~~~ïŒã§å²ã¿ãŸããéå§è¡ã®çŽåŸã«èšèªåãæå®ãããšã·ã³ã¿ãã¯ã¹ãã€ã©ã€ããé©çšãããŸãã察å¿èšèªã¯ã¬ã³ãã©ãŒã«ãã£ãŠç°ãªããŸãããjavascriptãtypescriptãpythonãgoãrustãhtmlãcssãsqlãbashãjsonãªã©ã¯äž»èŠãã©ãããã©ãŒã ãã¹ãŠã§ãµããŒããããŠããŸãã
ã³ãŒããããã¯å ã§ã¯Markdownèšæ³ã¯ç¡å¹åãããŸããã€ãŸãã*ã#ããã®ãŸãŸè¡šç€ºã§ããŸãããã ãã```èªäœãã³ãŒããããã¯å ã«è¡šç€ºãããå Žåã¯ããã¯ã¯ã©ãŒãã®æ°ãå¢ããïŒ````ã§å²ãïŒãããã«ãã§å²ãå¿ èŠããããŸãããã®èšæ³ã¯Markdownã®ãã¥ãŒããªã¢ã«ãããã¥ã¡ã³ããæžãéã«äžå¯æ¬ ã§ãã
GFMãããã€ãã®ãã©ãããã©ãŒã ã§ã¯ãã³ãŒããããã¯ã«ã¡ã¿æ å ±ãä»å ã§ããŸãã```javascript title="example.js"ã®ããã«ãã¡ã€ã«åãæå®ãããã```typescript {3-5}ã®ããã«è¡ã®ãã€ã©ã€ãç¯å²ãæå®ã§ããŸãããã ãããã¯æšæºä»æ§ã§ã¯ãªãããã©ãããã©ãŒã åºæã®æ¡åŒµã§ããNext.jsã®rehype-pretty-codeãDocusaurusã®ã³ãŒããããã¯èšæ³ããã®äŸã§ãã
ã€ã³ãã³ãããŒã¹ã®ã³ãŒããããã¯ïŒ4ã¹ããŒã¹ãŸãã¯1ã¿ãïŒãCommonMarkã§æå¹ã§ãããèšèªæå®ãã§ããªãããçŸä»£ã§ã¯éæšå¥šã§ããã¬ã¬ã·ãŒãªMarkdownããã¥ã¡ã³ãã§èŠãããããšã¯ãããŸãããæ°èŠã«æžãéã¯ãã§ã³ã¹ãã³ãŒããããã¯ïŒ```ïŒã䜿ã£ãŠãã ããããã§ã³ã¹ãã³ãŒããããã¯ã¯ç©ºè¡ãªãã§ååŸã®ã³ã³ãã³ããšæ¥ããããšãã§ããææžæ§é ãããã³ã³ãã¯ãã«ä¿ãŠãŸãã
```javascript
// èšèªæå®ä»ãã³ãŒããããã¯
function greet(name) {
return `Hello, ${name}!`;
}
```
```python
# Pythonã®ã³ãŒããããã¯
def greet(name: str) -> str:
return f"Hello, {name}!"
```
```sql
-- SQLã¯ãšãªã®äŸ
SELECT users.name, COUNT(orders.id) as order_count
FROM users
LEFT JOIN orders ON users.id = orders.user_id
GROUP BY users.name
HAVING order_count > 5;
```
// ã€ã³ãã³ãããŒã¹ã®ã³ãŒããããã¯ïŒéæšå¥šïŒ
// èšèªæå®ãã§ããªããªã³ã¯ã»ç»åã»ããŒãã«
ãªã³ã¯ã¯[衚瀺ããã¹ã](URL)ã®åœ¢åŒã§ãã[衚瀺ããã¹ã](URL "ã¿ã€ãã«")ã§ããŒã«ãããçšã®ã¿ã€ãã«å±æ§ã远å ã§ããŸããåç §ãªã³ã¯ãšããèšæ³ãããã[衚瀺ããã¹ã][ref-id]ãšæžããŠææžã®å¥ã®å Žæã§[ref-id]: URLãšå®çŸ©ããŸããé·ãURLãå€ãææžã§ã¯åç §ãªã³ã¯ã䜿ããšãœãŒã¹ã®å¯èªæ§ãå€§å¹ ã«åäžããŸãã
ç»åã¯ã§ãããªã³ã¯ãšã®éãã¯å é ã®!ã®ã¿ã§ããç»åã®ãµã€ãºæå®ã¯æšæºMarkdownã«ã¯ååšããŸãããHTMLã®<img>ã¿ã°ã䜿ããããã©ãããã©ãŒã åºæã®æ¡åŒµèšæ³ãå©çšããŸããã¢ã¯ã»ã·ããªãã£ã®ããã«ãalt屿§ïŒä»£æ¿ããã¹ãïŒã¯å¿ ãèšè¿°ããŠãã ãããã¹ã¯ãªãŒã³ãªãŒããŒããã®æ å ±ã䜿çšããŸããè£ é£Ÿçãªç»åã®å Žåã¯ã§ç©ºã®altãæå®ããŸãã
ããŒãã«ã¯GFMæ¡åŒµã®èšæ³ã§ãããã€ãïŒ|ïŒãšãã€ãã³ïŒ-ïŒã§æ§é ã衚çŸããŸãã2è¡ç®ã®ã»ãã¬ãŒã¿ãŒè¡ã§ã¢ã©ã€ã¡ã³ããæå®ã§ããŸãã:---ã§å·Šå¯ãã:---:ã§äžå€®ã---:ã§å³å¯ãã§ããããŒãã«ã¯è€éã«ãªããã¡ã§ãããMarkdownãšãã£ã¿ã®æŽåœ¢æ©èœã䜿ãã°ãã€ããæããå¯èªæ§ã®é«ããœãŒã¹ãç¶æã§ããŸãã
ããŒãã«ã®å¶éãšããŠãã»ã«çµåïŒcolspan/rowspanïŒããã¹ãããããŒãã«ã¯ãµããŒããããŠããŸãããè€éãªè¡šãå¿ èŠãªå Žåã¯HTMLããŒãã«ãçŽæ¥æžãããå¥ã®ããã¥ã¡ã³ã圢åŒãæ€èšããŠãã ããããŸããããŒãã«å ã§ã®ãã€ãæåã®è¡šç€ºã«ã¯\|ãšãšã¹ã±ãŒãããå¿ èŠããããŸããããŒãã«å ã§ã¯æ¹è¡ããµããŒããããªããããåã»ã«ã¯1è¡ã§æžãå¿ èŠããããŸãã
<!-- ãªã³ã¯ã®èšæ³ -->
[Googleãž](https://www.google.com)
[ã¿ã€ãã«ä»ããªã³ã¯](https://example.com "ãµã€ãã®èª¬æ")
[åç
§ãªã³ã¯][ref1]
[ref1]: https://example.com/long/path/to/page
<!-- ç»å -->


<!-- ããŒãã«ïŒGFMïŒ -->
| æ©èœ | CommonMark | GFM | MDX |
| :--- | :---: | :---: | :---: |
| èŠåºã | â
| â
| â
|
| ããŒãã« | â | â
| â
|
| JSX | â | â | â
|
| æ°åŒ | â | â | ãã©ã°ã€ã³ |GFMæ¡åŒµæ©èœïŒã¿ã¹ã¯ãªã¹ããèæ³šããªãŒããªã³ã¯
GitHub Flavored Markdownã¯ã¿ã¹ã¯ãªã¹ãïŒãã§ãã¯ããã¯ã¹ïŒãå°å ¥ããŸããã- [ ]ã§æªå®äºã- [x]ã§å®äºã衚çŸããŸããGitHubã®IssueãPRã§ã¯ãããã€ã³ã¿ã©ã¯ãã£ããªãã§ãã¯ããã¯ã¹ãšããŠã¬ã³ããªã³ã°ãããã¯ãªãã¯ã§ç¶æ ã倿Žã§ããŸãããããžã§ã¯ã管çãTODOãªã¹ãã«éåžžã«äŸ¿å©ã§ãREADMEã®ããŒãããã衚瀺ã«ããã䜿ãããŸãã
èæ³šã¯[^1]ã§ããŒã¯ããææžã®ã©ããã§[^1]: èæ³šã®å 容ãšå®çŸ©ããŸããåŠè¡çãªææžãåºå žã®æç€ºãå¿ èŠãªå Žé¢ã§åšåãçºæ®ããŸããèæ³šã¯GFMæ¡åŒµã§ããããã¹ãŠã®MarkdownããŒãµãŒã§ãµããŒããããŠããããã§ã¯ãªãããšã«æ³šæããŠãã ãããã¬ã³ããªã³ã°æã«ã¯ããŒãžæ«å°Ÿã«ãŸãšããŠè¡šç€ºãããã¯ãªãã¯ã§ç§»åã§ãããªã³ã¯ãèªåçæãããŸãã
ãªãŒããªã³ã¯ã¯æ¡åŒµãªãŒããªã³ã¯æ©èœã«ãããURLãã¡ãŒã«ã¢ãã¬ã¹ãèªåçã«ãªã³ã¯ã«ãªããŸããhttps://example.comãšæžãã ãã§ã[https://example.com](https://example.com)ãšåçã«ã¬ã³ããªã³ã°ãããŸãããã ããæšæºã®CommonMarkã§ã¯ãªãŒããªã³ã¯ã¯<URL>ã®åœ¢åŒïŒå±±æ¬åŒ§ã§å²ãïŒã®ã¿ããµããŒããããŠããŸããGFMæ¡åŒµã§ã¯å±±æ¬åŒ§ãªãã§ãURLãèªèãããŸãã
ãã®ä»ã®GFMæ¡åŒµãšããŠã¢ã©ãŒãèšæ³ããããŸãã> [!NOTE]ã> [!WARNING]ã> [!CAUTION]ãªã©ã§ç¹å¥ãªã¹ã¿ã€ã«ã®æ³šææžãã衚çŸã§ããŸãããã®èšæ³ã¯2023幎ã«GitHubã«å°å ¥ãããæè¡ããã¥ã¡ã³ãã®å¯èªæ§ãå€§å¹ ã«åäžãããŸãããéèŠãªèŠåããã³ããèŠèŠçã«ç®ç«ããããå Žåã«æŽ»çšããŠãã ããã
<!-- ã¿ã¹ã¯ãªã¹ã -->
- [x] ãŠãŒã¶ãŒèªèšŒã®å®è£
- [x] APIãšã³ããã€ã³ãã®èšèš
- [ ] ãŠããããã¹ãã®è¿œå
- [ ] ããã¥ã¡ã³ãã®æŽæ°
<!-- èæ³š -->
Markdownã¯2004幎ã«äœãããŸãã[^1]ã
[^1]: John GruberãDaring Fireballã§æåã«å
¬éããŸããã
<!-- ã¢ã©ãŒãèšæ³ïŒGitHubã2023幎ãïŒ -->
> [!NOTE]
> ããã¯è£è¶³æ
å ±ã§ãã
> [!WARNING]
> ãã®æäœã¯åãæ¶ãã§ããŸããã
> [!TIP]
> Ctrl+Shift+P ã§ã³ãã³ããã¬ãããéããŸããMDXãšã«ã¹ã¿ã æ¡åŒµïŒMarkdownã®å ãž
MDXã¯Markdownã«JSXïŒReactã³ã³ããŒãã³ãïŒãçŽæ¥åã蟌ããæ¡åŒµåœ¢åŒã§ããNext.jsãGatsbyãDocusaurusãªã©ã¢ãã³ãªããã¥ã¡ã³ããã¬ãŒã ã¯ãŒã¯ã®å€ããMDXããµããŒãããŠããŸããæè¡ããã°ã§ã€ã³ã¿ã©ã¯ãã£ããªãã¢ãèšäºå ã«é 眮ããããã«ã¹ã¿ã ã³ã³ããŒãã³ãã§ã³ã³ãã³ãã®è¡šçŸåãé«ãããããéã«æŽ»çšãããŠããŸãã
MDX 3.xïŒ2024幎以éã®ææ°ä»æ§ïŒã§ã¯ESMäºæã®import/exportæ§æã䜿ããåå®å šãªéçºãå¯èœã§ãããã ããMDXã¯ãã«ãã¹ããããå¿ èŠã§ãããæšæºã®Markdownãã¬ãã¥ãŒã¢ã§ã¯æ£ããã¬ã³ããªã³ã°ãããŸãããããŒã å šäœã®ããŒã«ãã§ãŒã³ã察å¿ããŠãããã確èªããŠããå°å ¥ããŸããããã³ã³ãã³ãã®ç§»æ€æ§ãäžãããã¬ãŒããªãããããŸãã
remarkãšrehypeãã©ã°ã€ã³ã䜿ãã°ãç¬èªã®èšæ³å€æãå®çŸ©ã§ããŸããæ°åŒè¡šèšïŒKaTeX/MathJaxïŒãMermaidãã€ã¢ã°ã©ã ãã·ã³ã¿ãã¯ã¹ãã€ã©ã€ãã®ã«ã¹ã¿ãã€ãºãç®æ¬¡ã®èªåçæãªã©ããã©ã°ã€ã³ãšã³ã·ã¹ãã ã¯éåžžã«å å®ããŠããŸãã:::èšæ³ã§ã«ã¹ã¿ã ã³ã³ãããå®çŸ©ããremark-directivesã¯ãMarkdownã®è¡šçŸåãå€§å¹ ã«æ¡åŒµãã人æ°ã®ãã©ã°ã€ã³ã§ãã
ãããã®æ¡åŒµã䜿ãéã®ã¢ããã€ã¹ãšããŠãæšæºèšæ³ã§ååãªéšåã«ã¯æ¡åŒµã䜿ããªãããšãæšå¥šããŸããé床ã«ã«ã¹ã¿ãã€ãºãããMarkdownã¯ããŒã«éã®ç§»æ€æ§ã倱ãããæ°ããããŒã ã¡ã³ããŒã®åŠç¿ã³ã¹ããäžãããŸãããŸãCommonMark+GFMã§æžããæ¬åœã«å¿ èŠãªå Žåã«ã®ã¿æ¡åŒµãå°å ¥ããæ®µéçã¢ãããŒããè³¢æã§ãã
{/* MDXã®äŸïŒReactã³ã³ããŒãã³ãã®åã蟌㿠*/}
import { CodePlayground } from '../components/CodePlayground'
import { Alert } from '../components/Alert'
# APIãªãã¡ã¬ã³ã¹
以äžã®ãã¬ã€ã°ã©ãŠã³ãã§APIã詊ããŸãïŒ
<CodePlayground
language="javascript"
defaultCode="fetch('/api/users').then(r => r.json())"
/>
<Alert type="warning">
æ¬çªç°å¢ã§ã¯å¿
ãèªèšŒããŒã¯ã³ãå«ããŠãã ããã
</Alert>
{/* æ°åŒèšæ³ïŒKaTeXãã©ã°ã€ã³äœ¿çšæïŒ */}
äºæ¬¡æ¹çšåŒã®è§£ã®å
¬åŒïŒ
$$
x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}
$$ãã¹ããã©ã¯ãã£ã¹ãšããããééã
ãªã³ã¿ãŒã®å°å ¥ãæšå¥šããŸããmarkdownlintïŒVS Codeæ¡åŒµãšããŠãå©çšå¯èœïŒã¯Markdownã®äžè¬çãªåé¡ãæ€åºããŸããäŸãã°ãèŠåºãã¬ãã«ã®é£ã³è¶ãïŒh2ã®æ¬¡ã«h4ïŒããªã¹ãåã®ç©ºè¡äžè¶³ãè¡æ«ã®äžèŠãªç©ºçœãªã©ã§ããCI/CDãã€ãã©ã€ã³ã«markdownlint-cliãçµã¿èŸŒãã°ãããŒã å šäœã§äžè²«ããå質ãä¿ãŠãŸãã
ãã¡ã€ã«åãšãªã³ã¯ã®èŠåãšããŠããã¡ã€ã«åã¯kebab-caseïŒãã€ãã³åºåãã®å°æåïŒãæšå¥šã§ããã¹ããŒã¹ãæ¥æ¬èªã®ãã¡ã€ã«åã¯URLãšã³ã³ãŒãã®åé¡ãåŒãèµ·ããããšããããŸããçžå¯Ÿãªã³ã¯ã䜿ãå Žåã¯ããã¡ã€ã«ã®ç§»åæã«ãªã³ã¯åããçºçããããããããªã³ã¯ãã§ãã«ãŒïŒmarkdown-link-checkçïŒã宿çã«å®è¡ããŠãã ããã
ããããééããšããŠãã³ãŒããããã¯ã®èšèªæå®å¿ãããããŸããèšèªãæå®ããªããšã·ã³ã¿ãã¯ã¹ãã€ã©ã€ããé©çšããããèªè ã«ãšã£ãŠéåžžã«èªã¿ã«ãããªããŸããããäžã€ã¯ãªã¹ãã®ã€ã³ãã³ãäžçµ±äžã§ãã2ã¹ããŒã¹ãš4ã¹ããŒã¹ãæ··åšããããšãç°ãªãããŒãµãŒã§ç°ãªããã¹ãæ§é ã«è§£éãããå¯èœæ§ããããŸãã
æåŸã«ã巚倧ãªåäžMarkdownãã¡ã€ã«ã¯é¿ããŸããããREADMEã1000è¡ãè¶ ãããåå²ã®ãµã€ã³ã§ããç®æ¬¡ïŒTOCïŒã®èªåçæããŒã«ã䜿ããé¢é£ããã»ã¯ã·ã§ã³ãå¥ãã¡ã€ã«ã«åãåºããŠçžäºãªã³ã¯ããæ§é ãçæ³ã§ããããã¥ã¡ã³ããµã€ããžã§ãã¬ãŒã¿ãŒïŒDocusaurusãVitePressçïŒã䜿ãã°ãè€æ°ã®Markdownãã¡ã€ã«ãããã²ãŒã·ã§ã³ä»ãã®ãµã€ããšããŠæ§ç¯ã§ããŸãã