GitLab Markdown
このMarkdownガイドはGitLab内部のエントリとファイルのためのMarkdownレンダリングシステムにのみ有効です。GitLabドキュメントウェブサイトとGitLabのメインウェブサイトでは有効ではありません。ドキュメントウェブサイトは拡張Kramdown gem、GitLab Kramdownを使っています。 Kramdownに関するすべての情報はGitLab Kramdownガイドを参照して下さい。
GitLab風味のMarkdown(GFM)
GitLabは、”GitLab Flavored Markdown”(GFM)を使用しています。 これは、CommonMark仕様(標準のMarkdownをベースにしています)をいくつかの方法で拡張し、さらに便利な機能を追加したものです。 GitHubFlavored Markdownに触発されました。
GFMは次のような分野で利用することができます。
- コメント
- イシュー
- マージリクエスト
- マイルストーン
- スニペット (スニペットには
.md
という拡張子が必要です) - Wikiページ
- リポジトリ内のMarkdownドキュメント
- エピック
GitLab で他のリッチテキストファイルを使うこともできます。 そのためには依存関係をインストールする必要があるかもしれません。詳しくはgitlab-markup
gem projectをご覧ください。
RedcarpetからCommonMarkへの移行について
11.1以降、GitLabはGitLabシステム内のすべての新しいイシュー、マージリクエスト、コメント、その他のMarkdownコンテンツのMarkdown処理にCommonMark Rubyライブラリを使用しています。 11.3以降、リポジトリ内のWikiページやMarkdownファイル(*.md
)もCommonMarkで処理されます。 11.8以降、Redcarpet Rubyライブラリは削除され、11.1以前のものも含め、すべてのイシューとコメントはCommonMark Rubyライブラリで処理されるようになりました。
ドキュメントサイトでは、2018年10月にMarkdownエンジンをRedcarpetからKramdownに移行しています。
GitLab の RedCarpet バージョンの Markdown のニュアンスを使用して書かれた古いイシュー、マージリクエスト、または Markdown ドキュメントがリポジトリにあるかもしれません。 CommonMark は少し厳しい構文を使用しているので、CommonMark に移行してからこれらのドキュメントは少し違って表示されるかもしれません。
例えば、リストが入れ子になっている番号付きリストは、正しく表示されないことがあります。
1. Chocolate
- dark
- milk
レンダリングを修正するには、入れ子になった各項目にスペースを追加して、-
を一番上のリスト項目 ( この場合はC
) の最初の文字に合わせます:
1. Chocolate
- dark
- milk
- Chocolate
- dark
- milk
大量のMarkdownファイルがある場合、それらが正しく表示されるかどうかを判断するのは面倒です。diff_redcarpet_cmarkツール(公式サポート製品ではありません)を使用すると、ファイルのリストとRedCarpetとCommonMarkがファイルをレンダリングする方法の違いを生成できます。 これにより、何かを変更する必要があるかどうかを示すことができます(多くの場合は何も変える必要はありません)。
GFMは標準的なMarkdownを拡張する
GitLabでは、標準(CommonMark)のフォーマットをフルに活用しつつ、GitLabのユーザーに便利な機能を追加しています。
標準的なMarkdownにはない、新しいMarkdownの機能を利用しています。
- HEX、RGB、HSLで書かれたカラーチップ
- ダイアグラムとフローチャート
- 絵文字
- フロントマター
- インラインデフ
- LaTeXで記述された数式やシンボル
- GitLabの特別なリファレンス
- タスクリスト
- 目次
- Wiki特有のMarkdown
また、標準的なMarkdownの使用方法を変えることなく、Markdownの機能を拡張しています。
標準マークダウン | GitLabにおける拡張Markdown |
---|---|
ブロッククオーツ | 複数行ブロック引用符 |
コードブロック | カラーコードとシンタックスハイライト |
強調 | アンダースコア |
ヘッダー | リンク可能なヘッダーID |
イメージ | 埋め込まれたビデオ&オーディオ |
改行 | より多くの改行制御 |
リンクス | 自動リンクURL |
新しいGFM Markdownエクステンション
カラーズ
正しく表示されない場合は、GitLab本体で表示してください。
HEX、RGB、HSL形式で書かれた色をカラーインジケータでレンダリングさせることが可能です。
対応フォーマット(ネームドカラーは非対応)。
- HEX:
`#RGB[A]`
または`#RRGGBB[AA]`
- RGB:
`RGB[A](R, G, B[, A])`
- HSL:
`HSL[A](H, S, L[, A])`
バックテックの中に書かれた色の後に、色の “チップ “が付きます。
- `#F00`
- `#F00A`
- `#FF0000`
- `#FF0000AA`
- `RGB(0,255,0)`
- `RGB(0%,100%,0%)`
- `RGBA(0,255,0,0.3)`
- `HSL(540,70%,50%)`
- `HSLA(540,70%,50%,0.3)`
#F00
#F00A
#FF0000
#FF0000AA
RGB(0,255,0)
RGB(0%,100%,0%)
RGBA(0,255,0,0.3)
HSL(540,70%,50%)
HSLA(540,70%,50%,0.3)
ダイアグラムとフローチャート
MermaidやPlantUMLを使って、GitLabのテキストからダイアグラムやフローチャートを生成することが可能です。
Mermaid
GitLab 10.3から導入されました。
詳しくは公式ページをご覧ください。 Mermaidを初めて使う場合や、Mermaidのコードの問題を特定するのに役立つMermaid Live Editorは、Mermaidダイアグラム内で問題を作成し解決するのに役立つツールです。
ダイアグラムやフローチャートを作成するには、mermaid
ブロックの内部にテキストを記述します:
```mermaid
graph TD;
A-->B;
A-->C;
B-->D;
C-->D;
```
サブグラフを含めることも可能です。
```mermaid
graph TB
SubGraph1 --> SubGraph1Flow
subgraph "SubGraph 1 Flow"
SubGraph1Flow(SubNode 1)
SubGraph1Flow -- Choice1 --> DoChoice1
SubGraph1Flow -- Choice2 --> DoChoice2
end
subgraph "Main Graph"
Node1[Node 1] --> Node2[Node 2]
Node2 --> SubGraph1[Jump to SubGraph1]
SubGraph1 --> FinalThing[Final Thing]
end
```
PlantUML
GitLabでPlantUMLを利用できるようにするには、まずGitLabの管理者がそれを有効にする必要があります。 詳しくはPlantUML & GitLabをご覧ください。
絵文字
正しく表示されない場合は、GitLab本体で表示してください。
Sometimes you want to :monkey: around a bit and add some :star2: to your :speech_balloon:. Well we have a gift for you:
:zap: You can use emoji anywhere GFM is supported. :v:
You can use it to point out a :bug: or warn about :speak_no_evil: patches. And if someone improves your really :snail: code, send them some :birthday:. People will :heart: you for that.
If you're new to this, don't be :fearful:. You can join the emoji :family:. All you need to do is to look up one of the supported codes.
Consult the [Emoji Cheat Sheet](https://www.emojicopy.com) for a list of all supported emoji codes. :thumbsup:
をしたいと思うことがあります。 を少しづつ追加していきます。
をあなたの
さて、あなたにプレゼントがあります。
GFMに対応している場所であれば、どこでも絵文字が使えます。
を指摘するのに使うことができます。 気遣う
そして、もし誰かがあなたのことを本当に良くしてくれるのなら、それはとても大切なことです。
コードを送信してください。
.人々は意志
そのために
初めての方、ドンマイです。 絵文字に参加することができます
必要なのは、対応するコードを調べることです。
対応する絵文字コードの一覧は、「絵文字チートシート」をご覧ください。
注意:上記の絵文字の例では、このドキュメント用にハードコードされた画像を使用しています。 GitLab内でレンダリングされた絵文字は、使用するOSやブラウザによって異なって表示される場合があります。
ほとんどの絵文字は、macOS、Windows、iOS、Androidでネイティブにサポートされており、サポートされていないところでは、画像ベースの絵文字にフォールバックされます。
フロントマター
GitLab 11.6から導入されました。
フロントマターは、そのコンテンツの前に、Markdownドキュメントの先頭に含まれるメタデータです。 このデータは、Jekyll、Hugo、および他の多くのアプリケーションなどの静的サイトジェネレータで使用することができます。
GitLabによってレンダリングされたMarkdownファイルを表示すると、レンダリングされたHTMLコンテンツの前に、ドキュメントの上部にあるボックスで、フロントマターがそのまま表示されます。 例として、GitLabドキュメントファイルのソースとレンダリングバージョンを切り替えて表示することができます。
GitLabでは、フロントマターはMarkdownファイルとwikiページでのみ使われ、Markdownフォーマットがサポートされている他の場所では使われません。 それはドキュメントの一番上になければならず、以下で説明するように、区切り文字に挟まれていなければなりません。
以下のデリミタがサポートされている。
-
YAML (
---
):--- title: About Front Matter example: language: yaml ---
-
TOML (
+++
):+++ title = "About Front Matter" [example] language = "toml" +++
-
JSON (
;;;
):;;; { "title": "About Front Matter" "example": { "language": "json" } } ;;;
他の言語は、既存の区切り記号のいずれかに指定子を追加することで対応可能です。 例えば
---php
$title = "About Front Matter";
$example = array(
'language' => "php",
);
---
インライン差分
正しく表示されない場合は、GitLab本体で表示してください。
インラインの差分タグを使用すると、{+ additions +}
または[- deletions -]
を表示できます。
折り返しタグは、中括弧または角括弧のいずれかを使用することができます。
- {+ addition 1 +}
- [+ addition 2 +]
- {- deletion 3 -}
- [- deletion 4 -]
- {+ addition 1 +}
- [+ addition 2 +]
- {- deletion 3 -}
- [- deletion 4 -]
ただし、ラッピングタグを混在させることはできません。
- {+ addition +]
- [+ addition +}
- {- deletion -]
- [- deletion -}
diffに`code`
フォントの単語が含まれている場合、各バックスティック`
をバックスラッシュ\
で必ずエスケープしてください。そうしないと、diffのハイライトが正しく表示されません:
- {+ Just regular text +}
- {+ Text with `backticks` inside +}
- {+ Text with escaped \`backticks\` inside +}
- {+ Just regular text +}
- {+
backticks
を内部に含むテキスト +} - {+ Text with escaped `backticks` inside +}
Math
正しく表示されない場合は、GitLab本体で表示してください。
LaTeXの構文で書かれた数式をKaTeXで表示させることが可能です。
ドル記号$
の間に書かれた数学は、テキストと一緒にインラインでレンダリングされます。math
と宣言されたコードブロックの内部に書かれた数学は、別の行にレンダリングされます:
This math is inline $`a^2+b^2=c^2`$.
This is on a separate line
```math
a^2+b^2=c^2
```
この計算はインライン $a^2+b^2=c^2
$.
これは別ラインで
a^2+b^2=c^2
KaTeXはLaTeXのサブセットしかサポートしていませんので、ご注意ください。
:stem: latexmath
でも使えます。詳細はAsciidoctor のユーザーマニュアルを参照してください。GitLabの特別なリファレンス
GFM は、GitLab に関連する特別な参照を認識します。 たとえば、イシュー、コミット、チームメンバー、あるいはプロジェクト内のチーム全体を参照することができます。 GFM はその参照をリンクに変換し、それらの間を行き来することができるようにします。
さらに、GFMは特定のクロスプロジェクト参照を認識し、同じ名前空間から他のプロジェクトを参照するための短縮版も備えています。
GFMでは、以下のように認識します。
参考文献 | 入力 | クロスプロジェクトリファレンス | 同一名前空間内のショートカット |
---|---|---|---|
specific user | @user_name
| ||
specific group | @group_name
| ||
チーム全体 | @all
| ||
プロジェクト | namespace/project>
| ||
イシュー | #123
| namespace/project#123
| project#123
|
マージリクエスト | !123
| namespace/project!123
| project!123
|
スニペット | $123
| namespace/project$123
| project$123
|
エピック | &123
| group1/subgroup&123
| |
IDでラベル | ~123
| namespace/project~123
| project~123
|
名前による一言ラベル | ~bug
| namespace/project~bug
| project~bug
|
名前による多言語ラベル | ~"feature request"
| namespace/project~"feature request"
| project~"feature request"
|
名前によるスコープ付きラベル | ~"priority::high"
| namespace/project~"priority::high"
| project~"priority::high"
|
ID別プロジェクトマイルストーン | %123
| namespace/project%123
| project%123
|
なまえいちごう | %v1.23
| namespace/project%v1.23
| project%v1.23
|
名前による複数ワードマイルストーン | %"release candidate"
| namespace/project%"release candidate"
| project%"release candidate"
|
特定コミット | 9ba12248
| namespace/project@9ba12248
| project@9ba12248
|
コミット範囲比較 | 9ba12248...b19a04f5
| namespace/project@9ba12248...b19a04f5
| project@9ba12248...b19a04f5
|
リポジトリファイルリファレンス | [README](doc/README)
| ||
リポジトリファイル行参照 | [README](doc/README#L13)
|
これに加えて、いくつかのオブジェクトへのリンクも認識され、フォーマット化されています。 その例として、以下のようなものが挙げられます。
- イシューに関するコメント:
"https://gitlab.com/gitlab-org/gitlab/-/issues/1234#note_101075757"
、次のように表示されます。#1234 (note1)
- イシューのデザインタブ:
"https://gitlab.com/gitlab-org/gitlab/-/issues/1234/designs"
は、#1234 (designs)
のように表示されます。 - 個々のデザインへのリンク:
"https://gitlab.com/gitlab-org/gitlab/-/issues/1234/designs/layout.png"
、これは#1234[layout.png]
としてレンダリングされます。
タスクリスト
正しく表示されない場合は、GitLab本体で表示してください。
タスクリストはMarkdownがサポートされている場所であればどこでも追加することができますが、ボックスを「クリック」して切り替えることができるのは、イシュー、マージリクエスト、コメント内の場合のみです。 その他の場所では、角括弧内のx
を追加または削除してステータスを変更するために、手動でMarkdownを編集する必要があります。
タスクリストを作成するには、特別な書式のMarkdownリストを追加します。 順番なしリストと順番付きリストのいずれかを使用できます。
- [x] Completed task
- [ ] Incomplete task
- [ ] Sub-task 1
- [x] Sub-task 2
- [ ] Sub-task 3
1. [x] Completed task
1. [ ] Incomplete task
1. [ ] Sub-task 1
1. [x] Sub-task 2
- [x] 完了したタスク
- [ ] 未完成のタスク
- [ ] サブタスク1
- [x] サブタスク2
- [ ] サブタスク3
- [x] 完了したタスク
- [ ] 未完成のタスク
- [ ] サブタスク1
- [x] サブタスク2
目次
Markdownファイル、Wikiページ、イシューリクエスト/マージリクエストの説明文に目次を追加するには、[[_TOC_]]
タグを行に追加してください。様々なヘッダーにリンクする順序なしリストとして表示されます。
This is an intro sentence to my Wiki page.
[[_TOC_]]
## My first heading
First section content.
## My second heading
Second section content.
Wiki特有のMarkdown
次の例は、Wiki内部のリンクの動作を示しています。
Wiki - ページへの直接リンク
ページのスラッグを含むだけのリンクは、_wikiのベースレベルでは_そのページを指します。
このスニペットはWikiのルートにあるdocumentation
:
[Link to Documentation](documentation)
Wiki - ファイルへの直接リンク
ファイル拡張子を持つリンクは、_現在のページからの相対_パスでそのファイルを指す。
下のスニペットが<your_wiki>/documentation/related
のページに置かれた場合、<your_wiki>/documentation/file.md
にリンクすることになります:
[Link to File](file.md)
Wiki - 階層的なリンク
リンクは、./<page>
,../<page>
, などを使用して、現在のWikiページから相対的に構築することができます。
このスニペットが<your_wiki>/documentation/main
のページに置かれた場合、<your_wiki>/documentation/related
にリンクすることになります:
[Link to Related Page](./related)
このスニペットが<your_wiki>/documentation/related/content
のページに置かれた場合、<your_wiki>/documentation/main
にリンクすることになります:
[Link to Related Page](../main)
このスニペットが<your_wiki>/documentation/main
のページに置かれた場合、<your_wiki>/documentation/related.md
にリンクすることになります:
[Link to Related Page](./related.md)
このスニペットが<your_wiki>/documentation/related/content
のページに置かれた場合、<your_wiki>/documentation/main.md
にリンクすることになります:
[Link to Related Page](../main.md)
Wiki - ルートリンク
/
で始まるリンクはWikiルートからの相対リンクです。
このスニペットは<wiki_root>/documentation
にリンクしています:
[Link to Related Page](/documentation)
このスニペットは<wiki_root>/miscellaneous.md
にリンクしています:
[Link to Related Page](/miscellaneous.md)
GitLab Flavored Markdownにメトリクスを埋め込む
メトリクスチャートはGitLab Flavored Markdownに埋め込むことができる。 詳細はGitLab flavored Markdown内のEmbedding Metricsを参照のこと。
GitLabにおける標準的なMarkdownと拡張機能
すべての標準的なMarkdownフォーマットはGitLab内で期待通りに動作するはずです。 いくつかの標準的な機能は、標準的な使用法に影響を与えることなく、追加機能で拡張されています。 機能が拡張された場合、新しいオプションはサブセクションとしてリストアップされます。
ブロッククォーツ
ブロッククオートは、傍注などの情報を強調するのに便利です。ブロッククオートの行を>
で始めることで生成されます:
> Blockquotes are very handy to emulate reply text.
> This line is part of the same quote.
Quote break.
> This is a very long line that will still be quoted properly when it wraps. Oh boy let's keep writing to make sure this is long enough to actually wrap for everyone. Oh, you can *put* **Markdown** into a blockquote.
ブロッククオートは返信用テキストを模倣するのに非常に便利です。 この行は同じ引用文の一部です。
引用ブレーク。
これはとても長い行ですが、ラップしてもちゃんと引用されます。 やれやれ、実際にみんながラップできるような長さになるように書き続けましょう。 あ、Markdownをblockquoteに入れられるんですね。
マルチライン・ブロッククオート
正しく表示されない場合は、GitLab本体で表示してください。
GFMはMarkdownの標準を拡張し、>>>
で囲まれた複数行のブロッククォートもサポートしています:
>>>
If you paste a message from somewhere else
that spans multiple lines,
you can quote that without having to manually prepend `>` to every line!
>>>
他の場所からのメッセージを貼り付ける場合
複数の行にまたがるような
であれば、手動ですべての行に
>
!
コードスパン、ブロック
単なるテキストではなく、コードとして見るべきものを強調することができます。
単純なインライン・コードは、シングル・バックティック`
でハイライトされます:
Inline `code` has `back-ticks around` it.
インラインcode
back-ticks around
です。
同様に、コードのブロック全体をトリプルバックティック(```
)やトリプルチルド(~~~
)で囲んだり、4つ以上のスペースをインデントすることで、より大きなコードに対して同様の効果を得ることができます。
```python
def function():
#indenting works just fine in the fenced code block
s = "Python code"
print s
```
Using 4 spaces
is like using
3-backtick fences.
~~~
Tildes are OK too.
~~~
上の3つの例は、次のようにレンダリングされます。
def function():
#indenting works just fine in the fenced code block
s = "Python code"
print s
Using 4 spaces
is like using
3-backtick fences.
Tildes are OK too.
カラーコードとシンタックスハイライト
正しく表示されない場合は、GitLab本体で表示してください。
GitLabはRouge Rubyライブラリを使い、コードブロック内でよりカラフルなシンタックスハイライトを実現しています。 対応言語のリストはRougeプロジェクトのwikiをご覧ください。 シンタックスハイライトはコードブロック内のみ対応しており、インラインでコードをハイライトすることはできません。
コードのブロックは、3つのバックティック(```
)または3つのチルダ(~~~
)を持つ行で囲われ、最初のフェンスの終わりに言語が特定されます:
```javascript
var s = "JavaScript syntax highlighting";
alert(s);
```
```python
def function():
#indenting works just fine in the fenced code block
s = "Python syntax highlighting"
print s
```
```ruby
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
```
```
No language indicated, so no syntax highlighting.
s = "There is no highlighting for this."
But let's throw in a <b>tag</b>.
```
上の4つの例は、次のようにレンダリングされます。
var s = "JavaScript syntax highlighting";
alert(s);
def function():
#indenting works just fine in the fenced code block
s = "Python syntax highlighting"
print s
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
No language indicated, so no syntax highlighting.
s = "There is no highlighting for this."
But let's throw in a <b>tag</b>.
強調
Markdownにはテキストを強調する複数の方法があります。 斜体、太字、取り消し線、また、これらの強調スタイルを一緒に組み合わせることができます。
例:
Emphasis, aka italics, with *asterisks* or _underscores_.
Strong emphasis, aka bold, with double **asterisks** or __underscores__.
Combined emphasis with **asterisks and _underscores_**.
Strikethrough uses two tildes. ~~Scratch this.~~
アスタリスクまたは_アンダースコアで_強調する、別名イタリック。
強い強調、別名ボールド、ダブルアスタリスクまたは__アンダースコア__付き。
アスタリスクと_アンダースコアで_複合的に強調する。
Strikethrough はチルダを 2 つ使用します。Scratch this.
単語内の複数のアンダースコアと単語途中の強調表示
正しく表示されない場合は、GitLab本体で表示してください。
特に複数のアンダースコアを含むコードや名前を扱う場合、単語の_一部だけを_イタリックにすることは通常便利ではありません。 そのため、GFMはコードを議論するMarkdownドキュメントをより良くレンダリングするために、単語内の複数のアンダーラインを無視することで標準Markdown規格を拡張しました。
perform_complicated_task
do_this_and_do_that_and_another_thing
but_emphasis is_desired _here_
perform_complicated_task
これとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとこれとを行う
しかし、_ここでは_強調が必要です。
単語の一部だけを強調したい場合も、アスタリスクを使えば可能です。
perform*complicated*task
do*this*and*do*that*and*another thing
じゅうぶんのたびをつとめる
呉々も呉々も
脚注
脚注は、Markdownファイルの末尾にレンダリングされるメモへのリンクを追加します。
脚注を作成するには、参照タグと、脚注の内容を記述した別の行(ファイル内の任意の場所)の両方が必要です。
タグの名前に関係なく、参照タグの相対的な順序によってレンダリング番号が決定される。
このバグが解決されるまで、脚注タグ名に小文字のw
やアンダースコア (_
) を使用することは避けてください。
脚注の参照タグは次のようになります。 [^1] この参照タグは文字と数字が混在しています。 ^footnote-42] [^1]: これは脚注の中のテキストです。 [^footnote-42]: これは別の脚注です。
脚注の参照タグは次のようなものです:1
この参照用タグは、文字と数字が混在しています。2
ヘッダー
# H1
## H2
### H3
#### H4
##### H5
###### H6
Alternatively, for H1 and H2, an underline-ish style:
Alt-H1
======
Alt-H2
------
ヘッダーIDおよびリンク
GFMはMarkdownの標準を拡張し、すべてのMarkdownでレンダリングされたヘッダが自動的にIDを取得し、コメント以外ではリンクすることができるようにしました。
カーソルを合わせると、それらのIDへのリンクが表示されるので、ヘッダーにリンクをコピーして別の場所で使用することが容易になります。
IDは、以下のルールに従ってヘッダーの内容から生成される。
- すべてのテキストが小文字に変換されます。
- 単語以外のテキスト(句読点やHTMLなど)はすべて削除されます。
- すべてのスペースはハイフンに変換されます。
- 2つ以上並んだハイフンは1つに変換されます。
- 同じIDのヘッダーが既に生成されている場合は、1から始まる一意のインクリメント番号が付加される。
使用例:
# This header has spaces in it
## This header has a :thumbsup: in it
# This header has Unicode in it: 한글
## This header has spaces in it
### This header has spaces in it
## This header has 3.5 in it (and parentheses)
は、以下のリンクIDを生成します。
this-header-has-spaces-in-it
this-header-has-a-in-it
this-header-has-unicode-in-it-한글
this-header-has-spaces-in-it-1
this-header-has-spaces-in-it-2
this-header-has-3-5-in-it-and-parentheses
なお、絵文字の処理はヘッダーIDが生成される前に行われるため、絵文字は画像に変換され、その後IDから削除される。
ホリゾンタルルール
3つ以上のハイフン、アスタリスク、アンダースコアを使用することで、非常に簡単に水平ルールを作成することができます。
Three or more hyphens,
---
asterisks,
***
or underscores
___
画像
例:
インラインスタイル(カーソルを合わせるとタイトルテキストを表示):  リファレンススタイル(カーソルを合わせるとタイトルテキストを表示): ![alt text1][logo] [logo]: img/markdown_logo.png "Title Text"
インラインスタイル(カーソルを合わせるとタイトルテキストが表示されます)。
リファレンス風(カーソルを合わせるとタイトル文字が表示されます)。
動画
正しく表示されない場合は、GitLab本体で表示してください。
ビデオ拡張子を持つファイルにリンクする画像タグは、自動的にビデオプレーヤーに変換されます。有効なビデオ拡張子は、.mp4
、.m4v
、.mov
、.webm
、.ogv
です:
Here's a sample video:

