/abizern-org

Source for Personal site

abizern.org site generated with Hugo using the hugo-tufte template

Personal blog build with Hugo and hugo-tufte. Not so many bells and whistles, I want to try and stick to a content-centric approach.

Served from my Dreamhost account.

Installation

Since the theme is a submodule be sure to run git submodule update --init as required.

Content

All content is in the Content.org file, ox-hugo is used to turn this big ass text file into the individual Markdown files that Hugo uses to generate content.

The theme is based around tufte-css.

Structured around the major subcategories of:

  • Posts
  • About
  • Tags (this is generated)

No top level categories, just organise content with tags.

Creating Content

Create a subtree in the correct location of the Content.org file.

To generate a new post from the current subtree: C-c C-e H H which is the shortcut for (org-hugo-export-wim-to-md)

To regenerate the whole site: C-c C-e H A which is the shortcut for (org-hugo-export-wim-to-md :all-subtrees)

Posts have a Title and an optional subtitle that can be set in the front matter.

Tufte recommends no more than two levels for content: Section (h2) and Subsection (h3), other heading styles are not supported.

Parenthetical content

The most striking part of the Tufte style is the used of sidenotes and marginnotes which can be put into markdown with escaped HTML:

I have YASnippets set up for this in Markdown and there should be Org-Mode macros at the top of the Content.org file.

  • {{<marginnote>}} content {{</marginnote}}
  • {{<sidenote>}} content {{</sidenote}}

There may be some characters that need escaping in sidenotss (such as commas) and multiple paragraphs are not supported.

Math

TODO: fill this out.

Local Server

When writing code a local site can be generated with hugo server -D, and then navigating to the localhost url that shows in the terminal.

Math does not work locally for Safari, but it seems to do so on live websites. Testing should be done with Chrome until I figure out why Safari doesn’t like the remotely fetched javascript.

Theme

Uses the hugo-tufte theme that, added as a submodule so that I’m not a hostage to the original repository. The Github repo has a link to what it is forked from, so I can keep my submodule up to date.

Generation and Deployment

  • Clear the content folder to remove the generated markdown documents.
  • Generate the content from the Content.org file using C-c C-e H A.
  • Generate the site by running hugo --gc --minify from the root of the project.
  • FTP the contents of the public folder to the correct place on Dreamhost.