石橋秀仁(zerobase)書き散らす

まじめなブログは別にあります→ja.ishibashihideto.net

MarkdownでのリンクとURI末尾の右括弧(right paren)

Markdownではハイパーリンクを次のように書きます:

[アンカー・テキスト](リンク)

例えば、

[Zerobase](http://zerobase.jp)

と書けば、

<a href="http://zerobase.jp">Zerobase</a>

というHTMLに変換された結果、

Zerobase

というリンクになります。

さて、Markdownを使う上では、地味な問題があります。テキストエディタなどがリンク文字列を誤認識することがあるのです。具体的には

詳しくは[Zerobase](http://zerobase.jp)で。

と書いたときに、テキストエディタなどのアプリケーションはリンクを誤認識する場合があります:

以下、Markdown文法に対応していないアプリケーションを想定した話です。Markdown文法とは無関係に、上記のような文字列があった場合に、どこまでをリンクとみなすのが妥当か、という議論です。

空白(%20)で区切っておらず、連続した文字列なので、こういうことになってしまうのです。英語だと問題ないのですけれど。日本語の文字列もURIに使えますし、難しいところですね。

末尾に単独のright parenがあった場合、その手前でURI文字列が終端したとみなすのが、自動リンク認識機能の仕様としては妥当なのではないかと。

気になってRFC 3986 - Uniform Resource Identifier (URI): Generic Syntaxも見ましたが、多分それでいいのではないかと。大雑把に眺めただけなので、誤解しているかもしれませんが。

追記

そういえば、

[Zerobase][1]

[1]: http://zerobase.jp

という記法もありました。書くほうとしては面倒なので、ふだんはあまり使っていませんでした。しかし、テキストとしてのリーダビリティが上がりますし、リンクの誤認識を避けられますので、今後しばらく積極的に試そうかと思います。(やっぱり面倒くさくて戻るかもしれません)

Markdown foonoteでGist(GitHub)のfootnote機能をテストしています。MultiMarkdownのfootnote記法には対応していないようです。