GitLab Markdown

このMarkdownガイドはGitLab内部のエントリとファイルのためのMarkdownレンダリングシステムにのみ有効です。GitLabドキュメントウェブサイトとGitLabのメインウェブサイトでは有効ではありません。ドキュメントウェブサイトは拡張Kramdown gem、GitLab Kramdownを使っています。 Kramdownに関するすべての情報はGitLab Kramdownガイドを参照して下さい。

注:このドキュメントはGitLab自身がレンダリングしたものをご覧になることをお勧めします。

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
  1. Chocolate
    • dark
    • milk
注意:RedcarpetとCommonMark Markdownの間に重要な違いがあれば、このドキュメントでフラグを立てます。

大量のMarkdownファイルがある場合、それらが正しく表示されるかどうかを判断するのは面倒です。diff_redcarpet_cmarkツール(公式サポート製品ではありません)を使用すると、ファイルのリストとRedCarpetとCommonMarkがファイルをレンダリングする方法の違いを生成できます。 これにより、何かを変更する必要があるかどうかを示すことができます(多くの場合は何も変える必要はありません)。

GFMは標準的なMarkdownを拡張する

GitLabでは、標準(CommonMark)のフォーマットをフルに活用しつつ、GitLabのユーザーに便利な機能を追加しています。

標準的なMarkdownにはない、新しい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)

ダイアグラムとフローチャート

MermaidPlantUMLを使って、GitLabのテキストからダイアグラムやフローチャートを生成することが可能です。

Mermaid

GitLab 10.3から導入されました

詳しくは公式ページをご覧ください。 Mermaidを初めて使う場合や、Mermaidのコードの問題を特定するのに役立つMermaid Live Editorは、Mermaidダイアグラム内で問題を作成し解決するのに役立つツールです。

ダイアグラムやフローチャートを作成するには、mermaid ブロックの内部にテキストを記述します:

