Adding readme - cl-yag - Common Lisp Yet Another website Generator HTML git clone git://bitreich.org/cl-yag/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/cl-yag/ DIR Log DIR Files DIR Refs DIR Tags DIR README DIR LICENSE --- DIR commit 4df8123e33dce1823b28195c473a4a465eca4726 DIR parent 66a2b83f5bceef484963bd78efc2a2da98004f4e HTML Author: Solene Rapenne <solene@dataswamp.org> Date: Sat, 30 Apr 2016 17:28:12 +0200 Adding readme Diffstat: A README | 54 +++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+), 0 deletions(-) --- DIR diff --git a/README b/README @@ -0,0 +1,54 @@ +Introduction +=== + +This blog is generated using cl-yag. It stands for Common Lisp Yet Another Generator and obviously it's written in Common Lisp. + +It has only one dependency : a common lisp interpreter, I recommend both sbcl or clisp which are free, open-source and multi-platform. + + +The hierarchy +=== + +Here are the files and folder you can find in your project folder : + + + +- **Makefile** : exists to simplify your life (updating, cleaning) +- **generator.lisp** : contains all the code of the generator +- **templates/** : contains .tpl files which are used as template for the html structure +- **static/** : contains static files that need to be made public like images, css, js etc... +- **data/** : contains what will make the content of your website different from another website (or not) + - **articles.lisp** : contains metadata about the website and the list of the articles with their id/title/date/(author/short description) (aren't mandatory) + - **${id}.txt** : contains the html text of the article ${id} that will be used when displayed +- **output** : this is where the websites goes when your run *make*, and where it's cleaned when you run *make clean*; + + +How to add an article +=== + +Edit data/articles.lisp and add a new line inside the *articles* variable like this + + +``` +(list :id "2" :date "29 April 2016" :title "How do I use cl-yag" :author "Solène" :short "I will explain how to use the generator") +``` + +The _:short_ field is used on the homepage. It it is defined, this is the text that will be shown on the homepage with all the others articles. If it's not defined, the whole article content will be used on the homepage. Sometimes when you have long articles, you may not want to display it entirely on the index so you can use _:short "view the article for the full text_. + +The _:author_ field is used to display who wrote the article. You can omitt it, the generator will take the name from the *config* variable + + +How to use markdown for articles +=== + +Here is a tip to produce html files from markdown using emacs + + + + +1. edit the article file with emacs using ham-mode (which is html) +2. write your text with markdown syntax +3. save your file (ham-mode will convert it to html inside) +4. *make* to update your site + +The generator do not do it natively because I do not want it to have dependencies. You can use what you want to produces the html files.