X-Git-Url: https://plomlompom.com/repos/?p=redo-blog;a=blobdiff_plain;f=README.md;h=f16e442ec81aa1475f58fb2bbff1d5356c3e95ad;hp=822c08d594be5e0cc29b3e07acc2a3cdba68a2c4;hb=4c034ef30bec5f882ef641f06602090aea63408a;hpb=ff5b37d8bc4cfba8f1db69a279da887accaa0296 diff --git a/README.md b/README.md index 822c08d..f16e442 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,10 @@ run ./add_dir.sh DIRECTORY. You can then enter the directory and run redo there. This will generate article .html files from all .md and .rst files, plus a ./index.html, and a ./feed.xml. -These files will be linked to symbolically in a directory ./public/. +These files will be linked to symbolically in a directory ./public/. If you +provide or edit a file suffixed .links to basename of an article file, these +links will be added as article-specific linkbacks to the .html file and the feed +entry. Some metadata files will also be generated below ./metadata/: For each article, there will be generated a .automatic_metadata (to contain an article's UUID, @@ -34,8 +37,8 @@ checksum, and creation/modification dates) and a .intermediate file (to contain pandoc-formatted article content like title and body); furthermore, files for data used in ./feed.xml and ./index.html will, if non-existant, be built there and can be edited to customize the blog – namely the files url, author, title, -index.tmpl, index_snippet.tmpl, article.tmpl. A blog-specific UUID and creation -date is stored in ./metadata/automatic_metadata +index.tmpl, index_snippet.tmpl, article.tmpl, linkback.tmpl. A blog-specific +UUID and creation date is stored in ./metadata/automatic_metadata recipe to remotely manage a redo blog with git ---------------------------------------------- @@ -49,10 +52,22 @@ called `blog`: git init --bare blog.git cat << EOF > blog.git/hooks/post-update #!/bin/sh - BLOGDIR=~/blog - GIT_WORK_TREE=\$BLOGDIR git checkout -f - cd \$BLOGDIR + blog_dir=~/blog + export GIT_DIR=\$(pwd) + export GIT_WORK_TREE="\$blog_dir" + git checkout -f + cd "\$GIT_WORK_TREE" redo + git add metadata/author metadata/url metadata/title metadata/*.tmpl metadata/automatic_metadata + count=\$(ls -1 metadata/*.automatic_metadata 2>/dev/null | wc -l) + if [ "\$count" != 0 ]; then + git add metadata/*.automatic_metadata + fi + status=\$(git status -s) + n_updates=\$(printf "\$status" | grep -vE '^\?\?' | wc -l) + if [ "\$n_updates" -gt 0 ]; then + git commit -a -m 'Update metadata' + fi EOF chmod a+x blog.git/hooks/post-update @@ -81,6 +96,11 @@ replace the username `user` and the server name `example.org`): git commit -m 'set up blog metadata' git push origin master +If successful, the git hook will furthermore commit some ~/blog/metadata/ files +generated by redo, that can be pulled into the client-side local repository: + + git pull origin master + bugs and peculiarities ---------------------- @@ -90,5 +110,6 @@ break things. The article title is derived in .md files from a first line prefixed with `%`, while all other headings are treated as sub-headings. In .rst files, the title is derived from a heading that must be at the top of the document, and be of an -adornment style (such as underlining with `=`) that must be used only once in -it. +adornment style (such as underlining with `=`) used only once in it. + +Symbolic links in public/ to removed article pages are currently not removed.