うざくない自動改行案

地の文では自動改行して欲しいけど自動改行(つまりは<br>の自動挿入)があるとHTMLでのリストとか書きにくい。ので色々不便。
で、自動改行するべき部分とせざるべき部分をどうやって区別しようかとか考えて、pタグの中では自動改行して他はしないとかあるいは…なんてのをあれこれ考えてたんですけど、もしかしたら良いかもしれない案を思い付いたからメモ。

  • 開タグのみ または 閉タグのみ の行の前後は改行しない。
  • 開タグで始まり そのタグの閉タグで終わる行の前後では改行しない。

メリットは、単純な正規表現で実現できそうなことかなぁ。
…あ、でもこれだと、リンクに1行使いたいときとかに困るか。例えば↓なコードは

<p>
サンプルのURLは
<a href="http://www.example.com">ざっつサンプル</a>
みたいな感じ
</p>

本当は↓のように自動改行を入れて欲しいのに

<p>
サンプルのURLは<br />
<a href="http://www.example.com">ざっつサンプル</a><br />
みたいな感じ
</p>

上のルールに従うと改行が入らない。
うーむ、とするとやっぱりpタグ(とblockquote)の中だけ自動改行、が良いか。ただし<p>直後と</p>直前の改行は無視する、と。
どういう正規表現にすれば良いのか、考えとこ。


要するにブロック要素を子に持たないブロック要素の中では自動改行、ということかも。ふむ、この視点はもうちょっと考えてみる価値がありそうだ。あるいはブロック要素の子になったブロック要素の前後では改行したくない、とか?
ブロック要素をリストアップすればもっと抽象化できるかな?