Help us understand the problem. What is going on with this article?

MarkDown記法と、QiitaとVSCodeの違い

More than 1 year has passed since last update.

はじめに

MarkDownを様々な場所で書くことが増えてきました。
私の場合は、VSCodeでもMarkDownを書いて、プレビューで見たりしますが、
Qiita、VSCodeでは若干表示に違いが(というか一方では思った通り表示されない)ことが時々あるため、チートシートついでにQiita、VSCodeでの違いをまとめました。
※VSCodeでのMarkDown表現は初期の状態です。

見出し

先頭に#(半角スペース)をつけ、見出しを書きます。
##と重ねていくと見出し2、見出し3...となっていきます。
別の書き方として、文字列の下に=をつけると見出し1に、文字列の下に-をつけると見出し2となります。(=-の個数は自由)

# 見出し1
## 見出し
### 見出し3
#### 見出し4
##### 見出し5
###### 見出し6
Alt-H1
======
Alt-H2
-----

見出し1

見出し2

見出し3

見出し4

見出し5
見出し6

Alt-H1

Alt-H2

Qiita、VSCodeの挙動の違い

Qiitaは気を利かせてくれて、#の後に半角スペースがなくても見出し扱いとなります。
ただし、VSCodeでは忖度されませんので、半角スペースを忘れないように普段からつけることをお勧めします。

強調表現

*または_で文字列を囲むと強調表現ができます。
*,_でイタリック。
**,__でボールド。
***,___でイタリックとボールド。

これは *italic* これも _italic_ 
これは **bold** これも __bold__
これは ***Italic & bold*** これも ___Italic & bold___

これは italic これも italic
これは bold これも bold
これは Italic & bold これも Italic & bold

Qiita、VSCodeの挙動の違い

強調表現については特に違いはなさそうです。
個人的には*の方が好きです。

打ち消し線

~~で文字列を囲むと打ち消し線を表示できます。

これが~~打ち消し線~~です。

これが打ち消し線です。

Qiita、VSCodeの挙動の違い

打ち消し線もQiita、VSCodeで特に違いはありません。

リスト

*,-,+のいずれかの後に半角スペースをつけるとリストができます。
最初のうちは半角スペースを入れ忘れることがよくあります。
また、インデントを入れるとリストもインデントが可能です。
リストのマークも変わって別のリストだとわかるようになります。

* リスト1
    * リスト1-1
    * リスト1-2
        * リスト1-2-1
            * リスト1-2-1-1
- リスト2
+ リスト3
  • リスト1
    • リスト1-1
    • リスト1-2
      • リスト1-2-1
        • リスト1-2-1-1
  • リスト2
  • リスト3

Qiita、VSCodeの挙動の違い

Qiitaでは最初のインデントは半角スペース1以上でインデントされます。
2回目のインデントは行頭からスペース5以上が必要です。
3回目のインデント以降は半角スペース9以上でインデントされます。
2回目以降は行頭からn * 2 + 1のインデントが必要なようですね。
基本的には半角スペース4でインデントをベースとしているからかと思います。
VSCodeでは、初回、2回目以降ともに前のリストから半角スペース2以上でインデントされます。

番号付きリスト

先ほどのリストを番号つきでリスト化します。
先頭に1.をつけます。
自動でカウントするため、すべて1.でOKです。

1. リスト1
    1. リスト1-1
    1. リスト1-2
1. リスト2
1. リスト3
  1. リスト1
    1. リスト1-1
    2. リスト1-2
  2. リスト2
  3. リスト3

Qiita、VSCodeの挙動の違い

Qiitaに関しては、上記リストと同じ挙動です。
インデントは半角スペース4が基本ですね。
VSCodeですが、半角スペース4でインデントされます。
通常のリストは半角スペース2でインデントされるのになぜでしょう。

これらを踏まえると、リストのインデントは半角スペース4にしておくとよさそうです。

リンク

通常にURLを書く、<URL>とすることでリンクとして表示されます。
URLのリンク先を文字列で書く場合、[表示文字列](URL)でリンクを表現できます。
また、リンクを変数のように後述したりできます。
[表示文字列][変数名]とリンクを記述する場所に書き
[変数名]: URLでリンク先を別の場所に記載できます。
複数の場所で同じリンク先を示す場合などに便利かと思います。

