From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Dokos Subject: Re: [new exporter] Date format string not handled for LaTeX export Date: Mon, 29 Oct 2012 19:05:55 -0400 Message-ID: <2124.1351551955@alphaville> References: <87fw4xqviy.fsf@gmail.com> <87y5iposs7.fsf@gmail.com> Reply-To: nicholas.dokos@hp.com Return-path: Received: from eggs.gnu.org ([208.118.235.92]:56669) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TSyPC-0002su-T2 for emacs-orgmode@gnu.org; Mon, 29 Oct 2012 19:06:08 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TSyP9-0003YF-MT for emacs-orgmode@gnu.org; Mon, 29 Oct 2012 19:06:02 -0400 Received: from g4t0017.houston.hp.com ([15.201.24.20]:47035) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TSyP9-0003XW-A7 for emacs-orgmode@gnu.org; Mon, 29 Oct 2012 19:05:59 -0400 In-Reply-To: Message from Michael Gauland of "Mon, 29 Oct 2012 22:55:32 -0000." List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Michael Gauland Cc: emacs-orgmode@gnu.org Michael Gauland wrote: > Nicolas Goaziou gmail.com> writes: > > > I just tried with a minimal init and it worked. Could you send the > > example you're trying to export? > > The file is below. With a minimal init, I get the error "Symbol's function > definition is void: org-macro-initialize-templates'. If I use my full .emacs > file, the exporter just seems to freeze up. > > ------ test.org ----- > #+DATE: {{{date(%c)}}} > > This ia a test file. > > > With a minimal file, I get a cpu pegged at 100% with no end in sight. Setting debug-on-quit and C-g gives me the following backtrace. Org-mode version 7.9.2 (release_7.9.2-533-g07c889 @ /home/nick/elisp/org-mode/lisp/) Nick Debugger entered--Lisp error: (quit) mapc((lambda (type) (let* ((successor-fun (intern (format "org-element-%s-successor" (or (cdr ...) type)))) (obj (funcall successor-fun limit))) (and obj (setq next-candidates (cons obj next-candidates))))) (inline-babel-call inline-src-block latex-or-entity link macro sub/superscript text-markup)) (let (next-candidates types-to-search) (if (not objects) (setq types-to-search restriction) (mapc (function (lambda (obj) (if (< (cdr obj) (point)) (setq types-to-search (cons ... types-to-search)) (setq next-candidates (cons obj next-candidates))))) objects)) (mapc (function (lambda (type) (let* ((successor-fun (intern ...)) (obj (funcall successor-fun limit))) (and obj (setq next-candidates (cons obj next-candidates)))))) types-to-search) next-candidates) org-element--get-next-object-candidates(23 (inline-babel-call inline-src-block latex-or-entity link macro sub/superscript text-markup) nil) (setq candidates (org-element--get-next-object-candidates end restriction candidates)) (while (setq candidates (org-element--get-next-object-candidates end restriction candidates)) (let ((closest-cand (rassq (apply (quote min) (mapcar (quote cdr) candidates)) candidates))) (if (> (cdr closest-cand) origin) (throw (quote exit) parent) (let* ((object (progn (goto-char ...) (funcall ...))) (cbeg (org-element-property :contents-begin object)) (cend (org-element-property :contents-end object))) (cond ((< (org-element-property :end object) origin) (goto-char (org-element-property :end object))) ((or (not cbeg) (> cbeg origin) (< cend origin)) (throw (quote exit) (org-element-put-property object :parent parent))) (t (goto-char cbeg) (org-element-put-property object :parent parent) (setq parent object restriction (org-element-restriction object) end cend))))))) (catch (quote exit) (while (setq candidates (org-element--get-next-object-candidates end restriction candidates)) (let ((closest-cand (rassq (apply (quote min) (mapcar ... candidates)) candidates))) (if (> (cdr closest-cand) origin) (throw (quote exit) parent) (let* ((object (progn ... ...)) (cbeg (org-element-property :contents-begin object)) (cend (org-element-property :contents-end object))) (cond ((< ... origin) (goto-char ...)) ((or ... ... ...) (throw ... ...)) (t (goto-char cbeg) (org-element-put-property object :parent parent) (setq parent object restriction ... end cend))))))) parent) (let ((restriction (org-element-restriction type)) (parent element) candidates) (catch (quote exit) (while (setq candidates (org-element--get-next-object-candidates end restriction candidates)) (let ((closest-cand (rassq (apply ... ...) candidates))) (if (> (cdr closest-cand) origin) (throw (quote exit) parent) (let* ((object ...) (cbeg ...) (cend ...)) (cond (... ...) (... ...) (t ... ... ...)))))) parent)) (if (not (or (let ((post (org-element-property :post-affiliated element))) (and post (> post origin) (< (org-element-property :begin element) origin) (progn (beginning-of-line) (looking-at org-element--affiliated-re) (member (upcase ...) org-element-parsed-keywords)) (setq type (quote keyword)) (if (and (match-end 2) (<= origin ...)) (progn (goto-char ...) (setq end ...)) (goto-char (match-end 0)) (setq end (line-end-position))))) (and (eq type (quote item)) (let ((tag (org-element-property :tag element))) (and tag (progn (beginning-of-line) (search-forward tag ...) (goto-char ...) (and ... ...))))) (and (memq type (quote (headline inlinetask))) (progn (beginning-of-line) (skip-chars-forward "* ") (setq end (point-at-eol)))) (and (memq type (quote (paragraph table-row verse-block))) (let ((cbeg (org-element-property :contents-begin element)) (cend (org-element-property :contents-end element))) (and (>= origin cbeg) (<= origin cend) (progn (goto-char cbeg) (setq end cend)))) ) (and (eq type (quote keyword)) (let ((key (org-element-property :key element))) (and (member key org-element-document-properties) (progn (beginning-of-line) (search-forward key ... t) (forward-char) (setq end ...))))))) element (let ((restriction (org-element-restriction type)) (parent element) candidates) (catch (quote exit) (while (setq candidates (org-element--get-next-object-candidates end restriction candidates)) (let ((closest-cand (rassq ... candidates))) (if (> (cdr closest-cand) origin) (throw (quote exit) parent) (let* (... ... ...) (cond ... ... ...))))) parent))) (let* ((origin (point)) (element (org-element-at-point)) (type (car element)) end) (if (not (or (let ((post (org-element-property :post-affiliated element))) (and post (> post origin) (< (org-element-property :begin element) origin) (progn (beginning-of-line) (looking-at org-element--affiliated-re) (member ... org-element-parsed-keywords)) (setq type (quote keyword)) (if (and ... ...) (progn ... ...) (goto-char ...) (setq end ...)))) (and (eq type (quote item)) (let ((tag ...)) (and tag (progn ... ... ... ...)))) (and (memq type (quote (headline inlinetask))) (progn (beginning-of-line) (skip-chars-forward "* ") (setq end (point-at-eol)))) (and (memq type (quote (paragraph table-row verse-block))) (let ((cbeg ...) (cend ...)) (and (>= origin cbeg) (<= origin cend) (progn ... ...)))) (and (eq type (quote keyword)) (let ((key ...)) (and (member key org-element-document-properties) (progn ... ... ... ...)))))) element (let ((restriction (org-element-restriction type)) (parent e lement) candidates) (catch (quote exit) (while (setq candidates (org-element--get-next-object-candidates end restriction candidates)) (let ((closest-cand ...)) (if (> ... origin) (throw ... parent) (let* ... ...)))) parent)))) (save-restriction (widen) (let* ((origin (point)) (element (org-element-at-point)) (type (car element)) end) (if (not (or (let ((post ...)) (and post (> post origin) (< ... origin) (progn ... ... ...) (setq type ...) (if ... ... ... ...))) (and (eq type (quote item)) (let (...) (and tag ...))) (and (memq type (quote ...)) (progn (beginning-of-line) (skip-chars-forward "* ") (setq end ...))) (and (memq type (quote ...)) (let (... ...) (and ... ... ...))) (and (eq type (quote keyword)) (let (...) (and ... ...))))) element (let ((restriction (org-element-restriction type)) (parent element) candidates) (catch (quote exit) (while (setq candidates (org-element--get-next-object-candidates end restriction candidates)) (let (...) (if ... ... ...))) parent))))) (save-excursion (save-restriction (widen) (let* ((origin (point)) (element (org-element-at-point)) (type (car element)) end) (if (not (or (let (...) (and post ... ... ... ... ...)) (and (eq type ...) (let ... ...)) (and (memq type ...) (progn ... ... ...)) (and (memq type ...) (let ... ...)) (and (eq type ...) (let ... ...)))) element (let ((restriction (org-element-restriction type)) (parent element) candidates) (catch (quote exit) (while (setq candidates ...) (let ... ...)) parent)))))) org-element-context() (let ((object (org-element-context))) (if (eq (org-element-type object) (quote macro)) (progn (let ((value (org-macro-expand object templates))) (if value (progn (delete-region (org-element-property :begin object) (progn ... ... ...)) (save-excursion (insert value)))))))) (while (re-search-forward "{{{[-A-Za-z0-9_]" nil t) (let ((object (org-element-context))) (if (eq (org-element-type object) (quote macro)) (progn (let ((value (org-macro-expand object templates))) (if value (progn (delete-region ... ...) (save-excursion ...)))))))) (save-excursion (goto-char (point-min)) (while (re-search-forward "{{{[-A-Za-z0-9_]" nil t) (let ((object (org-element-context))) (if (eq (org-element-type object) (quote macro)) (progn (let ((value ...)) (if value (progn ... ...)))))))) org-macro-replace-all((("author" . #("Nick Dokos" 0 10 (:parent nil))) ("date" . "{{{date(%c)}}}") ("email" . "nick@alphaville") ("title" . " *temp*"))) (if noexpand nil (org-macro-replace-all (list (cons "author" (org-element-interpret-data (plist-get info :author))) (cons "date" (org-element-interpret-data (plist-get info :date))) (cons "email" (or (plist-get info :email) "")) (cons "title" (org-element-interpret-data (plist-get info :title)))))) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file (current-buffer))) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (if noexpand nil (org-macro-replace-all (list (cons "author" (org-element-interpret-data (plist-get info :author))) (cons "date" (org-element-interpret-data (plist-get info :date))) (cons "email" (or (plist-get info :email) "")) (cons "title" (org-element-interpret-data (plist-get info :title)))))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visible-only) info))) (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (apply (quote narrow-to-region) --region) (mapc (lambda (ov) (move-overlay ov (overlay-start ov) (overlay-end ov) (current-buffer))) --overlays) (goto-char (point-min)) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file (current-buffer))) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (if noex pand nil (org-macro-replace-all (list (cons "author" (org-element-interpret-data (plist-get info :author))) (cons "date" (org-element-interpret-data (plist-get info :date))) (cons "email" (o r (plist-get info :email) "")) (cons "title" (org-element-interpret-data (plist-get info :title)))))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visible-only) info)))) (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (apply (quote narrow-to-region) --region) (mapc (lambda (ov) (move-overlay ov (overlay-start ov) (overlay-end ov) (current-buffer))) --overlays) (goto-char (point-min)) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file (current-buffer))) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) ( if noexpand nil (org-macro-replace-all (list (cons "author" (org-element-interpret-data ...)) (cons "date" (org-element-interpret-data ...)) (cons "email" (or ... "")) (cons "title" (org-ele ment-interpret-data ...))))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visible-only) info))))) (unwind-protect (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (apply (quote narrow-to-region) --region) (mapc (lambda (ov) (move-overlay ov (overlay-start ov) (overlay-end ov) (current-buffer))) --overlays) (goto-char (point-min)) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file ...)) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist)) ) (if noexpand nil (org-macro-replace-all (list (cons "author" ...) (cons "date" ...) (cons "email" ...) (cons "title" ...)))) (setq tree (org-export-filter-apply-functions (plist-get info : filter-parse-tree) (org-element-parse-buffer nil visible-only) info))))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (apply (quote narrow-to-region) --region) (mapc (lambda (ov) (move-overlay ov (overlay-start ov) (overlay-end ov) (current-buffer))) --overlays) (goto-char (point-min)) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let (...) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (if noexpand nil (org-macro-replace-all (list ... ... ... ...))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-bu ffer nil visible-only) info))))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))) (with-current-buffer temp-buffer (unwind-protect (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (apply (quote narrow-to-region) --region) (mapc (lambda (ov) (move-overlay ov (overlay-start ov) (overlay-end ov) (current-buffer))) --overlays) (goto-char (point-min)) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let (...) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext- plist))) (if noexpand nil (org-macro-replace-all (list ... ... ... ...))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visi ble-only) info))))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (with-current-buffer temp-buffer (unwind-protect (progn (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (apply (quote narrow-to-region) --region) (mapc (lambda (ov) (move-overlay ov ... ... ...)) --overlays) (goto-char (point-min)) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ... ...)) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters ...)) (if noexpand nil (org-macro-replace-all ...)) (setq tree (or g-export-filter-apply-functions ... ... info))))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (with-temp-buffer (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (apply (quote narrow-to-region) --region) (mapc (lambda (ov) (move-overlay ov (overlay-start ov) (overlay-end ov) (current-buffer))) --overlays) (goto-char (point-min)) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file (current-buffer))) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext -plist))) (if noexpand nil (org-macro-replace-all (list (cons "author" (org-element-interpret-data ...)) (cons "date" (org-element-interpret-data ...)) (cons "email" (or ... "")) (cons "titl e" (org-element-interpret-data ...))))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visible-only) info))))) (let* ((--original-buffer (current-buffer)) (--region (list (point-min) (point-max))) (--buffer-string (org-with-wide-buffer (buffer-string))) (--overlays (mapcar (quote copy-overlay) (apply (quote overlays-in) --region)))) (with-temp-buffer (let ((buffer-invisibility-spec nil)) (org-clone-local-variables --original-buffer "^\\(org-\\|orgtbl-\\|major-mode$\\|outline-\\(regexp\\|level\\)$\\)") (insert --buffer-string) (apply (quote narrow-to-region) --region) (mapc (lambda (ov) (move-overlay ov (overlay-start ov) (overlay-end ov) (current-buffer))) --overlays) (goto-char (point-min)) (progn (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file ...)) (org-export-blocks-preprocess))) ( org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (if noexpand nil (org-macro-replace-all (list (cons "author" ...) (cons "date" ...) (cons "email" ...) (cons "title" ...)))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visible-only) info)))))) (org-export-with-current-buffer-copy (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file (current-buffer))) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (if noexpand nil (org-macro-replace-all (list (cons "author" (org-element-interpret-data (plist-get info :author))) (cons "date" (org-element-interpret-data (plist-get info :date))) (cons "email" (or (plist-get info :email) "")) (cons "title" (org-element-interpret-data (plist-get info :title)))))) (setq tree (org-export-fil ter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visible-only) info))) (let (info tree) (org-export-with-current-buffer-copy (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file (current-buffer))) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (if noexpand nil (org-macro-replace-all (list (cons "author" (org-element-interpret-data (plist-get info :author))) (cons "date" (org-element-interpret-data (plist-get info :date))) (cons "email" (or (plist-get info :email) "")) (cons "title" (org-element-interpret-data (plist-get info :title)))))) (setq tre e (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visible-only) info))) (setq info (org-combine-plists info (org-export-collect-tree-prop erties tree info))) (let* ((body (org-element-normalize-string (org-export-data tree info))) (template (cdr (assq (quote template) (plist-get info :translate-alist)))) (output (org-export-filter-apply-functions (plist-get info :filter-final-output) (if (or (not ...) body-only) body (funcall template body info)) info))) (if org-export-copy-to-kill-ring (progn (org-kill-new output))) output)) (save-restriction (cond ((org-region-active-p) (narrow-to-region (region-beginning) (region-end))) (subtreep (org-narrow-to-subtree) (goto-char (point-min)) (forward-line) (narrow-to-region (point) (point-max)))) (let (info tree) (org-export-with-current-buffer-copy (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file (current-buffer))) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (if noexpand nil (org-macro-replace-all (list (cons "author" (org-element-interpret-data ...)) ( cons "date" (org-element-interpret-data ...)) (cons "email" (or ... "")) (cons "title" (org-element-interpret-data ...))))) (setq tree (org-export-filter-apply-functions (plist-get info :fil ter-parse-tree) (org-element-parse-buffer nil visible-only) info))) (setq info (org-combine-plists info (org-export-collect-tree-properties tree info))) (let* ((body (org-element-normalize-string (org-export-data tree info))) (template (cdr (assq (quote template) (plist-get info :translate-alist)))) (output (org-export-filter-apply-functions (plist-get info :filter-final-output) (if (or ... body-only) body (funcall template body info)) info))) (if org-export-copy-to-kill-ring (progn (org-kill-new output))) output))) (save-excursion (save-restriction (cond ((org-region-active-p) (narrow-to-region (region-beginning) (region-end))) (subtreep (org-narrow-to-subtree) (goto-char (point-min)) (forward-line) (narrow-to-region (point) (point-max)))) (let (info tree) (org-export-with-current-buffer-copy (if noexpand nil (org-export-expand-include-keyword) (org-macro-initialize-templates) (org-macro-replace-all org-macro-templates) (let ((org-current-export-file ...)) (org-export-blocks-preprocess))) (org-update-radio-target-regexp) (goto-char (point-min)) (run-hook-with-args (quote org-export-before-parsing-hook) backend) (setq info (org-export-install-filters (org-export-get-environment backend subtreep ext-plist))) (if noexpand nil (org-macro-replace-all (list (cons "author" ...) (cons "date" ...) (cons "em ail" ...) (cons "title" ...)))) (setq tree (org-export-filter-apply-functions (plist-get info :filter-parse-tree) (org-element-parse-buffer nil visible-only) info))) (setq info (org-combine- plists info (org-export-collect-tree-properties tree info))) (let* ((body (org-element-normalize-string (org-export-data tree info))) (template (cdr (assq ... ...))) (output (org-export-filter-apply-functions (plist-get info :filter-final-output) (if ... body ...) info))) (if org-export-copy-to-kill-ring (progn (org-kill-new output))) output)))) org-export-as(e-latex nil nil nil nil nil) (let ((out (org-export-as backend subtreep visible-only body-only ext-plist noexpand))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (insert out) (let ((coding-system-for-write org-export-coding-system)) (write-file file))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer)))))) org-export-to-file(e-latex "./date.tex" nil nil nil nil) (let ((outfile (org-export-output-file-name ".tex" subtreep pub-dir))) (org-export-to-file (quote e-latex) outfile subtreep visible-only body-only ext-plist)) org-e-latex-export-to-latex(nil nil nil) funcall(org-e-latex-export-to-latex nil nil nil) (cond ((eql action (quote publish-current-file)) (org-e-publish-current-file (memq (quote force) optns))) ((eql action (quote publish-current-project)) (org-e-publish-current-project (memq (quote force) optns))) ((eql action (quote publish-choose-project)) (org-e-publish (assoc (org-icompleting-read "Publish project: " org-e-publish-project-alist nil t) org-e-publish-project-alist) (memq (quote force) optns))) ((eql action (quote publish-all)) (org-e-publish-all (memq (quote force) optns))) (t (funcall action (memq (quote subtree) optns) (memq (quote visible) optns) (memq (quote body) optns)))) (let* ((input (let ((wconfig (current-window-configuration))) (unwind-protect (progn (unwind-protect (org-export-dispatch-ui ... nil org-export-dispatch-use-expert-ui) (and ... ...))) (set-window-configuration wconfig)))) (action (car input)) (optns (cdr input))) (cond ((eql action (quote publish-current-file)) (org-e-publish-current-file (memq (quote force) optns))) ((eql action (quote publish-current-project)) (org-e-publish-current-project (memq (quote force) optns))) ((eql action (quote publish-choose-project)) (org-e-publish (assoc (org-icompleting-read "Publish project: " org-e-publish-project-alist nil t) org-e-publish-project-alist) (memq (quote force) optns))) ((eql action (quote publish-all)) (org-e-publish-all (memq (quote force) optns))) (t (funcall action (memq (quote subtre e) optns) (memq (quote visible) optns) (memq (quote body) optns))))) org-export-dispatch() call-interactively(org-export-dispatch record nil) command-execute(org-export-dispatch record) execute-extended-command(nil "org-export-dispatch") call-interactively(execute-extended-command nil nil)