diff options
author | Nicolas Goaziou <n.goaziou@gmail.com> | 2013-08-07 10:35:42 +0200 |
---|---|---|
committer | Nicolas Goaziou <n.goaziou@gmail.com> | 2013-08-07 16:11:42 +0200 |
commit | 9154c70a04663024c574ff723c9caefe6e4b64ab (patch) | |
tree | cb38a496460675cd06cc4be4622caf6e9cfdeab0 | |
parent | 6f55864f20f2f45e110aae077770e696722ed039 (diff) | |
download | org-mode-9154c70a04663024c574ff723c9caefe6e4b64ab.tar.gz |
Export back-ends: Apply changes to export functions
* contrib/lisp/ox-confluence.el (org-confluence-export-as-confluence):
* contrib/lisp/ox-deck.el (org-deck-export-as-html,
org-deck-export-to-html):
* contrib/lisp/ox-freemind.el (org-freemind-export-to-freemind):
* contrib/lisp/ox-groff.el (org-groff-export-to-groff,
org-groff-export-to-pdf):
* contrib/lisp/ox-koma-letter.el (org-koma-letter-export-as-latex,
org-koma-letter-export-to-latex, org-koma-letter-export-to-pdf):
* contrib/lisp/ox-rss.el (org-rss-export-as-rss,
org-rss-export-to-rss):
* contrib/lisp/ox-s5.el (org-s5-export-as-html,
org-s5-export-to-html):
* contrib/lisp/ox-taskjuggler.el (org-taskjuggler-export):
* lisp/ob-haskell.el:
* lisp/ox-ascii.el (org-ascii-export-as-ascii,
org-ascii-export-to-ascii):
* lisp/ox-beamer.el (org-beamer-export-as-latex,
org-beamer-export-to-latex, org-beamer-export-to-pdf):
* lisp/ox-html.el (org-html-export-as-html, org-html-export-to-html):
* lisp/ox-icalendar.el (org-icalendar-export-to-ics):
* lisp/ox-latex.el (org-latex-export-as-latex,
org-latex-export-to-pdf):
* lisp/ox-man.el (org-man-export-to-man, org-man-export-to-pdf):
* lisp/ox-md.el (org-md-export-as-markdown,
org-md-export-to-markdown):
* lisp/ox-odt.el (org-odt-export-to-odt):
* lisp/ox-org.el (org-org-export-as-org, org-org-export-to-org):
* lisp/ox-publish.el (org-publish-org-to):
* lisp/ox-texinfo.el (org-texinfo-export-to-texinfo,
org-texinfo-export-to-info):
* testing/lisp/test-ob-exp.el (test-ob-exp/org-babel-exp-src-blocks/w-no-file):
-rw-r--r-- | contrib/lisp/ox-confluence.el | 21 | ||||
-rw-r--r-- | contrib/lisp/ox-deck.el | 33 | ||||
-rw-r--r-- | contrib/lisp/ox-freemind.el | 15 | ||||
-rw-r--r-- | contrib/lisp/ox-groff.el | 35 | ||||
-rw-r--r-- | contrib/lisp/ox-koma-letter.el | 50 | ||||
-rw-r--r-- | contrib/lisp/ox-rss.el | 24 | ||||
-rw-r--r-- | contrib/lisp/ox-s5.el | 31 | ||||
-rw-r--r-- | contrib/lisp/ox-taskjuggler.el | 14 | ||||
-rw-r--r-- | lisp/ob-haskell.el | 2 | ||||
-rw-r--r-- | lisp/ox-ascii.el | 31 | ||||
-rw-r--r-- | lisp/ox-beamer.el | 48 | ||||
-rw-r--r-- | lisp/ox-html.el | 32 | ||||
-rw-r--r-- | lisp/ox-icalendar.el | 19 | ||||
-rw-r--r-- | lisp/ox-latex.el | 49 | ||||
-rw-r--r-- | lisp/ox-man.el | 25 | ||||
-rw-r--r-- | lisp/ox-md.el | 24 | ||||
-rw-r--r-- | lisp/ox-odt.el | 15 | ||||
-rw-r--r-- | lisp/ox-org.el | 27 | ||||
-rw-r--r-- | lisp/ox-publish.el | 26 | ||||
-rw-r--r-- | lisp/ox-texinfo.el | 35 | ||||
-rw-r--r-- | testing/lisp/test-ob-exp.el | 2 |
21 files changed, 120 insertions, 438 deletions
diff --git a/contrib/lisp/ox-confluence.el b/contrib/lisp/ox-confluence.el index 5e01e1e..6170a0c 100644 --- a/contrib/lisp/ox-confluence.el +++ b/contrib/lisp/ox-confluence.el @@ -166,26 +166,11 @@ EXT-PLIST, when provided, is a property list with external parameters overriding Org default settings, but still inferior to file-local settings. -Export is done in a buffer named \"*Org E-Confluence Export*\", which +Export is done in a buffer named \"*Org CONFLUENCE Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org E-Confluence Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (text-mode) - (org-export-add-to-stack (current-buffer) 'confluence))) - `(org-export-as 'confluence ,subtreep ,visible-only ,body-only - ',ext-plist)) - (let ((outbuf (org-export-to-buffer - 'confluence "*Org E-Confluence Export*" - subtreep visible-only body-only ext-plist))) - (with-current-buffer outbuf (text-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'confluence "*org CONFLUENCE Export*" + async subtreep visible-only body-only external (lambda () (text-mode)))) (provide 'ox-confluence) diff --git a/contrib/lisp/ox-deck.el b/contrib/lisp/ox-deck.el index bdcdcbc..847f7af 100644 --- a/contrib/lisp/ox-deck.el +++ b/contrib/lisp/ox-deck.el @@ -524,23 +524,8 @@ Export is done in a buffer named \"*Org deck.js Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org deck.js Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (nxml-mode) - (org-export-add-to-stack (current-buffer) 'deck))) - `(org-export-as 'deck ,subtreep ,visible-only ,body-only ',ext-plist)) - (let ((outbuf (org-export-to-buffer - 'deck "*Org deck.js Export*" - subtreep visible-only body-only ext-plist))) - ;; Set major mode. - (with-current-buffer outbuf (nxml-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'deck "*Org deck.js Export*" + async subtreep visible-only body-only ext-plist (lambda () (nxml-mode)))) (defun org-deck-export-to-html (&optional async subtreep visible-only body-only ext-plist) @@ -573,17 +558,9 @@ Return output file's name." (interactive) (let* ((extension (concat "." org-html-extension)) (file (org-export-output-file-name extension subtreep)) - (org-export-coding-system org-html-coding-system)) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'deck)) - (let ((org-export-coding-system org-html-coding-system)) - `(expand-file-name - (org-export-to-file - 'deck ,file ,subtreep ,visible-only ,body-only ',ext-plist)))) - (let ((org-export-coding-system org-html-coding-system)) - (org-export-to-file - 'deck file subtreep visible-only body-only ext-plist))))) + (org-export-coding-system org-html-coding-system)) + (org-export-to-file 'deck file + async subtreep visible-only body-only ext-plist))) (defun org-deck-publish-to-html (plist filename pub-dir) "Publish an org file to deck.js HTML Presentation. diff --git a/contrib/lisp/ox-freemind.el b/contrib/lisp/ox-freemind.el index cbdfb1f..aafd714 100644 --- a/contrib/lisp/ox-freemind.el +++ b/contrib/lisp/ox-freemind.el @@ -518,17 +518,10 @@ file-local settings. Return output file's name." (interactive) (let* ((extension (concat ".mm" )) - (file (org-export-output-file-name extension subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'freemind)) - (let ((org-export-coding-system 'utf-8)) - `(expand-file-name - (org-export-to-file - 'freemind ,file ,subtreep ,visible-only ,body-only ',ext-plist)))) - (let ((org-export-coding-system 'utf-8)) - (org-export-to-file - 'freemind file subtreep visible-only body-only ext-plist))))) + (file (org-export-output-file-name extension subtreep)) + (org-export-coding-system 'utf-8)) + (org-export-to-file 'freemind ,file + async subtreep visible-only body-only ext-plist))) (provide 'ox-freemind) diff --git a/contrib/lisp/ox-groff.el b/contrib/lisp/ox-groff.el index ef54700..9a4fed1 100644 --- a/contrib/lisp/ox-groff.el +++ b/contrib/lisp/ox-groff.el @@ -1855,20 +1855,11 @@ file-local settings. Return output file's name." (interactive) - (let ((outfile (org-export-output-file-name ".groff" subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'groff)) - (let ((org-groff-registered-references nil) - (org-groff-special-content nil)) - `(expand-file-name - (org-export-to-file - 'groff ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist)))) - (let ((org-groff-registered-references nil) - (org-groff-special-content nil)) - (org-export-to-file - 'groff outfile subtreep visible-only body-only ext-plist))))) + (let ((outfile (org-export-output-file-name ".groff" subtreep)) + (org-groff-registered-references nil) + (org-groff-special-content nil)) + (org-export-to-file 'groff outfile + async subtreep visible-only body-only ext-plist))) (defun org-groff-export-to-pdf (&optional async subtreep visible-only body-only ext-plist) @@ -1896,18 +1887,10 @@ file-local settings. Return PDF file's name." (interactive) - (if async - (let ((outfile (org-export-output-file-name ".groff" subtreep))) - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'groff)) - `(expand-file-name - (org-groff-compile - (org-export-to-file - 'groff ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist))))) - (org-groff-compile - (org-groff-export-to-groff - nil subtreep visible-only body-only ext-plist)))) + (let ((outfile (org-export-output-file-name ".groff" subtreep))) + (org-export-to-file 'groff outfile + async subtreep visible-only body-only ext-plist + (lambda (file) (org-groff-compile file))))) (defun org-groff-compile (file) "Compile a Groff file. diff --git a/contrib/lisp/ox-koma-letter.el b/contrib/lisp/ox-koma-letter.el index cdaf34e..d149f9d 100644 --- a/contrib/lisp/ox-koma-letter.el +++ b/contrib/lisp/ox-koma-letter.el @@ -635,23 +635,9 @@ will be displayed if `org-export-show-temporary-export-buffer' is non-nil." (interactive) (let (org-koma-letter-special-contents) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org KOMA-LETTER Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (LaTeX-mode) - (org-export-add-to-stack (current-buffer) 'koma-letter))) - `(org-export-as 'koma-letter ,subtreep ,visible-only ,body-only - ',ext-plist)) - (let ((outbuf (org-export-to-buffer - 'koma-letter "*Org KOMA-LETTER Export*" - subtreep visible-only body-only ext-plist))) - (with-current-buffer outbuf (LaTeX-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf)))))) + (org-export-to-buffer 'koma-letter "*Org KOMA-LETTER Export*" + async subtreep visible-only body-only ext-plist + (lambda () (LaTeX-mode))))) ;;;###autoload (defun org-koma-letter-export-to-latex @@ -687,16 +673,9 @@ directory. Return output file's name." (interactive) (let ((outfile (org-export-output-file-name ".tex" subtreep)) - org-koma-letter-special-contents) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'koma-letter)) - `(expand-file-name - (org-export-to-file - 'koma-letter ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist))) - (org-export-to-file - 'koma-letter outfile subtreep visible-only body-only ext-plist)))) + (org-koma-letter-special-contents)) + (org-export-to-file 'koma-letter outfile + async subtreep visible-only body-only ext-plist))) ;;;###autoload (defun org-koma-letter-export-to-pdf @@ -728,18 +707,11 @@ file-local settings. Return PDF file's name." (interactive) - (if async - (let ((outfile (org-export-output-file-name ".tex" subtreep))) - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'koma-letter)) - `(expand-file-name - (org-latex-compile - (org-export-to-file - 'koma-letter ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist))))) - (org-latex-compile - (org-koma-letter-export-to-latex - nil subtreep visible-only body-only ext-plist)))) + (let ((file (org-export-output-file-name ".tex" subtreep)) + (org-koma-letter-special-contents)) + (org-export-to-file 'koma-letter file + async subtreep visible-only body-only ext-plist + (lambda (file) (org-latex-compile file))))) (provide 'ox-koma-letter) diff --git a/contrib/lisp/ox-rss.el b/contrib/lisp/ox-rss.el index d207be6..7f02462 100644 --- a/contrib/lisp/ox-rss.el +++ b/contrib/lisp/ox-rss.el @@ -160,21 +160,8 @@ non-nil." (let ((file (buffer-file-name (buffer-base-buffer)))) (org-icalendar-create-uid file 'warn-user) (org-rss-add-pubdate-property)) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org RSS Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (text-mode) - (org-export-add-to-stack (current-buffer) 'rss))) - `(org-export-as 'rss ,subtreep ,visible-only)) - (let ((outbuf (org-export-to-buffer - 'rss "*Org RSS Export*" subtreep visible-only))) - (with-current-buffer outbuf (text-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'rss "*Org RSS Export*" + async subtreep visible-only nil nil (lambda () (text-mode)))) ;;;###autoload (defun org-rss-export-to-rss (&optional async subtreep visible-only) @@ -203,12 +190,7 @@ Return output file's name." (org-rss-add-pubdate-property)) (let ((outfile (org-export-output-file-name (concat "." org-rss-extension) subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'rss)) - `(expand-file-name - (org-export-to-file 'rss ,outfile ,subtreep ,visible-only))) - (org-export-to-file 'rss outfile subtreep visible-only)))) + (org-export-to-file 'rss outfile async subtreep visible-only))) ;;;###autoload (defun org-rss-publish-to-rss (plist filename pub-dir) diff --git a/contrib/lisp/ox-s5.el b/contrib/lisp/ox-s5.el index 24a0506..d97a9b2 100644 --- a/contrib/lisp/ox-s5.el +++ b/contrib/lisp/ox-s5.el @@ -369,23 +369,8 @@ Export is done in a buffer named \"*Org S5 Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org S5 Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (nxml-mode) - (org-export-add-to-stack (current-buffer) 's5))) - `(org-export-as 's5 ,subtreep ,visible-only ,body-only ',ext-plist)) - (let ((outbuf (org-export-to-buffer - 's5 "*Org S5 Export*" - subtreep visible-only body-only ext-plist))) - ;; Set major mode. - (with-current-buffer outbuf (nxml-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 's5 "*Org S5 Export*" + async subtreep visible-only body-only ext-plist (lambda () (nxml-mode)))) (defun org-s5-export-to-html (&optional async subtreep visible-only body-only ext-plist) @@ -419,16 +404,8 @@ Return output file's name." (let* ((extension (concat "." org-html-extension)) (file (org-export-output-file-name extension subtreep)) (org-export-coding-system org-html-coding-system)) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 's5)) - (let ((org-export-coding-system org-html-coding-system)) - `(expand-file-name - (org-export-to-file - 's5 ,file ,subtreep ,visible-only ,body-only ',ext-plist)))) - (let ((org-export-coding-system org-html-coding-system)) - (org-export-to-file - 's5 file subtreep visible-only body-only ext-plist))))) + (org-export-to-file 's5 file + async subtreep visible-only body-only ext-plist))) (defun org-s5-publish-to-html (plist filename pub-dir) "Publish an org file to S5 HTML Presentation. diff --git a/contrib/lisp/ox-taskjuggler.el b/contrib/lisp/ox-taskjuggler.el index 22f64af..13f2f5e 100644 --- a/contrib/lisp/ox-taskjuggler.el +++ b/contrib/lisp/ox-taskjuggler.el @@ -894,16 +894,10 @@ Return output file's name." (interactive) (let ((outfile (org-export-output-file-name org-taskjuggler-extension subtreep))) - (if async - (org-export-async-start - (lambda (f) - (org-export-add-to-stack f 'taskjuggler) - (run-hook-with-args 'org-taskjuggler-final-hook f)) - `(expand-file-name - (org-export-to-file 'taskjuggler ,outfile ,subtreep ,visible-only))) - (org-export-to-file 'taskjuggler outfile subtreep visible-only) - (run-hook-with-args 'org-taskjuggler-final-hook outfile) - outfile))) + (org-export-to-file 'taskjuggler outfile + async subtreep visible-only nil nil + (lambda (file) + (run-hook-with-args 'org-taskjuggler-final-hook file) nil)))) ;;;###autoload (defun org-taskjuggler-export-and-process (&optional subtreep visible-only) diff --git a/lisp/ob-haskell.el b/lisp/ob-haskell.el index 6f0fbcd..4ff40cf 100644 --- a/lisp/ob-haskell.el +++ b/lisp/ob-haskell.el @@ -149,7 +149,7 @@ specifying a variable of the same value." (defvar org-src-preserve-indentation) (declare-function org-export-to-file "ox" (backend file - &optional subtreep visible-only body-only ext-plist)) + &optional async subtreep visible-only body-only ext-plist)) (defun org-babel-haskell-export-to-lhs (&optional arg) "Export to a .lhs file with all haskell code blocks escaped. When called with a prefix argument the resulting diff --git a/lisp/ox-ascii.el b/lisp/ox-ascii.el index 4080d46..74a7c64 100644 --- a/lisp/ox-ascii.el +++ b/lisp/ox-ascii.el @@ -1901,23 +1901,8 @@ Export is done in a buffer named \"*Org ASCII Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org ASCII Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (text-mode) - (org-export-add-to-stack (current-buffer) 'ascii))) - `(org-export-as 'ascii ,subtreep ,visible-only ,body-only - ',ext-plist)) - (let ((outbuf (org-export-to-buffer - 'ascii "*Org ASCII Export*" - subtreep visible-only body-only ext-plist))) - (with-current-buffer outbuf (text-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'ascii "*Org ASCII Export*" + async subtreep visible-only body-only ext-plist (lambda () (text-mode)))) ;;;###autoload (defun org-ascii-export-to-ascii @@ -1949,15 +1934,9 @@ file-local settings. Return output file's name." (interactive) - (let ((outfile (org-export-output-file-name ".txt" subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'ascii)) - `(expand-file-name - (org-export-to-file - 'ascii ,outfile ,subtreep ,visible-only ,body-only ',ext-plist))) - (org-export-to-file - 'ascii outfile subtreep visible-only body-only ext-plist)))) + (let ((file (org-export-output-file-name ".txt" subtreep))) + (org-export-to-file 'ascii file + async subtreep visible-only body-only ext-plist))) ;;;###autoload (defun org-ascii-publish-to-ascii (plist filename pub-dir) diff --git a/lisp/ox-beamer.el b/lisp/ox-beamer.el index 5ca44af..8ad94d1 100644 --- a/lisp/ox-beamer.el +++ b/lisp/ox-beamer.el @@ -1063,23 +1063,8 @@ Export is done in a buffer named \"*Org BEAMER Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org BEAMER Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (LaTeX-mode) - (org-export-add-to-stack (current-buffer) 'beamer))) - `(org-export-as 'beamer ,subtreep ,visible-only ,body-only - ',ext-plist)) - (let ((outbuf (org-export-to-buffer - 'beamer "*Org BEAMER Export*" - subtreep visible-only body-only ext-plist))) - (with-current-buffer outbuf (LaTeX-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'beamer "*Org BEAMER Export*" + async subtreep visible-only body-only ext-plist (lambda () (LaTeX-mode)))) ;;;###autoload (defun org-beamer-export-to-latex @@ -1111,16 +1096,9 @@ file-local settings. Return output file's name." (interactive) - (let ((outfile (org-export-output-file-name ".tex" subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'beamer)) - `(expand-file-name - (org-export-to-file - 'beamer ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist))) - (org-export-to-file - 'beamer outfile subtreep visible-only body-only ext-plist)))) + (let ((file (org-export-output-file-name ".tex" subtreep))) + (org-export-to-file 'beamer file + async subtreep visible-only body-only ext-plist))) ;;;###autoload (defun org-beamer-export-to-pdf @@ -1152,18 +1130,10 @@ file-local settings. Return PDF file's name." (interactive) - (if async - (let ((outfile (org-export-output-file-name ".tex" subtreep))) - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'beamer)) - `(expand-file-name - (org-latex-compile - (org-export-to-file - 'beamer ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist))))) - (org-latex-compile - (org-beamer-export-to-latex - nil subtreep visible-only body-only ext-plist)))) + (let ((file (org-export-output-file-name ".tex" subtreep))) + (org-export-to-file 'beamer file + async subtreep visible-only body-only ext-plist + (lambda (file) (org-latex-compile file))))) ;;;###autoload (defun org-beamer-select-environment () diff --git a/lisp/ox-html.el b/lisp/ox-html.el index 2522f63..5fd1865 100644 --- a/lisp/ox-html.el +++ b/lisp/ox-html.el @@ -3336,23 +3336,9 @@ Export is done in a buffer named \"*Org HTML Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org HTML Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (set-auto-mode t) - (org-export-add-to-stack (current-buffer) 'html))) - `(org-export-as 'html ,subtreep ,visible-only ,body-only ',ext-plist)) - (let ((outbuf (org-export-to-buffer - 'html "*Org HTML Export*" - subtreep visible-only body-only ext-plist))) - ;; Set major mode. - (with-current-buffer outbuf (set-auto-mode t)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'html "*Org HTML Export*" + async subtreep visible-only body-only ext-plist + (lambda () (set-auto-mode t)))) ;;;###autoload (defun org-html-convert-region-to-html () @@ -3396,16 +3382,8 @@ Return output file's name." (let* ((extension (concat "." org-html-extension)) (file (org-export-output-file-name extension subtreep)) (org-export-coding-system org-html-coding-system)) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'html)) - (let ((org-export-coding-system org-html-coding-system)) - `(expand-file-name - (org-export-to-file - 'html ,file ,subtreep ,visible-only ,body-only ',ext-plist)))) - (let ((org-export-coding-system org-html-coding-system)) - (org-export-to-file - 'html file subtreep visible-only body-only ext-plist))))) + (org-export-to-file 'html file + async subtreep visible-only body-only ext-plist))) ;;;###autoload (defun org-html-publish-to-html (plist filename pub-dir) diff --git a/lisp/ox-icalendar.el b/lisp/ox-icalendar.el index c6ab295..612fd79 100644 --- a/lisp/ox-icalendar.el +++ b/lisp/ox-icalendar.el @@ -826,21 +826,10 @@ Return ICS file name." ;; Export part. Since this back-end is backed up by `ascii', ensure ;; links will not be collected at the end of sections. (let ((outfile (org-export-output-file-name ".ics" subtreep))) - (if async - (org-export-async-start - (lambda (f) - (org-export-add-to-stack f 'icalendar) - (run-hook-with-args 'org-icalendar-after-save-hook f)) - `(let ((org-ascii-links-to-notes nil)) - (expand-file-name - (org-export-to-file - 'icalendar ,outfile ,subtreep ,visible-only ,body-only - '(:ascii-charset utf-8))))) - (let ((org-ascii-links-to-notes nil)) - (org-export-to-file 'icalendar outfile subtreep visible-only body-only - '(:ascii-charset utf-8))) - (run-hook-with-args 'org-icalendar-after-save-hook outfile) - outfile))) + (org-export-to-file 'icalendar outfile + async subtreep visible-only body-only '(:ascii-charset utf-8) + (lambda (file) + (run-hook-with-args 'org-icalendar-after-save-hook file) nil)))) ;;;###autoload (defun org-icalendar-export-agenda-files (&optional async) diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el index 943ea95..e66c717 100644 --- a/lisp/ox-latex.el +++ b/lisp/ox-latex.el @@ -2719,23 +2719,8 @@ Export is done in a buffer named \"*Org LATEX Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org LATEX Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (LaTeX-mode) - (org-export-add-to-stack (current-buffer) 'latex))) - `(org-export-as 'latex ,subtreep ,visible-only ,body-only - ',ext-plist)) - (let ((outbuf - (org-export-to-buffer 'latex "*Org LATEX Export*" - subtreep visible-only body-only ext-plist))) - (with-current-buffer outbuf (LaTeX-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'latex "*Org LATEX Export*" + async subtreep visible-only body-only ext-plist (lambda () (LaTeX-mode)))) ;;;###autoload (defun org-latex-convert-region-to-latex () @@ -2772,19 +2757,11 @@ between \"\\begin{document}\" and \"\\end{document}\". EXT-PLIST, when provided, is a property list with external parameters overriding Org default settings, but still inferior to -file-local settings. - -Return output file's name." +file-local settings." (interactive) (let ((outfile (org-export-output-file-name ".tex" subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'latex)) - `(expand-file-name - (org-export-to-file - 'latex ,outfile ,subtreep ,visible-only ,body-only ',ext-plist))) - (org-export-to-file - 'latex outfile subtreep visible-only body-only ext-plist)))) + (org-export-to-file 'latex outfile + async subtreep visible-only body-only ext-plist))) ;;;###autoload (defun org-latex-export-to-pdf @@ -2816,18 +2793,10 @@ file-local settings. Return PDF file's name." (interactive) - (if async - (let ((outfile (org-export-output-file-name ".tex" subtreep))) - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'latex)) - `(expand-file-name - (org-latex-compile - (org-export-to-file - 'latex ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist))))) - (org-latex-compile - (org-latex-export-to-latex - nil subtreep visible-only body-only ext-plist)))) + (let ((outfile (org-export-output-file-name ".tex" subtreep))) + (org-export-to-file 'latex outfile + async subtreep visible-only body-only ext-plist + (lambda (file) (org-latex-compile file))))) (defun org-latex-compile (texfile &optional snippet) "Compile a TeX file. diff --git a/lisp/ox-man.el b/lisp/ox-man.el index b99a464..a160e4c 100644 --- a/lisp/ox-man.el +++ b/lisp/ox-man.el @@ -1144,14 +1144,8 @@ file-local settings. Return output file's name." (interactive) (let ((outfile (org-export-output-file-name ".man" subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'man)) - `(expand-file-name - (org-export-to-file - 'man ,outfile ,subtreep ,visible-only ,body-only ',ext-plist))) - (org-export-to-file - 'man outfile subtreep visible-only body-only ext-plist)))) + (org-export-to-file 'man outfile + async subtreep visible-only body-only ext-plist))) (defun org-man-export-to-pdf (&optional async subtreep visible-only body-only ext-plist) @@ -1182,17 +1176,10 @@ file-local settings. Return PDF file's name." (interactive) - (if async - (let ((outfile (org-export-output-file-name ".man" subtreep))) - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'man)) - `(expand-file-name - (org-man-compile - (org-export-to-file - 'man ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist))))) - (org-man-compile - (org-man-export-to-man nil subtreep visible-only body-only ext-plist)))) + (let ((outfile (org-export-output-file-name ".man" subtreep))) + (org-export-to-file 'man outfile + async subtreep visible-only body-only ext-plist + (lambda (file) (org-latex-compile file))))) (defun org-man-compile (file) "Compile a Groff file. diff --git a/lisp/ox-md.el b/lisp/ox-md.el index 52ed42b..f7e4875 100644 --- a/lisp/ox-md.el +++ b/lisp/ox-md.el @@ -438,21 +438,8 @@ Export is done in a buffer named \"*Org MD Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org MD Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (text-mode) - (org-export-add-to-stack (current-buffer) 'md))) - `(org-export-as 'md ,subtreep ,visible-only)) - (let ((outbuf (org-export-to-buffer - 'md "*Org MD Export*" subtreep visible-only))) - (with-current-buffer outbuf (text-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'md "*Org MD Export*" + async subtreep visible-only nil nil (lambda () (text-mode)))) ;;;###autoload (defun org-md-convert-region-to-md () @@ -487,12 +474,7 @@ contents of hidden elements. Return output file's name." (interactive) (let ((outfile (org-export-output-file-name ".md" subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'md)) - `(expand-file-name - (org-export-to-file 'md ,outfile ,subtreep ,visible-only))) - (org-export-to-file 'md outfile subtreep visible-only)))) + (org-export-to-file 'md outfile async subtreep visible-only))) (provide 'ox-md) diff --git a/lisp/ox-odt.el b/lisp/ox-odt.el index 0b7a653..ae9e473 100644 --- a/lisp/ox-odt.el +++ b/lisp/ox-odt.el @@ -4255,9 +4255,12 @@ Return output file's name." (require 'nxml-mode) (let ((nxml-auto-insert-xml-declaration-flag nil)) (find-file-noselect - (concat org-odt-zip-dir "content.xml") t))))) - (org-export-to-buffer - 'odt out-buf ,subtreep ,visible-only nil ',ext-plist)))))) + (concat org-odt-zip-dir "content.xml") t)))) + (output (org-export-as + 'odt ,subtreep ,visible-only nil ,ext-plist))) + (with-current-buffer out-buf + (erase-buffer) + (insert output))))))) (org-odt--export-wrap outfile (let* ((org-odt-embedded-images-count 0) @@ -4268,13 +4271,13 @@ Return output file's name." ;; styles. (hfy-user-sheet-assoc nil)) ;; Initialize content.xml and kick-off the export process. - (let ((out-buf (progn + (let ((output (org-export-as 'odt subtreep visible-only nil ext-plist)) + (out-buf (progn (require 'nxml-mode) (let ((nxml-auto-insert-xml-declaration-flag nil)) (find-file-noselect (concat org-odt-zip-dir "content.xml") t))))) - (org-export-to-buffer - 'odt out-buf subtreep visible-only nil ext-plist))))))) + (with-current-buffer out-buf (erase-buffer) (insert output)))))))) ;;;; Convert between OpenDocument and other formats diff --git a/lisp/ox-org.el b/lisp/ox-org.el index 7539317..0d703e2 100644 --- a/lisp/ox-org.el +++ b/lisp/ox-org.el @@ -172,22 +172,8 @@ Export is done in a buffer named \"*Org ORG Export*\", which will be displayed when `org-export-show-temporary-export-buffer' is non-nil." (interactive) - (if async - (org-export-async-start - (lambda (output) - (with-current-buffer (get-buffer-create "*Org ORG Export*") - (erase-buffer) - (insert output) - (goto-char (point-min)) - (org-mode) - (org-export-add-to-stack (current-buffer) 'org))) - `(org-export-as 'org ,subtreep ,visible-only nil ',ext-plist)) - (let ((outbuf - (org-export-to-buffer - 'org "*Org ORG Export*" subtreep visible-only nil ext-plist))) - (with-current-buffer outbuf (org-mode)) - (when org-export-show-temporary-export-buffer - (switch-to-buffer-other-window outbuf))))) + (org-export-to-buffer 'org "*Org ORG Export*" + async subtreep visible-only ext-plist (lambda () (org-mode)))) ;;;###autoload (defun org-org-export-to-org (&optional async subtreep visible-only ext-plist) @@ -216,13 +202,8 @@ file-local settings. Return output file name." (interactive) (let ((outfile (org-export-output-file-name ".org" subtreep))) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'org)) - `(expand-file-name - (org-export-to-file - 'org ,outfile ,subtreep ,visible-only nil ',ext-plist))) - (org-export-to-file 'org outfile subtreep visible-only nil ext-plist)))) + (org-export-to-file 'org outfile + async subtreep visible-only nil ext-plist))) ;;;###autoload (defun org-org-publish-to-org (plist filename pub-dir) diff --git a/lisp/ox-publish.el b/lisp/ox-publish.el index d5f4dfe..db0ebae 100644 --- a/lisp/ox-publish.el +++ b/lisp/ox-publish.el @@ -572,19 +572,19 @@ Return output file name." (let ((output-file (org-export-output-file-name extension nil pub-dir)) (body-p (plist-get plist :body-only))) - (org-export-to-file - backend output-file nil nil body-p - ;; Add `org-publish-collect-numbering' and - ;; `org-publish-collect-index' to final output - ;; filters. The latter isn't dependent on - ;; `:makeindex', since we want to keep it up-to-date - ;; in cache anyway. - (org-combine-plists - plist - `(:filter-final-output - ,(cons 'org-publish-collect-numbering - (cons 'org-publish-collect-index - (plist-get plist :filter-final-output)))))))) + (org-export-to-file backend output-file + nil nil nil body-p + ;; Add `org-publish-collect-numbering' and + ;; `org-publish-collect-index' to final output + ;; filters. The latter isn't dependent on + ;; `:makeindex', since we want to keep it up-to-date + ;; in cache anyway. + (org-combine-plists + plist + `(:filter-final-output + ,(cons 'org-publish-collect-numbering + (cons 'org-publish-collect-index + (plist-get plist :filter-final-output)))))))) ;; Remove opened buffer in the process. (unless visitingp (kill-buffer work-buffer))))) diff --git a/lisp/ox-texinfo.el b/lisp/ox-texinfo.el index ec542e6..30da39d 100644 --- a/lisp/ox-texinfo.el +++ b/lisp/ox-texinfo.el @@ -1710,18 +1710,9 @@ file-local settings. Return output file's name." (interactive) (let ((outfile (org-export-output-file-name ".texi" subtreep)) - (org-export-coding-system org-texinfo-coding-system)) - (if async - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'texinfo)) - (let ((org-export-coding-system org-texinfo-coding-system)) - `(expand-file-name - (org-export-to-file - 'texinfo ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist)))) - (let ((org-export-coding-system org-texinfo-coding-system)) - (org-export-to-file - 'texinfo outfile subtreep visible-only body-only ext-plist))))) + (org-export-coding-system ',org-texinfo-coding-system)) + (org-export-to-file 'texinfo outfile + async subtreep visible-only body-only ext-plist))) (defun org-texinfo-export-to-info (&optional async subtreep visible-only body-only ext-plist) @@ -1755,21 +1746,11 @@ directory. Return INFO file's name." (interactive) - (if async - (let ((outfile (org-export-output-file-name ".texi" subtreep)) - (org-export-coding-system org-texinfo-coding-system)) - (org-export-async-start - (lambda (f) (org-export-add-to-stack f 'texinfo)) - (let ((org-export-coding-system org-texinfo-coding-system)) - `(expand-file-name - (org-texinfo-compile - (org-export-to-file - 'texinfo ,outfile ,subtreep ,visible-only ,body-only - ',ext-plist)))))) - (org-texinfo-compile - (let ((org-export-coding-system org-texinfo-coding-system)) - (org-texinfo-export-to-texinfo - nil subtreep visible-only body-only ext-plist))))) + (let ((outfile (org-export-output-file-name ".texi" subtreep)) + (org-export-coding-system ',org-texinfo-coding-system)) + (org-export-to-file 'texinfo outfile + async subtreep visible-only body-only ext-plist + (lambda (file) (org-texinfo-compile file))))) ;;;###autoload (defun org-texinfo-publish-to-texinfo (plist filename pub-dir) diff --git a/testing/lisp/test-ob-exp.el b/testing/lisp/test-ob-exp.el index d2541d3..db7812b 100644 --- a/testing/lisp/test-ob-exp.el +++ b/testing/lisp/test-ob-exp.el @@ -57,7 +57,7 @@ Current buffer is a copy of the original buffer." (require 'ox-html) (let ((name (generate-new-buffer-name "*Org HTML Export*"))) (org-test-in-example-file nil - (org-export-to-buffer 'html name nil nil t)) + (org-export-to-buffer 'html name nil nil nil t)) ;; Should create a HTML buffer. (should (buffer-live-p (get-buffer name))) ;; Should contain the content of the buffer. |