1
0
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2024-11-22 07:09:47 +00:00

contrib/lisp/*: Use `org-export-define-*backend' as defuns, not macros

* ox-taskjuggler.el (taskjuggler):
* ox-s5.el (s5):
* ox-rss.el (rss):
* ox-koma-letter.el (koma-letter):
* ox-groff.el (groff):
* ox-freemind.el (freemind):
* ox-deck.el (deck):
* ox-confluence.el (confluence): Use
`org-export-define-backend' or
`org-export-define-derived-backend' as defuns, not macros.
This commit is contained in:
Bastien Guerry 2013-03-19 16:26:30 +01:00
parent a13b19e384
commit 5c63007721
8 changed files with 189 additions and 189 deletions

View File

@ -37,23 +37,23 @@
(require 'ox-ascii)
;; Define the backend itself
(org-export-define-derived-backend confluence ascii
:translate-alist ((bold . org-confluence-bold)
(example-block . org-confluence-example-block)
(fixed-width . org-confluence-fixed-width)
(footnote-definition . org-confluence-empty)
(footnote-reference . org-confluence-empty)
(headline . org-confluence-headline)
(italic . org-confluence-italic)
(link . org-confluence-link)
(section . org-confluence-section)
(src-block . org-confluence-src-block)
(strike-through . org-confluence-strike-through)
(table . org-confluence-table)
(table-cell . org-confluence-table-cell)
(table-row . org-confluence-table-row)
(template . org-confluence-template)
(underline . org-confluence-underline)))
(org-export-define-derived-backend 'confluence 'ascii
:translate-alist '((bold . org-confluence-bold)
(example-block . org-confluence-example-block)
(fixed-width . org-confluence-fixed-width)
(footnote-definition . org-confluence-empty)
(footnote-reference . org-confluence-empty)
(headline . org-confluence-headline)
(italic . org-confluence-italic)
(link . org-confluence-link)
(section . org-confluence-section)
(src-block . org-confluence-src-block)
(strike-through . org-confluence-strike-through)
(table . org-confluence-table)
(table-cell . org-confluence-table-cell)
(table-row . org-confluence-table-row)
(template . org-confluence-template)
(underline . org-confluence-underline)))
;; All the functions we use
(defun org-confluence-bold (bold contents info)

View File

@ -41,34 +41,34 @@
(require 'ox-html)
(eval-when-compile (require 'cl))
(org-export-define-derived-backend deck html
(org-export-define-derived-backend 'deck 'html
:menu-entry
(?d "Export to deck.js HTML Presentation"
((?H "To temporary buffer" org-deck-export-as-html)
(?h "To file" org-deck-export-to-html)
(?o "To file and open"
(lambda (a s v b)
(if a (org-deck-export-to-html t s v b)
(org-open-file (org-deck-export-to-html nil s v b)))))))
'(?d "Export to deck.js HTML Presentation"
((?H "To temporary buffer" org-deck-export-as-html)
(?h "To file" org-deck-export-to-html)
(?o "To file and open"
(lambda (a s v b)
(if a (org-deck-export-to-html t s v b)
(org-open-file (org-deck-export-to-html nil s v b)))))))
:options-alist
((:html-link-home "HTML_LINK_HOME" nil nil)
(:html-link-up "HTML_LINK_UP" nil nil)
(:deck-postamble "DECK_POSTAMBLE" nil org-deck-postamble newline)
(:deck-preamble "DECK_PREAMBLE" nil org-deck-preamble newline)
(:html-head-include-default-style "HTML_INCLUDE_DEFAULT_STYLE" nil nil)
(:html-head-include-scripts "HTML_INCLUDE_SCRIPTS" nil nil)
(:deck-base-url "DECK_BASE_URL" nil org-deck-base-url)
(:deck-theme "DECK_THEME" nil org-deck-theme)
(:deck-transition "DECK_TRANSITION" nil org-deck-transition)
(:deck-include-extensions "DECK_INCLUDE_EXTENSIONS" nil
org-deck-include-extensions split)
(:deck-exclude-extensions "DECK_EXCLUDE_EXTENSIONS" nil
org-deck-exclude-extensions split))
'((:html-link-home "HTML_LINK_HOME" nil nil)
(:html-link-up "HTML_LINK_UP" nil nil)
(:deck-postamble "DECK_POSTAMBLE" nil org-deck-postamble newline)
(:deck-preamble "DECK_PREAMBLE" nil org-deck-preamble newline)
(:html-head-include-default-style "HTML_INCLUDE_DEFAULT_STYLE" nil nil)
(:html-head-include-scripts "HTML_INCLUDE_SCRIPTS" nil nil)
(:deck-base-url "DECK_BASE_URL" nil org-deck-base-url)
(:deck-theme "DECK_THEME" nil org-deck-theme)
(:deck-transition "DECK_TRANSITION" nil org-deck-transition)
(:deck-include-extensions "DECK_INCLUDE_EXTENSIONS" nil
org-deck-include-extensions split)
(:deck-exclude-extensions "DECK_EXCLUDE_EXTENSIONS" nil
org-deck-exclude-extensions split))
:translate-alist
((headline . org-deck-headline)
(inner-template . org-deck-inner-template)
(item . org-deck-item)
(template . org-deck-template)))
'((headline . org-deck-headline)
(inner-template . org-deck-inner-template)
(item . org-deck-item)
(template . org-deck-template)))
(defgroup org-export-deck nil
"Options for exporting Org mode files to deck.js HTML Presentations."

View File

@ -42,22 +42,22 @@
;;; Define Back-End
(org-export-define-derived-backend freemind html
(org-export-define-derived-backend 'freemind 'html
:export-block "FREEMIND"
:menu-entry
(?f "Export to Freemind Mindmap"
((?f "As Freemind Mindmap file" org-freemind-export-to-freemind)
(?o "As Freemind Mindmap file and open"
(lambda (a s v b)
(if a (org-freemind-export-to-freemind t s v b)
(org-open-file (org-freemind-export-to-freemind nil s v b)))))))
:translate-alist ((headline . org-freemind-headline)
(template . org-freemind-template)
(inner-template . org-freemind-inner-template)
(section . org-freemind-section)
(entity . org-freemind-entity))
:filters-alist ((:filter-options . org-freemind-options-function)
(:filter-final-output . org-freemind-final-function)))
'(?f "Export to Freemind Mindmap"
((?f "As Freemind Mindmap file" org-freemind-export-to-freemind)
(?o "As Freemind Mindmap file and open"
(lambda (a s v b)
(if a (org-freemind-export-to-freemind t s v b)
(org-open-file (org-freemind-export-to-freemind nil s v b)))))))
:translate-alist '((headline . org-freemind-headline)
(template . org-freemind-template)
(inner-template . org-freemind-inner-template)
(section . org-freemind-section)
(entity . org-freemind-entity))
:filters-alist '((:filter-options . org-freemind-options-function)
(:filter-final-output . org-freemind-final-function)))

View File

@ -45,68 +45,68 @@
;;; Define Back-End
(org-export-define-backend groff
((bold . org-groff-bold)
(center-block . org-groff-center-block)
(clock . org-groff-clock)
(code . org-groff-code)
(comment . (lambda (&rest args) ""))
(comment-block . (lambda (&rest args) ""))
(drawer . org-groff-drawer)
(dynamic-block . org-groff-dynamic-block)
(entity . org-groff-entity)
(example-block . org-groff-example-block)
(export-block . org-groff-export-block)
(export-snippet . org-groff-export-snippet)
(fixed-width . org-groff-fixed-width)
(footnote-definition . org-groff-footnote-definition)
(footnote-reference . org-groff-footnote-reference)
(headline . org-groff-headline)
(horizontal-rule . org-groff-horizontal-rule)
(inline-src-block . org-groff-inline-src-block)
(inlinetask . org-groff-inlinetask)
(italic . org-groff-italic)
(item . org-groff-item)
(keyword . org-groff-keyword)
(line-break . org-groff-line-break)
(link . org-groff-link)
(paragraph . org-groff-paragraph)
(plain-list . org-groff-plain-list)
(plain-text . org-groff-plain-text)
(planning . org-groff-planning)
(property-drawer . (lambda (&rest args) ""))
(quote-block . org-groff-quote-block)
(quote-section . org-groff-quote-section)
(radio-target . org-groff-radio-target)
(section . org-groff-section)
(special-block . org-groff-special-block)
(src-block . org-groff-src-block)
(statistics-cookie . org-groff-statistics-cookie)
(strike-through . org-groff-strike-through)
(subscript . org-groff-subscript)
(superscript . org-groff-superscript)
(table . org-groff-table)
(table-cell . org-groff-table-cell)
(table-row . org-groff-table-row)
(target . org-groff-target)
(template . org-groff-template)
(timestamp . org-groff-timestamp)
(underline . org-groff-underline)
(verbatim . org-groff-verbatim)
(verse-block . org-groff-verse-block))
(org-export-define-backend 'groff
'((bold . org-groff-bold)
(center-block . org-groff-center-block)
(clock . org-groff-clock)
(code . org-groff-code)
(comment . (lambda (&rest args) ""))
(comment-block . (lambda (&rest args) ""))
(drawer . org-groff-drawer)
(dynamic-block . org-groff-dynamic-block)
(entity . org-groff-entity)
(example-block . org-groff-example-block)
(export-block . org-groff-export-block)
(export-snippet . org-groff-export-snippet)
(fixed-width . org-groff-fixed-width)
(footnote-definition . org-groff-footnote-definition)
(footnote-reference . org-groff-footnote-reference)
(headline . org-groff-headline)
(horizontal-rule . org-groff-horizontal-rule)
(inline-src-block . org-groff-inline-src-block)
(inlinetask . org-groff-inlinetask)
(italic . org-groff-italic)
(item . org-groff-item)
(keyword . org-groff-keyword)
(line-break . org-groff-line-break)
(link . org-groff-link)
(paragraph . org-groff-paragraph)
(plain-list . org-groff-plain-list)
(plain-text . org-groff-plain-text)
(planning . org-groff-planning)
(property-drawer . (lambda (&rest args) ""))
(quote-block . org-groff-quote-block)
(quote-section . org-groff-quote-section)
(radio-target . org-groff-radio-target)
(section . org-groff-section)
(special-block . org-groff-special-block)
(src-block . org-groff-src-block)
(statistics-cookie . org-groff-statistics-cookie)
(strike-through . org-groff-strike-through)
(subscript . org-groff-subscript)
(superscript . org-groff-superscript)
(table . org-groff-table)
(table-cell . org-groff-table-cell)
(table-row . org-groff-table-row)
(target . org-groff-target)
(template . org-groff-template)
(timestamp . org-groff-timestamp)
(underline . org-groff-underline)
(verbatim . org-groff-verbatim)
(verse-block . org-groff-verse-block))
:export-block "GROFF"
:menu-entry
(?g "Export to GROFF"
((?g "As GROFF file" org-groff-export-to-groff)
(?p "As PDF file" org-groff-export-to-pdf)
(?o "As PDF file and open"
(lambda (a s v b)
(if a (org-groff-export-to-pdf t s v b)
(org-open-file (org-groff-export-to-pdf nil s v b)))))))
'(?g "Export to GROFF"
((?g "As GROFF file" org-groff-export-to-groff)
(?p "As PDF file" org-groff-export-to-pdf)
(?o "As PDF file and open"
(lambda (a s v b)
(if a (org-groff-export-to-pdf t s v b)
(org-open-file (org-groff-export-to-pdf nil s v b)))))))
:options-alist
((:groff-class "GROFF_CLASS" nil org-groff-default-class t)
(:groff-class-options "GROFF_CLASS_OPTIONS" nil nil t)
(:groff-header-extra "GROFF_HEADER" nil nil newline)))
'((:groff-class "GROFF_CLASS" nil org-groff-default-class t)
(:groff-class-options "GROFF_CLASS_OPTIONS" nil nil t)
(:groff-header-extra "GROFF_HEADER" nil nil newline)))

View File

@ -108,28 +108,28 @@
;;; Define Back-End
(org-export-define-derived-backend koma-letter latex
(org-export-define-derived-backend 'koma-letter 'latex
:options-alist
((:closing "CLOSING" nil org-koma-letter-closing)
(:from-address "FROM_ADDRESS" nil org-koma-letter-from-address newline)
(:lco "LCO" nil org-koma-letter-class-option-file)
(:opening "OPENING" nil org-koma-letter-opening)
(:phone-number "PHONE_NUMBER" nil org-koma-letter-phone-number)
(:signature "SIGNATURE" nil nil newline)
(:to-address "TO_ADDRESS" nil nil newline))
:translate-alist ((export-block . org-koma-letter-export-block)
(export-snippet . org-koma-letter-export-snippet)
(keyword . org-koma-letter-keyword)
(template . org-koma-letter-template))
'((:closing "CLOSING" nil org-koma-letter-closing)
(:from-address "FROM_ADDRESS" nil org-koma-letter-from-address newline)
(:lco "LCO" nil org-koma-letter-class-option-file)
(:opening "OPENING" nil org-koma-letter-opening)
(:phone-number "PHONE_NUMBER" nil org-koma-letter-phone-number)
(:signature "SIGNATURE" nil nil newline)
(:to-address "TO_ADDRESS" nil nil newline))
:translate-alist '((export-block . org-koma-letter-export-block)
(export-snippet . org-koma-letter-export-snippet)
(keyword . org-koma-letter-keyword)
(template . org-koma-letter-template))
:menu-entry
(?k "Export with KOMA Scrlttr2"
((?K "As LaTeX buffer" org-koma-letter-export-as-latex)
(?k "As LaTeX file" org-koma-letter-export-to-latex)
(?p "As PDF file" org-koma-letter-export-to-pdf)
(?O "As PDF file and open"
(lambda (a s v b)
(if a (org-koma-letter-export-to-pdf t s v b)
(org-open-file (org-koma-letter-export-to-pdf nil s v b))))))))
'(?k "Export with KOMA Scrlttr2"
((?K "As LaTeX buffer" org-koma-letter-export-as-latex)
(?k "As LaTeX file" org-koma-letter-export-to-latex)
(?p "As PDF file" org-koma-letter-export-to-pdf)
(?O "As PDF file and open"
(lambda (a s v b)
(if a (org-koma-letter-export-to-pdf t s v b)
(org-open-file (org-koma-letter-export-to-pdf nil s v b))))))))
;;; Transcode Functions

View File

@ -101,29 +101,29 @@ When nil, Org will create ids using `org-icalendar-create-uid'."
;;; Define backend
(org-export-define-derived-backend rss html
(org-export-define-derived-backend 'rss 'html
:menu-entry
(?r "Export to RSS"
((?R "As RSS buffer"
(lambda (a s v b) (org-rss-export-as-rss a s v)))
(?r "As RSS file" (lambda (a s v b) (org-rss-export-to-rss a s v)))
(?o "As RSS file and open"
(lambda (a s v b)
(if a (org-rss-export-to-rss t s v)
(org-open-file (org-rss-export-to-rss nil s v)))))))
'(?r "Export to RSS"
((?R "As RSS buffer"
(lambda (a s v b) (org-rss-export-as-rss a s v)))
(?r "As RSS file" (lambda (a s v b) (org-rss-export-to-rss a s v)))
(?o "As RSS file and open"
(lambda (a s v b)
(if a (org-rss-export-to-rss t s v)
(org-open-file (org-rss-export-to-rss nil s v)))))))
:options-alist
((:with-toc nil nil nil) ;; Never include HTML's toc
(:rss-extension "RSS_EXTENSION" nil org-rss-extension)
(:rss-image-url "RSS_IMAGE_URL" nil org-rss-image-url)
(:rss-categories nil nil org-rss-categories))
:filters-alist ((:filter-final-output . org-rss-final-function))
:translate-alist ((headline . org-rss-headline)
(comment . (lambda (&rest args) ""))
(comment-block . (lambda (&rest args) ""))
(timestamp . (lambda (&rest args) ""))
(plain-text . org-rss-plain-text)
(section . org-rss-section)
(template . org-rss-template)))
'((:with-toc nil nil nil) ;; Never include HTML's toc
(:rss-extension "RSS_EXTENSION" nil org-rss-extension)
(:rss-image-url "RSS_IMAGE_URL" nil org-rss-image-url)
(:rss-categories nil nil org-rss-categories))
:filters-alist '((:filter-final-output . org-rss-final-function))
:translate-alist '((headline . org-rss-headline)
(comment . (lambda (&rest args) ""))
(comment-block . (lambda (&rest args) ""))
(timestamp . (lambda (&rest args) ""))
(plain-text . org-rss-plain-text)
(section . org-rss-section)
(template . org-rss-template)))
;;; Export functions

View File

@ -50,33 +50,33 @@
(require 'ox-html)
(org-export-define-derived-backend s5 html
(org-export-define-derived-backend 's5 'html
:menu-entry
(?s "Export to S5 HTML Presentation"
((?H "To temporary buffer" org-s5-export-as-html)
(?h "To file" org-s5-export-to-html)
(?o "To file and open"
(lambda (a s v b)
(if a (org-s5-export-to-html t s v b)
(org-open-file (org-s5-export-to-html nil s v b)))))))
'(?s "Export to S5 HTML Presentation"
((?H "To temporary buffer" org-s5-export-as-html)
(?h "To file" org-s5-export-to-html)
(?o "To file and open"
(lambda (a s v b)
(if a (org-s5-export-to-html t s v b)
(org-open-file (org-s5-export-to-html nil s v b)))))))
:options-alist
((:html-link-home "HTML_LINK_HOME" nil nil)
(:html-link-up "HTML_LINK_UP" nil nil)
(:s5-postamble "S5_POSTAMBLE" nil org-s5-postamble newline)
(:s5-preamble "S5_PREAMBLE" nil org-s5-preamble newline)
(:html-head-include-default-style "HTML_INCLUDE_DEFAULT_STYLE" nil nil)
(:html-head-include-scripts "HTML_INCLUDE_SCRIPTS" nil nil)
(:s5-version "S5_VERSION" nil org-s5-version)
(:s5-theme-file "S5_THEME_FILE" nil org-s5-theme-file)
(:s5-ui-url "S5_UI_URL" nil org-s5-ui-url)
(:s5-default-view "S5_DEFAULT_VIEW" nil org-s5-default-view)
(:s5-control-visibility "S5_CONTROL_VISIBILITY" nil
org-s5-control-visibility))
'((:html-link-home "HTML_LINK_HOME" nil nil)
(:html-link-up "HTML_LINK_UP" nil nil)
(:s5-postamble "S5_POSTAMBLE" nil org-s5-postamble newline)
(:s5-preamble "S5_PREAMBLE" nil org-s5-preamble newline)
(:html-head-include-default-style "HTML_INCLUDE_DEFAULT_STYLE" nil nil)
(:html-head-include-scripts "HTML_INCLUDE_SCRIPTS" nil nil)
(:s5-version "S5_VERSION" nil org-s5-version)
(:s5-theme-file "S5_THEME_FILE" nil org-s5-theme-file)
(:s5-ui-url "S5_UI_URL" nil org-s5-ui-url)
(:s5-default-view "S5_DEFAULT_VIEW" nil org-s5-default-view)
(:s5-control-visibility "S5_CONTROL_VISIBILITY" nil
org-s5-control-visibility))
:translate-alist
((headline . org-s5-headline)
(plain-list . org-s5-plain-list)
(inner-template . org-s5-inner-template)
(template . org-s5-template)))
'((headline . org-s5-headline)
(plain-list . org-s5-plain-list)
(inner-template . org-s5-inner-template)
(template . org-s5-template)))
(defgroup org-export-s5 nil
"Options for exporting Org mode files to S5 HTML Presentations."

View File

@ -292,18 +292,18 @@ This hook is run with the name of the file as argument.")
;;; Back-End Definition
(org-export-define-backend taskjuggler
((template . org-taskjuggler-project-plan))
(org-export-define-backend 'taskjuggler
'((template . org-taskjuggler-project-plan))
:menu-entry
(?J "Export to TaskJuggler"
((?j "As TJP file" (lambda (a s v b) (org-taskjuggler-export a s v)))
(?o "As TJP file and open"
(lambda (a s v b)
(if a (org-taskjuggler-export a s v)
(org-taskjuggler-export-and-open s v))))))
'(?J "Export to TaskJuggler"
((?j "As TJP file" (lambda (a s v b) (org-taskjuggler-export a s v)))
(?o "As TJP file and open"
(lambda (a s v b)
(if a (org-taskjuggler-export a s v)
(org-taskjuggler-export-and-open s v))))))
;; This property will be used to store unique ids in communication
;; channel. Ids will be retrieved with `org-taskjuggler-get-id'.
:options-alist ((:taskjuggler-unique-ids nil nil nil)))
:options-alist '((:taskjuggler-unique-ids nil nil nil)))