Function: preview-dvi*-place-all
preview-dvi*-place-all is a byte-compiled function defined in
preview.el.
Signature
(preview-dvi*-place-all)
Documentation
Place all images that the dvi convertion process has created, if any.
Deletes the dvi file when finished.
Aliases
preview-dvipng-place-all (obsolete since 14.2.0)
Source Code
;; Defined in ~/.emacs.d/elpa/auctex-14.1.2/preview.el
(defun preview-dvi*-place-all ()
"Place all images that the dvi convertion process has created, if any.
Deletes the dvi file when finished."
(let (filename queued oldfiles snippet)
(dolist (ov (prog1 preview-gs-queue (setq preview-gs-queue nil)))
(when (and (setq queued (overlay-get ov 'queued))
(setq snippet (aref (overlay-get ov 'queued) 2))
(setq filename (preview-make-filename
(format "prev%03d.%s"
snippet preview-dvi*-image-type)
TeX-active-tempdir)))
(if (file-exists-p (car filename))
(progn
;; Delete previous filenames here before overwriting the
;; property `'filenames', potentially orphaning files.
(preview--delete-overlay-files ov)
(overlay-put ov 'filenames (list filename))
(preview-replace-active-icon
ov
(preview-create-icon (car filename)
preview-dvi*-image-type
(preview-ascent-from-bb
(aref queued 0))
(aref preview-colors 2)))
(overlay-put ov 'queued nil))
(push filename oldfiles)
;; Do note modify `filenames' if we are not replacing
;; it, to avoid orphaning files. The filenames will be
;; eventually deleted when the property is overwritten.
;; (overlay-put ov 'filenames nil)
(push ov preview-gs-queue))))
(if (setq preview-gs-queue (nreverse preview-gs-queue))
(progn
(setq TeX-sentinel-function (lambda (process command)
(preview-gs-dvips-sentinel
process
command
t)))
(preview-start-dvips preview-fast-conversion)
(dolist (ov preview-gs-queue)
(setq snippet (aref (overlay-get ov 'queued) 2))
;; Only add `preview-ps-file' if it doesn't exist. Also,
;; delete any files before overwriting 'filenames.
(if preview-ps-file
(unless (memq preview-ps-file (overlay-get ov 'filenames))
(preview--delete-overlay-files ov)
(overlay-put ov 'filenames
(list
(preview-make-filename preview-ps-file
TeX-active-tempdir))))
(preview--delete-overlay-files ov)
(overlay-put ov 'filenames
(list
(preview-make-filename
(format "preview.%03d" snippet)
TeX-active-tempdir))))))
(condition-case nil
(let ((gsfile preview-gs-file))
(delete-file
(with-current-buffer TeX-command-buffer
(funcall (car gsfile) "dvi" t))))
(file-error nil)))
;; Always delete oldfiles
(while (setq filename (pop oldfiles))
(condition-case nil
(preview-delete-file filename)
(file-error nil)))))