<dl> <dt>語句</dt> <dd>説明文</dd> </dl>
に展開される
:語句:説明文
で、語句の中でSIZEやCOLORなどのユーザー定義が使えない。
:COLOR(red):語句|COLOR(red):説明文
デフォルトのユーザー定義で : を使ってるのが問題なんでしょねぇ。ユーザー定義の : を ; などに変えれば使える…というほど単純ではなくって、現在の書式だとたとえ語句でユーザー定義が使えるようになったとしても、ユーザー定義の終わりを示すことができない。
また、当然ながら : を含む語句は記述できない。これってけっこうつらい。せめて \: でエスケープできれば…
現状でも説明文ではユーザー定義が使えるが、ユーザー定義の終わりを示すことができない。
改行に、説明文の終わりとユーザー定義の終わりの両方の機能を持たせたことの弊害。同様のことが<li>の中でも起こるので、ユーザー定義の終わりを改行で示すのを変更したほうがいいかも…
また、現在の書式だと複数の<dd>を記述することができない。
<dl> <dt>語句</dt> <dd>説明文1</dd> <dd>説明文2</dd> </dl>
似非ブロック構文はどうでしょう? 赤い文字 大きい文字
"COLOR\(([^\(\)]*)\){([^}]*)}" => "<span style=\"color:\\1\">\\2</span>", "SIZE\(([^\(\)]*)\){([^}]*)}" => "<span style=\"font-size:\\1px;display:inline-block;line-height:130%;text-indent:0px\">\\2</span>",