In my continuing quest to use (n)vi(m) as my text editor to get everything done with, and to not use server side scripting for websites when I don't need it, I installed markdoc on my home server this weekend.
Markdoc is a "simple" framework for generating static websites using markdown. I am using it to generate a static wiki at wiki.technomage.net. There used to be a docuwiki installed there, which didn't get used as much as it could have, mainly because I really don't like most of the web forms for adding/editing content out there.
With the current setup, I have the wiki on my home computer, and just run an rsync up to the server to update it. This is much like how I have nanoblogger setup. Which means if something happens to my server, I can still get to my stuff on my home server, which is also backed up using spideroak.
The only snags that I ran into with setting up markdoc was some not quite obvious settings.
markdoc init wiki
And then moved some things around.
cd wiki mv static .static mv markdoc.yaml .markdoc.yaml rmdir wiki
Then edited .markdoc.yaml to contain:
wiki-name: "wiki . technomage . net" static-dir: ".static" wiki-dir: "." use-default-static: false markdown: extensions: [codehilite]
I initially left out the 'use-default-static: false' line, and copied the .html/media/css/style.css to .static/media/css/style.css, editing style.css to remove the 650px width settings.
This way I can just cd ~/wiki and start editing. When I am done, a simple
markdoc build && rsync -a -e ssh .html/ email@example.com:~/wiki.technomage.net
Builds everything and pushes it up to the server.