2003-09-18
Xalan on xyzzy
私は Java版 XT + Xerces を利用しているのですが、Xalan on xyzzyをみて、Xalan-Cを導入してみたくなりました。
xyzzyの拡張lispのxml-modeでスタイルシート適用機能
を利用するにはmsxsl.exe
またはxt.exe
が必要なのですが、Java版 XT & Xerces を利用する方法もあります。
XT & Xerces (for Java) on xyzzy
Java版 XT & Xerces を利用する場合には、.xyzzy
若しくはsiteinit.l
に以下の様なコードを追加します。
;;xml-mode
(require "xml/xml-mode")
(use-package 'xml)
;; 指定拡張子のファイルをopenすると自動的にxml-mode
(pushnew '("\\.\\(xml\\|xsl\\|html\\|xhtml\\|rdf\\|sdoc\\|fo\\|rng\\|svg\\|xi\\)"
. xml-mode)
*auto-mode-alist* :test #'equal)
;; スタイルシート適用機能
;; Java版 XT + Xerces を使用する設定。
(setq *xsl-transform-command* *xsl-xt*)
(setq *xt-command* "xt.bat")
(push '(xml::xt
"~A ~S ~S ~A"
*xt-command*
(get-buffer-file-name)
(read-file-name "stylesheet: " :history 'stylesheet)
(or xml::*xml-user-option* *xt-default-options*))
*xml-command-alist*)
;; ドキュメントタイプ(必要なものだけ選択)
上記サンプルの様に、setq
で *xt-command* の値を設定します。これで、xml-mode で Java版 XT + Xerces が利用できるようになります。
もし、Xalan-Cを利用する場合でも、lispを直接弄くるのではなく上記の様に(*xt-command* は xalan.exe
)することでバージョンアップの際にも簡単に対処できると思います。
注釈
- Java版 XT & Xerces の導入方法は、先日のひとりごとを参考にしてください。
- バッチファイル(
xt.bat
)はPATHが通ったディレクトリ(フォルダ)にあること。 - スタイルシート適用のキーバインドは、C-ctです。C-uC-ct でオプションも指定できます。