最終更新:2005-01-05 15:57:18
自動で改行タグを挿入する仕様について
処理の流れを本文のみに注目して、まとめます。以下では次の表現を使います。
- \n
- 改行コード、改行文字
- br
- 改行タグ
「新規に記事を投稿する」
- 新規投稿内容をフォームから受け取る(A-1)
- 新規投稿内容をファイルに書き出す(A-2)
処理:「\n⇒br」「br⇒br」
「記事の修正作業を始める」
- ファイルからログを読み出す(M-1)
- フォームに内容をセットした状態でhtmlを返す(M-2)
処理:「\n⇒(存在しない)」「br⇒\n」
「修正した記事を投稿する」
- 修正済みの内容をフォームから受け取る(M-3)
- 修正済みの内容をファイルに書き出す(M-4)
処理:「\n⇒br」「br⇒br」
このように、ファイルに書き込む前に、改行文字は捨てるようになっています。ただしv.0.31以前はこの仕様はありませんでした。それと、読み込み時にbrタグを改行文字に置き換える処理についてですが、大文字小文字の違いを見ていないため、Akiary自身がつけるbrタグ以外はうまく取り扱えないことがあります。Akiary自身がつけるbrタグとは、0.41以降は<br>、それ以前のバージョンでは<BR>でした。手で書いたタグは両方、あるいは<Br clear="all" />のようなものもありえます。
同時に、ログ(html)に存在するbrタグを、筆者から隠蔽する効果もあります。タグを意識せずに文章を書き、フォームで入力するときに意図した改行が、htmlになったときに自然に反映されるとう利便性をもたらしています。実際には意図どおり、というのは語弊があるかもしれません。挙動に癖があるので、慣れるまではちょっと戸惑うでしょう。
いしだなおと it@isnot.jp