]> code.delx.au - gnu-emacs-elpa/blobdiff - doc/yas-doc-helper.el
Apply changes from GNU ELPA
[gnu-emacs-elpa] / doc / yas-doc-helper.el
index 925e41beecb522eebfc3cd37efcfbbb292e39dce..f4cd49bfdf98ea5381d65e8d181edd5c0770efe5 100755 (executable)
@@ -1,6 +1,6 @@
 ;;; yas-doc-helper.el --- Help generate documentation for YASnippet
 
-;; Copyright (C) 2012  João Távora
+;; Copyright (C) 2012, 2013  Free Software Foundation, Inc.
 
 ;; Author: João Távora <joaotavora@gmail.com>
 ;; Keywords: convenience
 (eval-when-compile
   (require 'cl))
 (require 'org)
-(require 'org-publish)
+(or (require 'org-publish nil t)
+    (require 'ox-publish))
 (require 'yasnippet) ; docstrings must be loaded
 
+(defun yas--org-raw-html (tag content)
+  ;; in version 8.0 org-mode changed the export syntax, see
+  ;; http://orgmode.org/worg/org-8.0.html#sec-8-1
+  (format (if (version< org-version "8.0.0")
+              "@<%s>%s@</%s>"                ; old: @<tag>
+            "@@html:<%s>@@%s@@html:</%s>@@") ; new: @@html:<tag>@@
+          tag content tag))
+
 (defun yas--document-symbol (symbol level)
   (flet ((concat-lines (&rest lines)
                        (mapconcat #'identity lines "\n")))
@@ -71,7 +80,8 @@
                              (prefix (downcase match1))
                              (suffix (match-string 2 match))
                              (fmt (cond
-                                   ((member prefix args) "@<code>%s@</code>")
+                                   ((member prefix args)
+                                    (yas--org-raw-html "code" "%s"))
                                    ((null suffix) "/%s/"))))
                         (if fmt (format fmt prefix)
                           match1)))
                     (buffer-string))
                   (princ yas--version (current-buffer)))))
        (proj-plist
-        (list
-         :base-directory dir :publishing-directory dir
-         :html-preamble
-         (with-temp-buffer
-           (insert-file-contents (expand-file-name "nav-menu.html.inc" dir))
-           (buffer-string))
-         :html-postamble
-         (concat "<hr><p class='creator'>Generated by %c on %d from "
-                 rev "</p>\n"
-                 "<p class='xhtml-validation'>%v</p>\n")))
+        `(,@(when (fboundp 'org-html-publish-to-html)
+              '(:publishing-function org-html-publish-to-html))
+          :base-directory ,dir :publishing-directory ,dir
+          :html-preamble
+          ,(with-temp-buffer
+             (insert-file-contents (expand-file-name "nav-menu.html.inc" dir))
+             (buffer-string))
+          :html-postamble
+          ,(concat "<hr><p class='creator'>Generated by %c on %d from "
+                   rev "</p>\n"
+                   "<p class='xhtml-validation'>%v</p>\n")))
        (project (assoc "yasnippet" org-publish-project-alist)))
   (if project
       (setcdr project proj-plist)
 
 
 (provide 'yas-doc-helper)
-;;; yas-doc-helper.el ends here
 ;; Local Variables:
+;; indent-tabs-mode: nil
 ;; coding: utf-8
 ;; End:
+;;; yas-doc-helper.el ends here