XSLTprocess
概要
Emacs上でXSLTを編集実行するためのminor modeです。
URL
http://xslt-process.sourceforge.net/
psgml-modeとxslideを利用すればXMLとXSLTの実行環境としてはかなり強力な物になるでしょう。
インストール
動作にはelibとspeedbarが必須ですのであらかじめインストールしておいてください。
またpsgml-modeとxslideをインストールしておくとよいが各自にまかせる。
設定
.emacsに以下を設定する
;;(add-to-list 'load-path (expand-file-name "~/lib/lisp/xslt-process-2.2/lisp"))
(autoload 'xslt-process-mode "xslt-process" "Emacs XSLT processing" t)
(autoload 'xslt-process-install-docbook "xslt-process"
"Register the DocBook package with XSLT-process" t)
(add-hook 'sgml-mode-hook 'xslt-process-mode)
(add-hook 'xml-mode-hook 'xslt-process-mode)
(add-hook 'xsl-mode-hook 'xslt-process-mode)
(defadvice xml-mode (after run-xml-mode-hooks act)
"Invoke `xml-mode-hook' hooks in the XML mode."
(run-hooks 'xml-mode-hook))
;;;; 以下の設定は趣味によります
;; Xalanを利用する
(setq xslt-process-default-processor '(Xalan))
;; デフォルトではXMLファイルを開くとRead Onlyになるのをやめる
(add-hook 'xml-mode-hook
(lambda ()
(toggle-read-only -1)
))
利用方法
デフォルトであるsaxonは時々日本語のあつかいがUTF-8以外ではおかしくなる事がある。これは最新版にすれば問題が解消される模様。
ただ、ぼくはxalanに変更しているので実際の所saxonに関しては設定がよくわからない。
xsl:output要素のencoding属性を指定する事で出力のencodingを指定できる。
参考サイト
http://www.rr.iij4u.or.jp/~aurora/emacsen.html
http://www.sugarshark.de/projects/emacs/init/sgml.html
