2001年12月30日 日曜日

Wanderlust 2.8.1 (Something)

今日、Wanderlustのホームページを見に行ったところ、気が付かないうちにバージョンが2.8.1に上がっていた。apel-10.3 / flim-1.14.3 / semi-1.14.3 を要求していたので、確認したところ手持ちのflimのバージョンが1.14.2であったため、filmをバージョンアップし、semiを再インストールした。昨日X on Windowsをインストールしたため、makeで簡単にインストール。楽チンなのである。2.6.1から2.8.1への変更は、今のバージョンで変更されてた変数名を置換(setq elmo-default-pop3-serverからelmo-pop3-default-serverなど)を行うだけだ。
あと起動時のビットマップ画面がでないなぁと思っていたら、makeを使って意図通りの場所にすべてをインストールしたところ、ちゃんと表示されるようになった。バイトコンパイルもしたのでパフォーマンスも上がっているし、やっぱりちゃんとインストールすると良いなぁ。

PSGMLの設定

さらにEmacs関連の話題。XHTMLを正しく書くためには、DTDに合致したタグ補完をしてくれるエディタが楽である。で、僕が知っているところでは、Emacs Lispで実装されているPSGMLを使うのがもっとも良さそうなのであるが、インストールをしたものの、正しく使えていなかった。起こっていた現象は簡単なことで、DTD読み込んくれなかったのである。ずっとインストール周りを疑っていたが、CATALOGファイルの書き方がいまいちだったようだ。
今回の設置例では、Meadowを使っており、DTDファイルをc:\Meadow\lib\sgml以下に必要な規格(僕の場合はHTML4.0、HTML4.01、XHTML1.0、XHTML1.1くらい)のDTDをディレクトリごとに分類しておいておく。.emacsとc:\Meadow\lib\sgmlに置いているCATALOGファイルの例を示す。

.emacsの設定例

;;; PSGML
(autoload 'sgml-mode "psgml" "Major mode to edit SGML files." t )
;; 拡張子ごとの設定(.htmと.htmlはXHTMLで書くためXMLモード)
(setq auto-mode-alist
      (append
       '(("\\.xml$" . xml-mode)
	 ("\\.xsl$" . xml-mode)
	 ("\\.html$" . xml-mode)
	 ("\\.htm$" . xml-mode))
       auto-mode-alist))
(autoload 'xml-mode "psgml" nil t)
;; CATALOGファイルの置き場所
(setq sgml-catalog-files
      '("CATALOG" "c:/Meadow/lib/sgml/CATALOG"))
(setq sgml-ecat-files
      '("ECAT" "c:/Meadow/lib/sgml/ECAT"))
;; DOCTYPE 宣言の設定
(setq sgml-custom-dtd
      '(("XHTML 1.1" "<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.1//EN\"\n \"http://www.w3c.org/TR/xhtml11/DTD/xhtml11.dtd\">\n")
	("XHTML 1.0 Strict" "<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\"\n \"http://www.w3c.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">")))
(setq sgml-set-face t)
(setq sgml-general-insert-case 'upper)
(setq sgml-markup-faces
      '((start-tag  . c-type-face)
	(end-tag    . c-type-face)
	(comment    . comment-face)
	(ignored    . comment-face)
	(pi         . keyword-face)
	(sgml       . keyword-face)
	(doctype    . font-lock-constant-face)
	(entity     . string-face)(shortref   . bold)))

CATALOGファイルの例

PUBLIC "-//W3C//DTD HTML 4.0//EN"                            dtd/html4.0/strict.dtd
PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"               dtd/html4.0/loose.dtd
PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN"                   dtd/html4.0/frameset.dtd
PUBLIC "-//W3C//ENTITIES Latin1//EN//HTML"                   dtd/html4.0/HTMLlat1.ent
PUBLIC "-//W3C//ENTITIES Special//EN//HTML"                  dtd/html4.0/HTMLspecial.ent
PUBLIC "-//W3C//ENTITIES Symbols//EN//HTML"                  dtd/html4.0/HTMLsymbol.ent
PUBLIC "-//W3C//DTD HTML 4.01//EN"                           dtd/html4.01/strict.dtd
PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"              dtd/html4.01/loose.dtd
PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"                  dtd/html4.01/frameset.dtd
PUBLIC "-//W3C//ENTITIES Latin1//EN//HTML"                   dtd/html4.01/HTMLlat1.ent
PUBLIC "-//W3C//ENTITIES Special//EN//HTML"                  dtd/html4.01/HTMLspecial.ent
PUBLIC "-//W3C//ENTITIES Symbols//EN//HTML"                  dtd/html4.01/HTMLsymbol.ent
PUBLIC  "-//W3C//DTD XHTML 1.0 Strict//EN"                   dtd/xhtml1.0/xhtml1-strict.dtd
PUBLIC  "-//W3C//DTD XHTML 1.0 Transitional//EN"             dtd/xhtml1.0/xhtml1-transitional.dtd
PUBLIC  "-//W3C//DTD XHTML 1.0 Frameset//EN"                 dtd/xhtml1.0/xhtml1-frameset.dtd
PUBLIC	"-//W3C//ENTITIES Latin 1 for XHTML//EN"             dtd/xhtml1.0/xhtml-lat1.ent
PUBLIC	"-//W3C//ENTITIES Symbols for XHTML//EN"             dtd/xhtml1.0/xhtml-symbol.ent
PUBLIC	"-//W3C//ENTITIES Special for XHTML//EN"             dtd/xhtml1.0/xhtml-special.ent
PUBLIC "-//W3C//DTD XHTML 1.1//EN"                           dtd/xhtml1.1/xhtml11-flat.dtd
PUBLIC "-//W3C//ENTITIES XHTML 1.1 Document Model 1.0//EN"   dtd/xhtml1.1/xhtml11-model-1.mod

日記のCSSを変更

日記もメインのページのデザインにあわせるために、日記が参照しているCSSをメインのCSSからのシンボリックリンクとした。デザインの保守性が上がったような気がする。とりあえず気になっていたところは全部変えたかな。