印 刷

Last modified: "2019/01/04 21:22:05"

Table of contents


いろいろ

全てのバッファを印刷

赤塚さんのぺーじを参考に。 ファイルを visit しているバッファをすべて印刷する。

(defun print-all-buffer ()
  (interactive)
  (let ((i 0))
    (dolist (b (buffer-list))
      (when (stringp (get-buffer-file-name b))
        (if (zerop i)
            (progn
              (print-dialog b)
              (setq i (1+ i)))
          (print-buffer b))))))

ファイラからまとめて印刷

一画面ファイラからファイルを選択して、Enter でまとめて印刷する。

(defun print-selected-file ()
  (interactive)
  (toggle-ime nil)
  (multiple-value-bind (files result)
      (filer nil t "まとめてファイルを印刷" nil)
    (when result
      (let ((i 0))
        (dolist (f files t)
          (unless (file-directory-p f)
            (find-file f)
            (add-history f '*minibuffer-file-name-history*)
            (if (zerop i)
                (progn
                  (print-dialog)
                  (setq i (1+ i)))
              (print-buffer (selected-buffer)))
            (delete-buffer (selected-buffer))
            ))))))