2013年6月16日日曜日

[Emacs]NTEmacs で作成した文章の印刷

NTEmacs の M-x print-buffer を使用して印刷する方法を記述する。
NTEmacs から直接印刷することは困難なのでテキストエディタ (今回はサクラエディタW を使用) を使用して印刷をする。
.emacs に以下を記述
;;; ===== 印刷 =====
(setq exec-path (cons "C:\\Program Files\\Utility\\sakuraW_r1428" exec-path))
(setq print-region-function
 (lambda (start end
        &optional lpr-prog
        delete-text buf display
        &rest rest)
        (let* ((procname (make-temp-name "w32-print-"))
        (tempfile
        (subst-char-in-string
        ?/ ?\\
        (expand-file-name procname temporary-file-directory)))
        (coding-system-for-write 'sjis-dos))
        (write-region start end tempfile)
        (set-process-sentinel
        (start-process procname nil "sakuraW.exe" tempfile)
        (lambda (process event)
        (let ((tempfile
        (expand-file-name (process-name process)
        temporary-file-directory)))
        (when (file-exists-p tempfile)
        (delete-file tempfile))))))))
  • setq exec-path と setenv "PATH" にある PATH はエディタのある PATH を指定すること
  • start-process にある sakuraW.exe は使用するエディタを指定すること
  • 作成中の文章で M-x print-buffer を実行すると buffer 全体がサクラエディタにコピーされるのでそこから印刷を行うことが可能となる
  • M-x print-region で region 指定の印刷もできる

0 件のコメント:

コメントを投稿