https://qiita.com/
<https://qiita.com/>
[Qiita](https://qiita.com/)
[Goolgeリンク][google]
 [google]: https://www.google.co.jp/

https://qiita.com/
https://qiita.com/
Qiita
Goolgeリンク

Qiita、VSCodeの挙動の違い

Qiitaは上記表現がすべて使えますが、VSCodeでは
[Goolgeリンク][google] [google]: https://www.google.co.jp/
記法はプレビューでは表示されません。残念ですが。

イメージ(画像)

![代替テキスト](画像のURL) "ツールチップ" でイメージ画像を貼り付けできます。
ツールチップは省略可能です。
また、リンク同様に画像のURLを変数のように後述できます。
![代替テキスト][変数名] "ツールチップ"
[変数名]: URL と分割して記述できます。

![プロフィール画像](https://avatars6.githubusercontent.com/u/25548016?v=3 "github prifile image")

![存在しない画像](http://hogehoge-notfound.com/notfound-image.jpg  "no-image")

![分割画像][profile-image]
 [profile-image]: https://avatars6.githubusercontent.com/u/25548016?v=3

プロフィール画像

存在しない画像

分割画像

Qiita、VSCodeの挙動の違い

リンクと同様で、Qiitaではすべて利用できますが、
VSCodeでは![分割画像][profile-image][profile-image]: https://hoge.com/hoge.jpg の記法は利用できません。

コード表示

` で囲むとインラインコードの表示ができます。
```で囲むとブロックコードの表示ができます。
ブロックコードの場合、最初の行にソースコードの種類を記載することで、シンタックスハイライトが反映されます。
ブロックコードを書く場合は、ブロックコードの上下1行は空白行をつけるようにしましょう。

この部分が`インラインコード`です。
```javascript
function test() {
    console.log('Hello world');
}
```

この部分がインラインコードです。

function test() {
    console.log('Hello world');
}

Qiita、VSCodeの挙動の違い

Qiita、VSCodeではどちらの書き方もできますが、
Qiitaでは上記に加えてソースコード名も記載できます。

```javascript:test.js
function test() {
    console.log('Hello world');
}
```
test.js
function test() {
    console.log('Hello world');
}

テーブル

以下のような書き方でテーブルも表記できます。
一番上の行がヘッダ、2番目の行で左寄せ、中央寄せ、右寄せを指定できます。
3行目以降がデータです。
2行目の:の位置で寄せが決まりますが、:を書かない場合は左寄せになります。

|商品|種別|金額|
|:---|:--:|---:|
|ボンゴレビアンコ|パスタ|800|
|マルゲリータ|ピザ|1000|
|白ワイン|ドリンク|500|
商品 種別 金額
ボンゴレビアンコ パスタ 1200
マルゲリータ ピザ 900
白ワイン ドリンク 500

Qiita、VSCodeの挙動の違い

ここは特に差はありません。あえて言えばテーブルデザインの差くらいです。
そういえばMarkDownのテーブルって行や列の結合ができませんね。
元ファイルが見にくくなるからかもしれませんが。

水平線

---または***または___で水平線を引くことができます。
どれでも同じ水平線ですのでお好みでどうぞ。

---
***
___



Qiita、VSCodeの挙動の違い

水平線についても、Qiita、VSCodeで差はありません。

改行

改行は行末に半角スペース2つまたは1行空白をいれることで改行できます。
Qiitaは上記に加えて、通常の改行も改行扱いとします。

1行目(半角スペース2つ)
2行目

3行目
3行目-2 (Qiitaは改行、VSCodeは改行されない)

4行目

5行目 (Qiitaは改行して1行空く、VSCodeは改行のみ)

1行目
2行目
3行目
3行目-2 (Qiitaは改行、VSCodeは改行されない)
4行目

5行目

Qiita、VSCodeの挙動の違い

上記のとおり、QiitaとVSCodeでは改行した際の扱いが違います。
Qiitaはブログ記事を書いて発信がメインなので、改行が素直に表現されるのはいいことだと思います。
VSCodeについては純粋にMarkDownの仕様に沿っている感じですね。

引用

>をつけることで、引用を表現できます。
>>と重ねると多重引用も可能です。
また、行間が空いていない場合は、最初の行に>をつけるだけで
まとめて引用することが可能です。

>通常の引用

>>多重引用

>1つでまとめて引用
 この行も引用される。

通常の引用

多重引用

1つでまとめて引用
この行も引用される。

Qiita、VSCodeの挙動の違い

Qiita、VSCodeのどちらも同じ機能が利用できますが、
Qiitaは上記の例のように、最初の引用と最後の引用までがつながって表示されます。
分割したい場合は、間に引用されていない文字入力が必要です。
VSCodeの場合は、通常引用、多重引用で線が分割されて表示されます。

注釈

内容[^注釈名] で注釈を入れることができます。
注釈内容は[^注釈名]: 注釈内容というように記載します。
注釈内容は、どこに書いても記事の一番下に表示されます。
注釈名は数字だけでなく文字でもOKです。
ただし、文字で書いても表示時は数値に置き換えられます。

今日はいい天気[^1]
注釈はなぜか一番下に表示される[^test]
[^test]それは注釈だからさ

今日はいい天気1
注釈はなぜか一番下に表示される2
 

Qiita、VSCodeの挙動の違い

Qiitaは上記のとおりですが、VSCodeではデフォルトのMarkDownプレビューで注釈を扱えません。
残念ですがあきらめるか、プラグインを探すかになります。

参考


  1. 今日とは2017/12/06のこと 

  2. それは注釈だからさ 

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした