Edited at

Qiita Markdownのページ内リンクの罠

Qiitaで記事書いてる人たち、ページ内リンクで困ったことないですか?

僕はこんな寄り道みたいなところでとても困りました。

書き方にいくつかルールがあるみたいなんですけど、あんまり情報が見つからなかったのでまとめておきます。

公式のマニュアルとかあったらごめんなさい……

他にも見つけ次第追記していこうと思います。


ページ内リンクの書き方

知ってるとは思いますけど一応。

# hoge

## fuga

[hoge](#hoge)

[fuga](#fuga)

見出しの深さに関係なく#は必ず1つです。

これも躓いた……


半角


英字の大文字ABCは小文字abcで

英字の大文字ABCは小文字abcで

## 英字の大文字ABCは小文字abcで

[英字の大文字ABCは小文字abcで](#英字の大文字abcは小文字abcで)


空白 はハイフン-で

空白 はハイフン-で

## 空白 はハイフン-で

[空白 はハイフン-で](#空白-はハイフン-で)


半角記号はアンダーバー_とハイフン-以外省略


半角記号!@#$%^&*()+|~=`[]{};':",./<>?は省略

半角記号!@#$%^&*()+|~=`[]{};':",./<>?は省略

### 半角記号!@#$%^&*()+|~=\`[]{};':",./<>?は省略

[半角記号!@#$%^&*()+|~=\`[]{};':",./<>?は省略](#半角記号は省略)


全角


英字の大文字ABCは小文字abcで

英字の大文字ABCは小文字abcで

## 英字の大文字ABCは小文字abcで

[英字の大文字ABCは小文字abcで](#英字の大文字abcは小文字abcで)


空白 は省略

空白 は省略

## 空白 は省略

[空白 は省略](#空白は省略)

半角とはルールが異なるので注意です。


全角記号はアンダーバーとハイフン以外省略

正確にはキーボードにあるものだけです。


全角記号!@#$%^&*()+|〜=¥`「」{};’:”、。・<>?は省略

全角記号!@#$%^&*()+|〜=¥`「」{};’:”、。・<>?は省略

### 全角記号!@#$%^&*()+|〜=¥`「」{};’:”、。・<>?は省略

[全角記号!@#$%^&*()+|〜=¥`「」{};’:”、。・<>?は省略](#全角記号は省略)


全角括弧類の【】と『』と《》と〔〕と[]と‹›と«»と〘〙と〚〛は省略

全角括弧類の【】と『』と《》と〔〕と[]と‹›と«»と〘〙と〚〛は省略

## 全角括弧類の【】と『』と《》と〔〕と[]と‹›と«»と〘〙と〚〛は省略

[全角括弧類の【】と『』と《》と〔〕と[]と‹›と«»と〘〙と〚〛は省略](#全角括弧類のととととととととは省略)

一応キーボードにない記号も一部試してみました。

さすがにすべての記号は試せませんけど、アンダーバーとハイフン以外は使えなさそうな雰囲気です。

全角記号はとりあえず省略してみれば大丈夫そうですね。


注意

上記の省略によってページ内リンクが被ることがあります。

## /と\は省略

[/と\は省略](#とは省略)

## !と?は省略

[!と?は省略](#とは省略)

滅多なことでは起こらないと思いますけどね。

一応心の片隅にでも留めておくといいかもしれません。