Summary Files Commits Branches @commit @diff @stats
NameSize
.gitignore63 Blog stats plain blame
.gitmodules149 Blog stats plain blame
LICENSE637 Blog stats plain blame
LICENSE-CODE34.3 KiBlog stats plain blame
LICENSE-CONTENT19.7 KiBlog stats plain blame
README.md2.1 KiBlog stats plain blame
awk-edits511 Blog stats plain
create-font.sh3.3 KiBlog stats plain blame
csg @ 6c607780 Blog stats blame
csma @ a00471f0 Blog stats blame
generate.sh2.2 KiBlog stats plain blame
install-ssg-lowdown.sh370 Blog stats plain blame
present-sxhkd302 Blog stats plain blame
src1.4 KiBlog stats plain

syndamiadotcom

Repository for my website. Pages are written in Markdown, converted to HTML with ssg and lowdown, and edited with AWK scripts. Currently, all content is static.

For more information on how it works, refer to S.S. Law.

Layout and personal setup

  • .hooks: Scripts which are executed before git commit.
  • pre-commit.sh: Most (blog, tutorial, ...) pages are accessed without the ending .html, which is done by moving the contents of page.html to page/index.html. I would still like for certain pages to be accessible also with page.html, so I create a hardlink from one to the other. However, git (when pulling) removes the appropriate hardlink and the files aren't "synced", this script brings back those hardlinks.
  • awk-edits: After HTML generation of pages, AWK scripts do modifications. For more information, read awk-edits/README.md.
  • src: All website content
  • generate.sh: Generates the whole website.
  • You can give it arguments:
    • With no argument, the website is created in a "production" way.
    • With the dev parameter (./generate.sh dev), you'll get duration information for different stuff.
    • With the devs argument, you'll get duration information, but AWK scripts will be ran individually, rather than being combined (useful for individual performance evaluation; name comes from dev + separated)
  • There are some variables which handle how the script works:
    • REPO_FOLDER: specifies where the repository is, useful if you want to run the script outside of the repo. awk-edits and src folders are always relative to the repo folder.
    • GEN_FOLDER: folder in which to put the final generated webpages
    • GEN_TINY_FOLDER: folder in which to put the webpages, that have removed features for better accessibility
    • AWK_FILE: where to put the temporary AWK script, which is created by combining all awk-edits scripts into one. Obviously doesn't do anything with devs parameter.
  • install-ssg-lowdown.sh: Installs ssg and lowdown on the current system.