日本語とURLの有効判定

http://枝野官房長官にはきちんと寝て.ほしい.jp

上記URLは昨夜、Twitterで流れてきた、不眠不休でがんばる、枝野官房長官を応援する(休むように応援する)サイトへのURLであり、「有効な」URLである。日本語が含まれていても、だ。

このようなサイトに限らず、Wikipedia(日本語サイト)のように日本語でURLを構成するところは今では珍しくもないし、有効なものだ。

ただ、ブラウザのアドレス欄にコピー・ペーストするとわかるが、たいていは、%でエスケープしてASCII文字にエンコードしてやりとりするケースもまだ多い。ただ、どちらも同じ場所を指しているし、解釈する時点で同じモノになれば問題にはならない。

ブラウザのアドレス欄にはアドレスしか入力されない、という前提があるわけだし、通信プロトコル上でのURLはURLだから問題にはならない。HTMLもリンクを貼りたければ、aタグつかってアドレスを指定できるから問題にはならない。

問題は、Twitterアプリなのだ。Twitterは140文字制限があるから、「基本的に」URLをそのまま貼り付ける。テキストと同列に。で、それがリンクとして機能するのは、アプリケーション側が、それをハイパーリンクとして判定し、指し示しているアドレスを判定し飛ばしているに過ぎない。

その判定に日本語を入れるかどうかが問題になる。私が作っているソフトでは日本語を無効としているので、冒頭の枝野官房長官のURLはURLとはみなされない(まぁ、自作アプリはいま、改造中で、URLクリックに反応できないのだけれども...表示だけはしているので)

で、日本語URLを有効にするとどうなるかというと、通常のURLの後に半角スペースを挟まずに本文を続けて入力してしまった場合などに、本文文末まですべてURLと判定されてしまう。クリックすると無効アドレスでブラウザでエラーになる。Mac用のApp Storeで配布されている公式アプリもこの形態。

どこまで判定するか、絶対基準がない(入力した人の思いは文字からは完全には把握できない)から難しい。

コメント