Function: org-export--stack-generate

org-export--stack-generate is a byte-compiled function defined in ox.el.gz.

Signature

(org-export--stack-generate)

Documentation

Generate the asynchronous export stack for display.

Unavailable sources are removed from the list. Return a list appropriate for tabulated-list-print.

Source Code

;; Defined in /usr/src/emacs/lisp/org/ox.el.gz
(defun org-export--stack-generate ()
  "Generate the asynchronous export stack for display.
Unavailable sources are removed from the list.  Return a list
appropriate for `tabulated-list-print'."
  ;; Clear stack from exited processes, dead buffers or non-existent
  ;; files.
  (setq org-export-stack-contents
	(cl-remove-if-not
	 (lambda (el)
	   (if (processp (nth 2 el))
	       (buffer-live-p (process-buffer (nth 2 el)))
	     (let ((source (car el)))
	       (if (bufferp source) (buffer-live-p source)
		 (file-exists-p source)))))
	 org-export-stack-contents))
  ;; Update `tabulated-list-entries'.
  (let ((counter 0))
    (mapcar
     (lambda (entry)
       (let ((source (car entry)))
	 (list source
	       (vector
		;; Counter.
		(number-to-string (cl-incf counter))
		;; Backend.
		(if (nth 1 entry) (symbol-name (nth 1 entry)) "")
		;; Age.
		(let ((info (nth 2 entry)))
		  (if (processp info) (symbol-name (process-status info))
		    (format-seconds "%h:%.2m" (float-time (time-since info)))))
		;; Source.
		(if (stringp source) source (buffer-name source))))))
     org-export-stack-contents)))