Dubyの話題 を書いてたときに困ったこと。

問題点:アメブロで、プログラムのソースコードを書く方法がよく分からない。

問題の詳細

アメブロの仕様(と思われる)
1、アメブロでは、「タグの非表示」(WYSIWYGタイプのエディタ)と「HTMLタグを表示」(HTMLを直接記述)の2種類の投稿用フォームを切り替えることができる。
2、このうち、「タグの非表示」を選択すると、投稿する際には、改行の直前にはすべて、XHTMLの<br>タグが挿入される。
3、反対に、「HTMLタグを表示」で、<br>タグを使うと、その直後に、改行コードが挿入される。同時に、<br>や<p>タグをともなわない改行は、投稿時に、削除される。
4、つまり、改行タグ(<br>)と改行コード(\n)は、セットで存在する。

何度か試してみて、上記のように振舞うらしいと分かった。この仕様は、それなりに納得できるもの。しかし、整形済みテキストを書きたいとき、下記のように問題が発生する。
これを、どうやって回避したらいいのかよく分からない。

1、インデントを正しく表示するために、<pre>タグを使いたい。
2、<pre>タグの入力をHTMLエディタを利用して、行った際、<pre>タグの内側でも、上記の機能が生きているため、<pre>タグの内側では、<br>(改行タグ)と\n(改行コード)が同時に存在するため、2行単位で改行してしまう。

困った。


とおもっていたけど、一応、回避できた。
一応の方法としては、<pre>タグの内側で、改行するべきところで、\nを入力せず、<br>タグを打つ。
でも、あんまり美しくない方法。
<pre>タグの内側でこそ、WYSIWYGで書きたいのだが。
どうすればいいのかな?