Flexible Lisp Blogware. Fork for personal use. Mirrored from https://github.com/kingcons/coleslaw originally.

Brit Butler 1db94e8dd3 Release: 0.9.2! 12 年 前
docs 5f76d94e42 Clean up theme docs and add overview. 12 年 前
examples cb1a82fc67 Use sitemap plugin in the default config. 12 年 前
plugins c2c45356d2 Update TODO. Minor sitemap plugin cleanup. 12 年 前
src 2fb3ed1157 Factor render-index out of render-indices. 12 年 前
tests 9a3a7d7f50 Add a sanity test to prevent future embarrassment. 12 年 前
themes dd027db409 Minor cleanups to sitemap plugin. 12 年 前
.gitignore a698389c42 Implement DEPLOY, package updates, minor tweaks. 13 年 前
LICENSE 499453f622 Add BSD License file. 12 年 前
NEWS.md 1db94e8dd3 Release: 0.9.2! 12 年 前
README.md 4e7a0d4c90 README tweaks. 12 年 前
TODO c2c45356d2 Update TODO. Minor sitemap plugin cleanup. 12 年 前
coleslaw.asd 1db94e8dd3 Release: 0.9.2! 12 年 前
gen-docs.sh 8c0b1f8697 Rework ASDs, add stub md+rst plugins, docs script, and stub tests. 13 年 前

README.md

coleslaw

coleslaw logo

Czeslaw Milosz was the writer-in-residence at UNC c. 1992. I used to see him all the time at the Hardback Cafe, always sitting at a two-top drinking coffee, reading, writing, eating chips and salsa. I remember a gentleness behind the enormous bushy eyebrows and that we called him Coleslaw. - anon

Coleslaw aims to be flexible blog software suitable for replacing a single-user static site compiler such as Jekyll.

Features

  • Git for storage
  • RSS and Atom feeds!
  • Markdown Support with Code Highlighting provided by colorize.
    • Currently supports: Common Lisp, Emacs Lisp, Scheme, C, C++, Java, Python, Erlang, Haskell, Obj-C, Diff.
  • Multi-site publishing support.

  • A Plugin API and plugins for...

    • Comments via Disqus
    • Analytics via Google
    • Hosting via Github Pages
    • Deploying to Amazon S3
    • Using LaTeX (inside pairs of $$) via Mathjax
    • Using ReStructured Text
    • Sitemap generation
    • Importing posts from wordpress
  • There is also a Heroku buildpack maintained by Jose Pereira.

  • Example sites: redlinernotes, Nothing Really Matters, and (lisp :is 'fun).

Installation

This software should be portable to any conforming Common Lisp implementation but this guide will assume SBCL is installed. Testing has also been done on CCL. Server side setup:

  1. Setup git and create a bare repo as shown here.
  2. Install Lisp and Quicklisp.
  3. wget -c https://raw.github.com/redline6561/coleslaw/master/examples/single-site.coleslawrc -O ~/.coleslawrc # and edit as necessary
  4. wget -c https://raw.github.com/redline6561/coleslaw/master/examples/example.post-receive -O your-blog.git/hooks/post-receive # and edit as necessary
  5. chmod +x your-blog/.git/hooks/post-receive
  6. Create or clone your blog repo locally. Add your server as a remote with git remote add prod git@my-host.com:path/to/repo.git
  7. Point the web server of your choice at the symlink /path/to/deploy-dir/.curr/

Now whenever you push a new commit to the server, coleslaw will update your blog automatically! You may need to git push -u prod master the first time.

The Post Format

Coleslaw expects post files to be formatted as follows:

;;;;;
title: foo
tags: bar, baz
date: yyyy-mm-dd hh:mm:ss
format: html (for raw html) or md (for markdown)
;;;;;
your post

Theming

A default theme, hyde, is provided. Themes are made using Google's closure-template and the source for hyde should be simple and instructive until I can provide better docs.