先日の人力検索はてなのリニューアルにより、過去の回答について、はてな記法(行頭に -, + など)が展開されるようになっております。こちらの変更について、はてなアイデアにて
はてなアイデア - リニューアル以前の回答が、はてな表記扱いされている。そのため今の回答表示が回答時の表示と異なっている。
http://i.hatena.ne.jp/idea/9338
というアイデアが提案されております。
はてなでは、上記のような弊害があるものの従来はてな記法を意図して回答されていたユーザー様など、有用にお使いいただいける場面もあるかと考えており、こちらについてどのように対応するべきかを現在検討しております。
このアイデアについて、いわしでユーザーの皆さまのご意見をお聞かせください。
小見出し記法,リスト記法などの入力支援記法は,仮にそれを意図して書かれていた回答が一部にあったとしても,具体例を挙げたように記法を意図しない回答が記法として扱われている例が多数ある以上はてな記法を対応させるべきではないと思います.
改行記法は結構難しいですね.
http記法によるURL自動リンクは便利ですので,はてな記法として扱ってほしいところです.
はてな内自動リンクは,それほど有効とも思えず,かといって有害な例も見つかっていないというところでしょうか.
さて,これを実現するには2つのアプローチが考えられます.
このうち,技術者的にどちらを好みそうかというと,前者の気がします(アイデアミーティングでもそんな感じだった).
前者だとすると,ミーティングで言っていたように小見出し記法,リスト記法を無効にするために『「*」や「-」をそのまま行頭に表示する』記法を使う,つまり記法っぽい行や空白行の行頭に半角の空白をつけるということになるでしょう.
この方法の問題点は,リニューアル前の改行がパラグラフに変換されるという点で,html原理主義的には問題ですが,見た目の問題はかなり解決しそうに思います.
後者のparserを別につくるというアプローチであれば,リニューアル前と互換性を保つのは容易ですので特に議論するまでもないでしょう.
つまり記法っぽい行や空白行の行頭に半角の空白をつけるということになるでしょう.
と書きましたが、テストしたところ半角の空白のみの行はIEでもFirefoxでも無視されました(そのような仕様なのかな?)。従って、空白行については半角空白をつけるのではなく<br>に変換する必要がありそうです。
あるいは、リニューアル前の行(<br>)が現在は段落(<p>)として扱われていますが、以前のまま行は行として扱うためにpタグ停止記法で全体を囲む方がベターに思えます。
====
以下、テストです。
パラグラフ1パラグラフ1<br><br>パラグラフ2パラグラフ2<br>
パラグラフ1パラグラフ1
パラグラフ2パラグラフ2
パラグラフ1パラグラフ1
パラグラフ2パラグラフ2(この上に半角空白のみの段落がある)
パラグラフ1パラグラフ1
パラグラフ2パラグラフ2(この上に<br>のみの段落がある)
パラグラフ1パラグラフ1
パラグラフ2パラグラフ2
Kityoさんがhttp://q.hatena.ne.jp/1143099382/4117/4117で挙げられた
明らかに破綻する一般的な例を挙げます
過去の質問で、はてなダイアリーの使い方を質問したものは皆無でしょうか?
「asin:475611895X:imageのように書けば、その商品の画像になりますよ」と言ったような回答がはてな記法として展開されたら、それは全く意味不明になってしまいます。
という部分を失念していました。従って、無効にすべきはてな記法として、小見出し記法、改行記法などの入力支援記法だけではなく、単にリンクされるのではなく書いた文字列と表示される文字列が異なる一部の自動リンク、
について、[] []などを使って無効化する必要があり、仮にデータのコンバートで対処する場合には結構面倒ですね(自動リンク停止記法は行をまたげないので、最初と最後に[]を入れればいいというわけではないため)。
今のところKityoさんが危惧されているような、はてな記法の説明がおかしくなっている例は報告されていませんが、データベースを検索して該当例があるかどうかをチェックしたほうがよさそうです。
従来はてな記法を意図して回答されていた回答に関してははてな記法を対応させ、
意図されていなかった物は従来のままを希望します。
例えば引用記号として使用されたらしい>などが変換されてしまって意味がわからなくなっているので、これは従来のまま、id:~などははてな記法を意図して使用されているので対応させるなど。