Browse Source

Merge pull request #43 from tychoish/rst-fixes

Clean up Restructured Text support.
Brit Butler 11 years ago
parent
commit
f9348807f3
1 changed files with 9 additions and 3 deletions
  1. 9 3
      plugins/rst.lisp

+ 9 - 3
plugins/rst.lisp

4
 (defpackage :coleslaw-rst
4
 (defpackage :coleslaw-rst
5
   (:use :cl)
5
   (:use :cl)
6
   (:import-from :coleslaw #:render-content)
6
   (:import-from :coleslaw #:render-content)
7
-  (:import-from :docutils #:read-rst
8
-                          #:write-html)
7
+  (:import-from :docutils #:read-rst #:write-part #:register-settings-spec
8
+                          #:visit-node #:write-document)
9
+  (:import-from :docutils.writer.html #:html-writer #:write-part)
9
   (:export #:enable))
10
   (:export #:enable))
10
 
11
 
11
 (in-package :coleslaw-rst)
12
 (in-package :coleslaw-rst)
12
 
13
 
13
 (defmethod render-content (text (format (eql :rst)))
14
 (defmethod render-content (text (format (eql :rst)))
15
+  (register-settings-spec '((:generator nil)
16
+                            (:datestamp nil)))
14
   (with-output-to-string (str)
17
   (with-output-to-string (str)
15
-    (write-html str (read-rst text))))
18
+    (let ((writer (make-instance 'html-writer))
19
+          (document (read-rst text)))
20
+      (visit-node writer document)
21
+      (write-document writer document str))))
16
 
22
 
17
 (defun enable ())
23
 (defun enable ())