SoW on Emacs

GANAさんによる Start on Windows を Emacs から使う例です。

Emacs multi-tty を使っているので、ランタイムに window-system を見て、Firefox と SoW を 使い分けています。

SoW の設定

ほとんど README.txt にある通り設定するだけです。
後々のため、home ディレクトリは SAMBA 等で Windows からアクセスできるように しておきます。

emacs-w3m の外部ブラウザ

emacs-w3m では M (w3m-view-url-with-external-browser) により外部ブラウザで 閲覧できますが、それに SoW を使います。通常は外部ブラウザとしては browse-url-default-browser が呼ばれますので、それに advice をしかけて start.pl を呼び出したりします。

(when (executable-find "start.pl")
  (setq browse-url-generic-program "start.pl")
  (defadvice browse-url-default-browser (around call-ie (url &rest args)
						activate)
    (if (null window-system)
	(browse-url-generic url args)
      ad-do-it)))

Gnus の text/html パートの外部Viewer

Summary バッファで k m (gnus-article-view-part-externally) を叩いて インラインViewer を抑制し、*Article* バッファで e (gnus-mime-view-part-externally)を叩くと外部 Viewer で表示できます。
一時ファイルを介するので、それが Windows からもアクセスできるように、 temporary-file-directory または mm-tmp-directory を設定しておきましょう。

(setq temporary-file-directory (expand-file-name "~/tmp/"))

外部Viewer として start.pl を登録するには ~/.mailcap に記述したり、 ~/.gnus で mailcap-add で登録したりします。~/.gnus への記述例は以下の通り。

(defadvice mailcap-parse-mailcaps (after add-html-viewer (&optional path force)
					 activate)
  (when (or (not mailcap-parsed-p)
	    force)
    (mailcap-add "text/html" "start.pl %s" '(not window-system))
    (mailcap-add "text/html" "firefox %s" '(eq window-system 'x))))

Valid XHTML 1.1! Valid CSS!
戻る