SMOLNET PORTAL home about changes
iAdd support for differents converters - cl-yag - Common Lisp Yet Another website Generator	Err	bitreich.org	70
hgit clone git://bitreich.org/cl-yag/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/cl-yag/	URL:git://bitreich.org/cl-yag/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/cl-yag/	bitreich.org	70
1Log	/scm/cl-yag/log.gph	bitreich.org	70
1Files	/scm/cl-yag/files.gph	bitreich.org	70
1Refs	/scm/cl-yag/refs.gph	bitreich.org	70
1Tags	/scm/cl-yag/tag	bitreich.org	70
1README	/scm/cl-yag/file/README.md.gph	bitreich.org	70
1LICENSE	/scm/cl-yag/file/LICENSE.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit a8dfa314e9911295a3c52318d4702e4761093e2f	/scm/cl-yag/commit/a8dfa314e9911295a3c52318d4702e4761093e2f.gph	bitreich.org	70
1parent 5e3abb608d7259d1c4acdd5be13a711fe4b49160	/scm/cl-yag/commit/5e3abb608d7259d1c4acdd5be13a711fe4b49160.gph	bitreich.org	70
hAuthor: Solene Rapenne <solene@perso.pw>	URL:mailto:solene@perso.pw	bitreich.org	70
iDate:   Tue, 27 Aug 2019 09:10:20 +0200	Err	bitreich.org	70
i	Err	bitreich.org	70
iAdd support for differents converters	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  M generator.lisp                      |      45 +++++++++++++++++---------------	Err	bitreich.org	70
i	Err	bitreich.org	70
i1 file changed, 24 insertions(+), 21 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/generator.lisp b/generator.lisp	/scm/cl-yag/file/generator.lisp.gph	bitreich.org	70
i@@ -129,24 +129,27 @@	Err	bitreich.org	70
i 	Err	bitreich.org	70
i ;; generate the html file from the source file	Err	bitreich.org	70
i ;; using the converter associated with the post	Err	bitreich.org	70
i-(defun use-converter-to-html(article)	Err	bitreich.org	70
i-  (with-converter	Err	bitreich.org	70
i-   (let ((output (converter-command converter-object)))	Err	bitreich.org	70
i-     (let* ((src-file (format nil "~a~a" (article-id article) (converter-extension converter-object)))	Err	bitreich.org	70
i-           (dst-file (format nil "temp/data/~a.html" (article-id article) ))	Err	bitreich.org	70
i-           (full-src-file (format nil "data/~a" src-file)))	Err	bitreich.org	70
i-       ;; skip generating if the destination exists	Err	bitreich.org	70
i-       ;; and is more recent than source	Err	bitreich.org	70
i-       (unless (and	Err	bitreich.org	70
i-                (probe-file dst-file)	Err	bitreich.org	70
i-                (>=	Err	bitreich.org	70
i-                 (file-write-date dst-file)	Err	bitreich.org	70
i-                 (file-write-date full-src-file)))	Err	bitreich.org	70
i-         (ensure-directories-exist "temp/data/")	Err	bitreich.org	70
i-         (template "%IN" src-file)	Err	bitreich.org	70
i-         (template "%OUT" dst-file)	Err	bitreich.org	70
i-         (format t "~a~%" output)	Err	bitreich.org	70
i-         (uiop:run-program output))))))	Err	bitreich.org	70
i+(defun use-converter-to-html(filename &optional (converter-name nil))	Err	bitreich.org	70
i+  (let* ((converter-object (getf *converters*	Err	bitreich.org	70
i+                                 (or converter-name	Err	bitreich.org	70
i+                                     converter-name	Err	bitreich.org	70
i+                                     (getf *config* :default-converter))))	Err	bitreich.org	70
i+         (output           (converter-command converter-object))	Err	bitreich.org	70
i+         (src-file (format nil "~a~a" filename (converter-extension converter-object)))	Err	bitreich.org	70
i+         (dst-file (format nil "temp/data/~a.html" filename ))	Err	bitreich.org	70
i+         (full-src-file (format nil "data/~a" src-file)))	Err	bitreich.org	70
i+      ;; skip generating if the destination exists	Err	bitreich.org	70
i+      ;; and is more recent than source	Err	bitreich.org	70
i+      (unless (and	Err	bitreich.org	70
i+               (probe-file dst-file)	Err	bitreich.org	70
i+               (>=	Err	bitreich.org	70
i+                (file-write-date dst-file)	Err	bitreich.org	70
i+                (file-write-date full-src-file)))	Err	bitreich.org	70
i+        (ensure-directories-exist "temp/data/")	Err	bitreich.org	70
i+        (template "%IN" src-file)	Err	bitreich.org	70
i+        (template "%OUT" dst-file)	Err	bitreich.org	70
i+        (format t "~a~%" output)	Err	bitreich.org	70
i+        (uiop:run-program output))))	Err	bitreich.org	70
i 	Err	bitreich.org	70
i ;; format the date	Err	bitreich.org	70
i (defun date-format(format date)	Err	bitreich.org	70
i@@ -307,9 +310,9 @@	Err	bitreich.org	70
i 	Err	bitreich.org	70
i   ;; produce each article file	Err	bitreich.org	70
i   (loop for article in *articles*	Err	bitreich.org	70
i-        do	Err	bitreich.org	70
i-        ;; use the article's converter to get html code of it	Err	bitreich.org	70
i-        (use-converter-to-html article)	Err	bitreich.org	70
i+     do	Err	bitreich.org	70
i+     ;; use the article's converter to get html code of it	Err	bitreich.org	70
i+       (use-converter-to-html (article-id article) (article-converter article))	Err	bitreich.org	70
i 	Err	bitreich.org	70
i         (generate  (format nil "output/html/~d-~d.html"	Err	bitreich.org	70
i                            (date-format "%Year-%MonthNumber-%DayNumber"	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/cl-yag/commit/a8dfa314e991129...
Content-Typetext/plain; charset=utf-8