サンプル動画はこちらです。
オーディオ
正しく表示されない場合は、GitLab本体で表示してください。
動画と同様に、音声拡張子を持つファイルのリンクタグは、自動的に音声プレーヤーに変換されます。 有効な音声拡張子は、.mp3
、.oga
、.ogg
、.spx
、.wav
です:
Here's a sample audio clip:

ここでは、そのサンプル音声をご紹介します。
インラインHTML
2 番目の例で HTML 内にレンダリングされた Markdown を見るには、GitLab 自身で表示します。
また、Markdownの中で生のHTMLを使用することもでき、通常、かなりうまく機能します。
許可される HTML タグと属性のリストについては HTML::Pipeline のSanitizationFilterクラスのドキュメントを参照してください。デフォルトのSanitizationFilter
allowlist に加えて、GitLab ではspan
,abbr
,details
,summary
要素を許可しています。
<dl>
<dt>Definition list</dt>
<dd>Is something people use sometimes.</dd>
<dt>Markdown in HTML</dt>
<dd>Does *not* work **very** well. HTML <em>tags</em> will <b>work</b>, in most cases.</dd>
</dl>
- 定義リスト
- 人が時々使うものです。
- HTMLでマークダウン
- HTMLタグはほとんどの場合、機能します。
HTMLタグの内部でMarkdownを使用することは可能ですが、Markdownを含む行が独自の行に分離されている場合に限ります。
<dl>
<dt>Markdown in HTML</dt>
<dd>Does *not* work **very** well. HTML tags will work, in most cases.</dd>
<dt>Markdown in HTML</dt>
<dd>
Does *not* work **very** well. HTML tags will work, in most cases.
</dd>
</dl>
- HTMLでマークダウン
- HTMLタグはほとんどの場合、機能します。
- HTMLでマークダウン
- not workvery well. HTMLタグは、ほとんどの場合、動作します。
詳細・概要
2 番目の例で HTML 内にレンダリングされた Markdown を見るには、GitLab 自身で表示します。
HTMLの<details>
と<summary>
タグを使って、コンテンツを折りたたむことができます。これは、特に長いログを折りたたむのに便利で、画面のスペースをとりません。
<p>
<details>
<summary>Click this to collapse/fold.</summary>
These details <em>will</em> remain <strong>hidden</strong> until expanded.
<pre><code>PASTE LOGS HERE</code></pre>
</details>
</p>
これをクリックすると折りたたみ/折りたたみができます。
これらの詳細 は、拡大されるまで隠されたままです。
ここにログを貼り付けます
これらのタグの中のマークダウンもサポートされています。
{::options parse_block_html="true" /}
をページの先頭に追加し、markdown="span"
を次のように冒頭の要約タグに追加してみてください:<summary markdown="span">
。例のように、</summary>
タグの後と</details>
タグの前に空白行を残すことを忘れないでください:
<details>
<summary>Click this to collapse/fold.</summary>
These details _will_ remain **hidden** until expanded.
```
PASTE LOGS HERE
```
</details>
これをクリックすると折りたたみ/折りたたみができます。
これらの詳細 は、拡大されるまで隠されたままです。ここにログを貼り付けます
改行
Enter を2回連続で押したときのように、前の文章が2つの改行で終わっている場合は、改行されます(新しい段落が始まります)。改行が1つだけの場合(Enter を1回押す)、次の文章は同じ段落に含まれます。 長い行を折り返さないようにして、編集可能にしておきたいときに便利な機能です。
Here's a line for us to start with.
This longer line is separated from the one above by two newlines, so it will be a *separate paragraph*.
This line is also a separate paragraph, but...
These lines are only separated by single newlines,
so they *do not break* and just follow the previous lines
in the *same paragraph*.
ここで、まずは1行だけご紹介します。
この長い行は、上の行と2つの改行で区切られているため、別の段落になります。
この行も独立した段落ですが… これらの行は単一の改行で区切られているだけなので、改行されず、同じ段落の前の行に続くだけです。
改行
GFMでは、段落や改行の扱いはMarkdownの仕様に準拠しています。
段落とは、上で説明したように、1行以上の空白行(最初の段落の終わりには2つの改行)で区切られた、1行以上の連続したテキストを指します。
改行やソフトリターンをより細かく制御したい場合は、行末にバックスラッシュ、または2つ以上のスペースを入れて1つの改行を追加できます。 改行が2つ並ぶと、間に空行を入れて新しい段落が作成されます。
First paragraph.
Another line in the same paragraph.
A third line in the same paragraph, but this time ending with two spaces.{space}{space}
A new line directly under the first paragraph.
Second paragraph.
Another line, this time ending with a backslash.\
A new line due to the previous backslash.
リンク集
リンクの作成方法には、インラインスタイルとリファレンススタイルの2種類があります。
- This is an [inline-style link](https://www.google.com)
- This is a [link to a repository file in the same directory](index.md)
- This is a [relative link to a readme one directory higher](../README.md)
- This is a [link that also has title text](https://www.google.com "This link takes you to Google!")
Using header ID anchors:
- This links to [a section on a different Markdown page, using a "#" and the header ID](index.md#overview)
- This links to [a different section on the same page, using a "#" and the header ID](#header-ids-and-links)
Using references:
- This is a [reference-style link, see below][Arbitrary case-insensitive reference text]
- You can [use numbers for reference-style link definitions, see below][1]
- Or leave it empty and use the [link text itself][], see below.
Some text to show that the reference links can follow later.
[arbitrary case-insensitive reference text]: https://www.mozilla.org/en-US/
[1]: https://slashdot.org
[link text itself]: https://www.reddit.com
- これはインライン形式のリンクです
- これは、同じディレクトリにあるリポジトリファイルへのリンクです
- READMEの1つ上のディレクトリへの相対リンクです。
- これは、タイトルテキストもあるリンクですこの
ヘッダーIDアンカーを使用する。
- これは別のMarkdownページのセクションにリンクしており、”#”とヘッダーIDを使用しています。
- これは、同じページの別のセクションにリンクするもので、”#”とヘッダーIDを使用します。
リファレンスを使用する。
- これはリファレンス形式のリンクで、以下を参照してください。
- リファレンス形式のリンク定義に数字を使用することができますので、以下をご参照ください。
- または、空欄にして、リンクテキストそのものを使用することもできます。
参照リンクが後からついてくることを示すためのテキストをいくつか。
[I'm a reference-style link](style)
、リンクがWiki Markdownファイルの内部にある場合にのみ、リンクはwikis/style
。URL自動リンク
GFMは、テキストに入れたほとんどのURLを自動リンクしてくれます。
- https://www.google.com
- https://www.google.com
- ftp://ftp.us.debian.org/debian/
- smb://foo/bar/baz
- irc://irc.freenode.net/
- http://localhost:3000
- https://www.google.com
- https://www.google.com
- ftp://ftp.us.debian.org/debian/
- <smb://foo/bar/baz>
- <irc://irc.freenode.net/>
- http://localhost:3000
リスト
順序付きリストと順序なしリストを作成することができます。
順序付きリストの場合、1.
各行の先頭に 、 1.
のように、リストを始めたい番号の1.
後にスペースを 1.
追加します1.
。 最初の番号の後は、どの番号を使ってもかまいません。順序付きリストは、自動的に縦の順番で番号が振られるので 1.
、同じリスト内のすべての項目で1.
繰り返すのが 1.
一般的です。1.
以外の番号で始めると、それが最初の番号として使われ、そこからカウントアップされます。
例:
1. First ordered list item
2. Another item
- Unordered sub-list.
1. Actual numbers don't matter, just that it's a number
1. Ordered sub-list
1. Next ordered sub-list item
4. And another item.
- 先頭の順序付きリスト項目
- もう一つの項目
- 順不同のサブリスト。
- 実際の数字は重要ではない、ただ数字であること。
- 順序付きサブリスト
- 次の順序のサブリスト項目
- そして、もうひとつの項目。
順序なしリストの場合は、各行の先頭に-
、*
、+
の後にスペースを追加しますが、これらを混在させてはいけません。
Unordered lists can:
- use
- minuses
They can also:
* use
* asterisks
They can even:
+ use
+ pluses
順序なしリストができる。
- 使い道
- にがお
もできるそうです。
- 使い道
- アスタリスク
もできるそうです。
- 使い道
- プラス
リストアイテムが複数の段落を含む場合、後続の各段落はリストアイテムのテキストの開始位置と同じ高さにインデントされる必要があります。
使用例:
1. First ordered list item
Second paragraph of first item.
1. Another item
-
先頭の順序付きリスト項目
第1項目の2段落目
-
もう一つの項目
最初の項目の段落が適切な数のスペースでインデントされていない場合、その段落はリスト項目の下で適切にインデントされず、リストの外に表示されます。
使用例:
1. First ordered list item
Paragraph of first item.
1. Another item
- 先頭の順序付きリスト項目
第 1 項の段落
- もう一つの項目
上付き添い字/下付き添い字
現在のところ、CommonMarkとGFMはRedcarpetのような上付き文字の構文(x^2
)をサポートしていません。 上付き文字と下付き文字には標準のHTML構文を使うことができます:
The formula for water is H<sub>2</sub>O
while the equation for the theory of relativity is E = mc<sup>2</sup>.
水の式は H2O であり、相対性理論の式は E = mc2である。
テーブル
テーブルはMarkdownのコア仕様には含まれませんが、GFMの一部です。
- 最初の行には、ヘッダーが「パイプ」(
|
)で区切られて書かれています。 - 2行目はヘッダーとセルを区切り、3本以上のダッシュを含まなければならない。
- 3行目とそれに続く行には、セルの値が格納される。
- Markdownでは何行にもわたってセルを区切ることはできません。セルは1行に収める必要がありますが、非常に長くすることもできます。 必要であれば、改行を強制するためにHTMLの
<br>
タグを含めることもできます。 - セルのサイズは互いに一致させる必要はなく、自由に設定できますが、パイプ(
|
)で区切る必要があります。 - 空白のセルを持つことができます。
- Markdownでは何行にもわたってセルを区切ることはできません。セルは1行に収める必要がありますが、非常に長くすることもできます。 必要であれば、改行を強制するためにHTMLの
使用例:
| header 1 | header 2 | header 3 |
| --- | ------ |---------:|
| cell 1 | cell 2 | cell 3 |
| cell 4 | cell 5 is longer | cell 6 is much longer than the others, but that's ok. It will eventually wrap the text when the cell is too large for the display size. |
| cell 7 | | cell <br> 9 |
ヘッダー1 | ヘッダー2 | ヘッダー3 |
---|---|---|
セル1 | セル2 | セル3 |
セル4 | セル5が長い | セル6が他よりかなり長いですが、大丈夫です。 表示サイズに対してセルが大きすぎる場合、最終的にテキストを折り返します。 |
セルセブン | セル 9 |
さらに、2行目の「ダッシュ」行の両端にコロン(:
)を追加することで、列内のテキストの配置を選択することができます。 これは列内のすべてのセルに影響します。
| Left Aligned | Centered | Right Aligned | Left Aligned | Centered | Right Aligned |
| :--- | :---: | ---: | :----------- | :------: | ------------: |
| Cell 1 | Cell 2 | Cell 3 | Cell 4 | Cell 5 | Cell 6 |
| Cell 7 | Cell 8 | Cell 9 | Cell 10 | Cell 11 | Cell 12 |
左寄せ | センタリング | 右寄せ | 左寄せ | センタリング | 右寄せ |
---|---|---|---|---|---|
セル1 | セル2 | セル3 | セル4 | セル5 | セル6 |
セル7 | セル8 | セル9 | セル10 | セル11 | セル12 |
スプレッドシートからコピーして、Markdownにペーストする
GitLab 12.7から導入されました。
表計算ソフト (Microsoft Excel、Google Sheets、Apple Numbers など) を使っている場合は、スプレッドシートからコピーすると GitLab がそれを Markdown テーブルとして貼り付けてくれます。 たとえば、次のようなスプレッドシートを持っているとしましょう。
セルを選択してクリップボードにコピーします。 GitLab Markdownエントリーを開き、スプレッドシートを貼り付けます。
リファレンス
- このドキュメントは、Markdown-Cheatsheetを大いに活用しています。
- Daring FireballにあるオリジナルのMarkdown Syntax Guideは、標準的なMarkdownの詳細な説明のための優れたリソースです。
- CommonMarkの詳細な仕様は、CommonMark Spec
- CommonMark Dingusは、CommonMarkのシンタックスをテストするための便利なツールです。