iarticles.lisp - 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 iarticles.lisp (3537B) Err bitreich.org 70 i--- Err bitreich.org 70 i 1 ;; MIND: The tilde character "~" must be escaped like this '~~' to use it as a literal. Err bitreich.org 70 i 2 Err bitreich.org 70 i 3 Err bitreich.org 70 i 4 ;; Define Your Webpage Err bitreich.org 70 i 5 Err bitreich.org 70 i 6 (defvar *config* Err bitreich.org 70 i 7 (list Err bitreich.org 70 i 8 :webmaster "Your autor name here" Err bitreich.org 70 i 9 :title "Your website's title." Err bitreich.org 70 i 10 :description "Yet another website on the net" Err bitreich.org 70 i 11 :url "https://my.website/~~user/" ;; the trailing slash is mandatory! RSS links will fail without it. Notice the '~~' to produce a literal '~' Err bitreich.org 70 i 12 :rss-item-number 10 ;; limit total amount of items in RSS feed to 10 Err bitreich.org 70 i 13 :date-format "%DayNumber %MonthName %Year" ;; format for date %DayNumber %DayName %MonthNumber %MonthName %Year Err bitreich.org 70 i 14 :default-converter :markdown2 Err bitreich.org 70 i 15 :html t ;; 't' to enable export to a html website / 'nil' to disable Err bitreich.org 70 i 16 :gopher t ;; 't' to enable export to a gopher website / 'nil' to disable Err bitreich.org 70 i 17 :gemini t ;; 't' to enable export to a gemini capsule / 'nil' to disable Err bitreich.org 70 i 18 :gemini-path "gemini://perso.pw/blog/" ;; absolute path of your gemini capsule Err bitreich.org 70 i 19 :gemini-index "index.md" ;; filename of index file Err bitreich.org 70 i 20 :gopher-path "/user" ;; absolute path of your gopher directory Err bitreich.org 70 i 21 :gopher-server "my.website" ;; hostname of the gopher server Err bitreich.org 70 i 22 :gopher-port "70" ;; tcp port of the gopher server, 70 usually Err bitreich.org 70 i 23 :gopher-format "[~d|~a|~a|~a|~a]~%" ;; menu format (geomyidae) Err bitreich.org 70 i 24 :gopher-index "index.gph" ;; menu file (geomyidae) Err bitreich.org 70 i 25 ;; :gopher-format "~d~a ~a ~a ~a~%" ;; menu format (gophernicus and others) Err bitreich.org 70 i 26 ;; :gopher-index "gophermap" ;; menu file (gophernicus and others) Err bitreich.org 70 i 27 )) Err bitreich.org 70 i 28 Err bitreich.org 70 i 29 Err bitreich.org 70 i 30 (converter :name :markdown :extension ".md" :command "peg-markdown -t html -o %OUT data/%IN") Err bitreich.org 70 i 31 (converter :name :markdown2 :extension ".md" :command "multimarkdown -t html -o %OUT data/%IN") Err bitreich.org 70 i 32 (converter :name :org-mode :extension ".org" Err bitreich.org 70 i 33 :command (concatenate 'string Err bitreich.org 70 i 34 "emacs data/%IN --batch --eval '(with-temp-buffer (org-mode) " Err bitreich.org 70 i 35 "(insert-file \"%IN\") (org-html-export-as-html nil nil nil t)" Err bitreich.org 70 i 36 "(princ (buffer-string)))' --kill | tee %OUT")) Err bitreich.org 70 i 37 Err bitreich.org 70 i 38 ;; Define your articles and their display-order on the website below. Err bitreich.org 70 i 39 ;; Display Order is 'lifo', i.e. the top entry in this list gets displayed as the topmost entry. Err bitreich.org 70 i 40 ;; Err bitreich.org 70 i 41 ;; An Example Of A Minimal Definition: Err bitreich.org 70 i 42 ;; (post :id "4" :date "2015-12-31" :title "Happy new year" :tag "news") Err bitreich.org 70 i 43 Err bitreich.org 70 i 44 ;; An Example Of A Definitions With Options: Err bitreich.org 70 i 45 ;; (post :id "4" :date "2015-05-04" :title "The article title" :tag "news" :author "Me" :tiny "Short description for home page") Err bitreich.org 70 i 46 ;; Err bitreich.org 70 i 47 ;; A Note On Keywords: Err bitreich.org 70 i 48 ;; :author can be omitted. If so, it's value gets replaced by the value of :webmaster. Err bitreich.org 70 i 49 ;; :tiny can be omitted. If so, the article's full text gets displayed on the all-articles view. (most people don't want this.) Err bitreich.org 70 i 50 Err bitreich.org 70 i 51 Err bitreich.org 70 i 52 (post :title "test" Err bitreich.org 70 i 53 :id "t" :date "20171214" :tag "cl-yag" :converter :org-mode) Err bitreich.org 70 i 54 Err bitreich.org 70 i 55 ;; CSS Err bitreich.org 70 i 56 (post :title "CSS For cl-yag" Err bitreich.org 70 i 57 :id "css" :date "20171202" :tag "cl-yag" Err bitreich.org 70 i 58 :author "lambda" :tiny "Read more") Err bitreich.org 70 i 59 Err bitreich.org 70 i 60 ;; README Err bitreich.org 70 i 61 (post :title "README" Err bitreich.org 70 i 62 :id "README" :date "20171202" :tag "cl-yag" Err bitreich.org 70 i 63 :author "lambda" :tiny "Read cl-yag's README") Err bitreich.org 70 i 64 Err bitreich.org 70 i 65 ;; 1 Err bitreich.org 70 i 66 (post :title "My first post" Err bitreich.org 70 i 67 :id "1" :date "20160429" :tag "pony" Err bitreich.org 70 i 68 :tiny "This is the first message" :author "Solène") Err bitreich.org 70 .