```mermaid
graph TD;
  A-->B;
  A-->C;
  B-->D;
  C-->D;
```
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
```
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でネイティブにサポートされており、サポートされていないところでは、画像ベースの絵文字にフォールバックされます。

注:Linuxでは、Noto Color Emojiをダウンロードすることで、ネイティブの絵文字を完全にサポートすることができます。 Ubuntu 18.04(多くの最新のLinuxディストリビューションと同様)には、このフォントがデフォルトでインストールされています。

フロントマター

GitLab 11.6から導入されました

フロントマターは、そのコンテンツの前に、Markdownドキュメントの先頭に含まれるメタデータです。 このデータは、JekyllHugo、および他の多くのアプリケーションなどの静的サイトジェネレータで使用することができます。

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のサブセットしかサポートしていませんので、ご注意ください。

注意:これは Asciidoctor: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
  1. [x] 完了したタスク
  2. [ ] 未完成のタスク
    1. [ ] サブタスク1
    2. [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.

Preview of an auto-generated TOC in a Wiki

Wiki特有のMarkdown

次の例は、Wiki内部のリンクの動作を示しています。

ページのスラッグを含むだけのリンクは、_wikiのベースレベルでは_そのページを指します。

このスニペットはWikiのルートにあるdocumentation

[Link to Documentation](documentation)

ファイル拡張子を持つリンクは、_現在のページからの相対_パスでそのファイルを指す。

下のスニペットが<your_wiki>/documentation/relatedのページに置かれた場合、<your_wiki>/documentation/file.mdにリンクすることになります:

[Link to File](file.md)

リンクは、./<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_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.

注意:取り消し線はMarkdownのコア標準には含まれていませんが、GFMの一部です。

単語内の複数のアンダースコアと単語途中の強調表示

正しく表示されない場合は、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
------

GFMはMarkdownの標準を拡張し、すべてのMarkdownでレンダリングされたヘッダが自動的にIDを取得し、コメント以外ではリンクすることができるようにしました。

カーソルを合わせると、それらのIDへのリンクが表示されるので、ヘッダーにリンクをコピーして別の場所で使用することが容易になります。

IDは、以下のルールに従ってヘッダーの内容から生成される。

  1. すべてのテキストが小文字に変換されます。
  2. 単語以外のテキスト(句読点やHTMLなど)はすべて削除されます。
  3. すべてのスペースはハイフンに変換されます。
  4. 2つ以上並んだハイフンは1つに変換されます。
  5. 同じ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を生成します。

  1. this-header-has-spaces-in-it
  2. this-header-has-a-in-it
  3. this-header-has-unicode-in-it-한글
  4. this-header-has-spaces-in-it-1
  5. this-header-has-spaces-in-it-2
  6. this-header-has-3-5-in-it-and-parentheses

なお、絵文字の処理はヘッダーIDが生成される前に行われるため、絵文字は画像に変換され、その後IDから削除される。

ホリゾンタルルール

3つ以上のハイフン、アスタリスク、アンダースコアを使用することで、非常に簡単に水平ルールを作成することができます。

Three or more hyphens,

---

asterisks,

***

or underscores

___

画像

例:

インラインスタイル(カーソルを合わせるとタイトルテキストを表示): ![alt text](img/markdown_logo.png "Title Text") リファレンススタイル(カーソルを合わせるとタイトルテキストを表示): ![alt text1][logo] [logo]: img/markdown_logo.png "Title Text"

インラインスタイル(カーソルを合わせるとタイトルテキストが表示されます)。

alt text

リファレンス風(カーソルを合わせるとタイトル文字が表示されます)。

alt text

動画

正しく表示されない場合は、GitLab本体で表示してください。

ビデオ拡張子を持つファイルにリンクする画像タグは、自動的にビデオプレーヤーに変換されます。有効なビデオ拡張子は、.mp4.m4v.mov.webm.ogvです:

Here's a sample video:

![Sample Video](img/markdown_video.mp4)

サンプル動画はこちらです。

Sample Video

オーディオ

正しく表示されない場合は、GitLab本体で表示してください。

動画と同様に、音声拡張子を持つファイルのリンクタグは、自動的に音声プレーヤーに変換されます。 有効な音声拡張子は、.mp3.oga.ogg.spx.wavです:

Here's a sample audio clip:

![Sample Audio](img/markdown_audio.mp3)

ここでは、そのサンプル音声をご紹介します。

Sample Audio

インライン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>

これをクリックすると折りたたみ/折りたたみができます。 これらの詳細 は、拡大されるまで隠されたままです。
ここにログを貼り付けます

これらのタグの中のマークダウンもサポートされています。

注:Markdownが正しくレンダリングされない場合は、{::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

ヘッダーIDアンカーを使用する。

リファレンスを使用する。

参照リンクが後からついてくることを示すためのテキストをいくつか。

注意:相対リンクでは、Wikiページ内のプロジェクトファイルやプロジェクトファイル内のWikiページを参照することはできません。 その理由は、Wikiは常にGitLabの別のGitリポジトリにあるからです。例えば、[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

リスト

順序付きリストと順序なしリストを作成することができます。

順序付きリストの場合、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.
  1. 先頭の順序付きリスト項目
  2. もう一つの項目
    • 順不同のサブリスト。
  3. 実際の数字は重要ではない、ただ数字であること。
    1. 順序付きサブリスト
    2. 次の順序のサブリスト項目
  4. そして、もうひとつの項目。

順序なしリストの場合は、各行の先頭に-*+の後にスペースを追加しますが、これらを混在させてはいけません。

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. 先頭の順序付きリスト項目

    第1項目の2段落目

  2. もう一つの項目


最初の項目の段落が適切な数のスペースでインデントされていない場合、その段落はリスト項目の下で適切にインデントされず、リストの外に表示されます。

使用例:

1. First ordered list item

  Paragraph of first item.

1. Another item
  1. 先頭の順序付きリスト項目

第 1 項の段落

  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の一部です。

  1. 最初の行には、ヘッダーが「パイプ」(|)で区切られて書かれています。
  2. 2行目はヘッダーとセルを区切り、3本以上のダッシュを含まなければならない。
  3. 3行目とそれに続く行には、セルの値が格納される。
    • Markdownでは何行にもわたってセルを区切ることはできません。セルは1行に収める必要がありますが、非常に長くすることもできます。 必要であれば、改行を強制するためにHTMLの<br> タグを含めることもできます。
    • セルのサイズは互いに一致させる必要はなく、自由に設定できますが、パイプ(|)で区切る必要があります。
    • 空白のセルを持つことができます

使用例:

| 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行目の「ダッシュ」行の両端にコロン(:)を追加することで、列内のテキストの配置を選択することができます。 これは列内のすべてのセルに影響します。

注意:GitLab自身では、ヘッダーはChromeとFirefoxでは常に左揃え、Safariでは中央揃えです。
| 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 テーブルとして貼り付けてくれます。 たとえば、次のようなスプレッドシートを持っているとしましょう。

Copy from spreadsheet

セルを選択してクリップボードにコピーします。 GitLab Markdownエントリーを開き、スプレッドシートを貼り付けます。

Paste to Markdown table

リファレンス

  1. これは脚注の中のテキストです。 

  2. これも脚注の一つです。