2005-05-09

HTML 内の <, > ,& を quote する |Blogger|Emacs|

Blog (Blog に限らないけど) を HTML で直接書いてて、<pre> タグの中にプログラムのソースを挿入することがある。この時、HTML のタグで利用する <・>・& の 3 文字が入っていると、ブラウザーに HTML のタグだと認識されて困ってしまう。そこで &lt;・&gt;・&amp; という形に変換するのだが — これ自体はエディターで 3 回ほど置換すれば対処できる — プログラマーというのは怠惰を好む人種で、たった 3 回の置換でも面倒臭く思う (少くとも私はそう)。もっと楽にできないかと考えてしまうのだ。そこで、Emacs の中をゴニョゴニョ探してみたら... やっぱりあった。sgml-quote という関数が...

Quote SGML text in region start ... end. Only &, < and > are quoted, the rest is left untouched. With prefix argument unquotep, unquote the region.

リージョンを指定して、M-x sgml-quote とすると、リージョン内の < などの文字が &lt; の形に変換される。本当は " も変換されると嬉しいのだが、カスタマイズはできないっぽい。

No comments:

Post a Comment