NTEmacsの致命的な点として、標準では全く印刷ができないという点につきる。 Notepadを呼び出して、そこにバッファの内容をコピーして印刷する方法もあるが、 試してみたところ、カラー印刷できないうえに、レイアウトが崩れるものあった。 少々設定は面倒だが、Ghostscriptを使ったPS印刷できる環境を整えることにする。 Ghostscriptに関しては、インストール時にレジストリを操作するので、 新環境に移行した場合には再インストールが必要となるので注意。 (これまでの設定に関しては C:\emacs ごとコピー すれば別環境でも使用可能) これからは、こういった移行先でのインストール等が必要なものは、 c:\emacs\utils へまとめて入れておくことにする。
1. 必要なもの 1) Ghostscript http://auemath.aichi-edu.ac.jp/~khotta/ghost/ からgs871w32full-gpl.zipを取得してくる。 2) BDFフォント 結構リンク切れする場合があるので、その時はファイル名をGoogleで検索すると見つかる。 http://ftp.yz.yamagata-u.ac.jp/pub/GNU/intlfonts/intlfonts-1.2.1.tar.gz 2. インストール 1) BDFフォントのインストール intlfonts-1.2.1.tar.gzを解凍し、できたフォルダを C:\emacs\font\intlfonts-1.2.1 として配置する。 2)Ghosscriptのインストール 解凍すると、README.W32というファイルができるので、読みながらインストールする。 大して難しくない。 インストール先: c:\gs オプション: Use Windows TrueType fonts for Chinese, Japanese and Korean 3. emacs の設定 以下を.emacsへ追加 ↓↓↓↓↓↓ここから↓↓↓↓↓↓ ;; --------------------------------------------- ;; 印刷設定 ;; Ghostscriptが必要 ;; http://auemath.aichi-edu.ac.jp/~khotta/ghost/ ;; BoldFontが必要 ;; http://ftp.yz.yamagata-u.ac.jp/pub/GNU/intlfonts/intlfonts-1.2.1.tar.gz ;; ;; M-x ps-print-buffer バッファを白黒印刷 ;; M-x ps-print-buffer-with-face バッファをカラー印刷 ;; M-x ps-print-region リージョンを白黒印刷 ;; M-x ps-print-region-with-face リージョンをカラー印刷 ;; --------------------------------------------- (require 'cl) (defun listsubdir (basedir) (remove-if (lambda (x) (not (file-directory-p x))) (directory-files basedir t "^[^.]"))) ; フォントパスを指定 (setq bdf-directory-list (listsubdir "c:/emacs/font/intlfonts-1.2.1")) ; ghostscriptの実行コマンド場所を指定 (setq ps-print-color-p t ps-lpr-command "c:/gs/gs8.71/bin/gswin32c.exe" ps-multibyte-buffer 'non-latin-printer ps-lpr-switches '("-sDEVICE=mswinpr2" "-dNOPAUSE" "-dBATCH" "-dWINKANJI") printer-name nil ps-printer-name nil ps-printer-name-option nil ps-print-header nil ; ヘッダの非表示 ) ↑↑↑↑↑↑ここまで↑↑↑↑↑↑ これで、M-x から ps-print-buffer か、メニューの「File」→「PostScript Print Buffer」等を選択すると、Windowsプリンタの選択画面がでるので、後はWindows同様に印刷すれば良い。 この時、Windows XPS Writer等を選択すると、実際に印刷は行わず、印刷形式のままファイルとして保存してくれるので、印刷プレビューの替わりに使うと便利。 2010/09/10 追記 ps-print-bufferはデフォルトでバッファ情報等をヘッダとして印刷するが、ここに日本語が含まれていると文字化けしてしまう。回避方法が分からなかったので安直だが、ヘッダを印刷しないように設定。
入門GNU Emacs第3版 価格:3,990円(税込、送料別) |