7 months agoFix media queries that disable justification.
Nick Bowler [Fri, 10 Jul 2020 05:16:04 +0000 (01:16 -0400)]
Fix media queries that disable justification.

It seems at some point the rules to disable justification on narrow
displays stopped working (or maybe they never worked) due to the main
CSS selectors having higher specificity.

SCSS has a neat trick to expand the media query with matching selectors
which solves this problem nicely.  So let's use that.

7 months agoDon't regenerate smaller images so often.
Nick Bowler [Tue, 7 Jul 2020 01:16:36 +0000 (21:16 -0400)]
Don't regenerate smaller images so often.

It is a bit annoying how nanoc always runs the rule to regenerate
resized images, even if none of the inputs are changed at all.

Since the imgresize filter is quite expensive to run, let's try hacking
around the problem by passing in the final output filename and just
re-using that if it exists and its mtime is newer than the source image.

This is definitely not the most accurate as it will not automatically
regenerate images if the rules change, but I expect any problems due to
this will waste less of my time than regenerating dozens of redundant
images every single time the site is compiled.

7 months agoLet's start a blog!
Nick Bowler [Mon, 6 Jul 2020 03:11:40 +0000 (23:11 -0400)]
Let's start a blog!

Since I wrote this diatribe on fancy styles for HTML tables maybe it's
about time I actually went ahead and pushed it to the actual website.

8 months agoImprove source references for binary items.
Nick Bowler [Fri, 26 Jun 2020 04:11:38 +0000 (00:11 -0400)]
Improve source references for binary items.

Since we binary items are probably annexed it is not particularly
helpful to provide direct links to the symlink in the repository,
as this contains basically zero helpful information.

Instead, let's link to the metadata file when available as that should
at least contain _something_ interesting.

8 months agoFirst stab at images and git-annex.
Nick Bowler [Wed, 24 Jun 2020 05:01:30 +0000 (01:01 -0400)]
First stab at images and git-annex.

Let's add a photo and some filters to produce a handy little image
information page.

It's not so nice to store these (relatively) huge files in git, so we'll
store them in git-annex and update the deployment scripts to handle it.

Nothing links to this image yet as this is pushed mainly to validate the
git-annex deployment, but it will be accessible by direct URI.

The intention is that the site should still compile with missing annexed
components, just that those items will be missing.  In the future we could
perhaps replace them with stubs (so at least the description part of the
info page would work) but we'll save that activity for another day.

8 months agoFix symlink handling in content directory.
Nick Bowler [Fri, 26 Jun 2020 00:11:28 +0000 (20:11 -0400)]
Fix symlink handling in content directory.

In preparation to use git-annex for tracking large binary files, we
need to solve some problems related to its symlinks.  Most importantly
is that the nanoc "filesystem" data source really doesn't like broken
symlinks, so we modify that to avoid major problems.

Next we filter out all missing annex items in a preprocess rule.
Ideally we would replace them with stubs but just dropping them is
acceptable for now.

Finally, for binary items, passthrough rules end up copying the symlink
literally from the content to the output directory.  In the case of symlinks
to the annex directory this is not going to deploy correctly, so we need
a dummy filter to break the link.

8 months agoAdjust whitespace preservation rules.
Nick Bowler [Wed, 24 Jun 2020 05:02:25 +0000 (01:02 -0400)]
Adjust whitespace preservation rules.

We don't generally want to delete whitespace between span elements.

An exception is made if all sibling text nodes are whitespace, in
which case they should all be removed to allow indentation.

8 months agoMake permalinks in section headers optional.
Nick Bowler [Wed, 24 Jun 2020 04:41:47 +0000 (00:41 -0400)]
Make permalinks in section headers optional.

These permalinks seem useful for licenses but maybe not so much
in general.  Let's make that controllable per-document by adding a
parameter to the XSL layout to select whether or not they will
be generated.

8 months agoConvert stylesheet to SCSS and preprocess with SASS.
Nick Bowler [Thu, 27 Feb 2020 18:50:46 +0000 (13:50 -0500)]
Convert stylesheet to SCSS and preprocess with SASS.

This CSS preprocessing tool seems pretty helpful for reducing repetition
in stylesheets.  While it does not make much difference now I hope to
make more use of its features in the future.

8 months agoAdd spaces in self-closing XML tags.
Nick Bowler [Sun, 21 Jun 2020 16:14:01 +0000 (12:14 -0400)]
Add spaces in self-closing XML tags.

Some very old browsers that do not implement XHTML get confused by
tags like <hr/> but have no problem with <hr />.  This is very easy
to accomodate so let's do it.

8 months agoAdd project page for picard plugins.
Nick Bowler [Fri, 19 Jun 2020 04:38:37 +0000 (00:38 -0400)]
Add project page for picard plugins.

12 months agoUpdate gob-dx feature list.
Nick Bowler [Thu, 6 Feb 2020 05:24:02 +0000 (00:24 -0500)]
Update gob-dx feature list.

13 months agoAdd a project page for gob-dx.
Nick Bowler [Mon, 27 Jan 2020 19:33:28 +0000 (14:33 -0500)]
Add a project page for gob-dx.

2 years agoRemove dead definition list cruft.
Nick Bowler [Sat, 16 Feb 2019 05:44:58 +0000 (00:44 -0500)]
Remove dead definition list cruft.

The definition lists for the creative commons text never worked
quite right, and was committed as a comment; don't need that...

2 years agoTweak the footer styles a bit.
Nick Bowler [Thu, 10 Jan 2019 03:59:03 +0000 (22:59 -0500)]
Tweak the footer styles a bit.

Shrink the footer margins too when the header collapses,
and remove a redundant footer style.

2 years agoPut some actual material on the site.
Nick Bowler [Thu, 10 Jan 2019 03:46:40 +0000 (22:46 -0500)]
Put some actual material on the site.

Add an initial projects list and create description pages for
cdecl99 and slotifier.  Introduce a simple navigation mechanism
to these sub-pages.

2 years agoTweak whitespace-preserving templates.
Nick Bowler [Thu, 10 Jan 2019 03:28:53 +0000 (22:28 -0500)]
Tweak whitespace-preserving templates.

We don't want to add whitespace to span-level elements which were
empty to start with, which is normal for e.g. img elements.

Also, if an element contains _only_ whitespace, it was probably put
there on purpose so let's preserve it.

2 years agoAdd an "icon" link with empty data URI.
Nick Bowler [Thu, 10 Jan 2019 03:22:56 +0000 (22:22 -0500)]
Add an "icon" link with empty data URI.

This appears to stop pointless requests to /favicon.ico,
at least in some browsers.

2 years agoAdd a postprocess hook to gzip output text items.
Nick Bowler [Thu, 10 Jan 2019 03:00:58 +0000 (22:00 -0500)]
Add a postprocess hook to gzip output text items.

This enables the use of nginx gzip_static functionality, reducing
per-request processing.  This is only done if GZIP_SITE is set to
a nonempty value in the environment so it can be run only when
publishing to avoid noise when authoring.

2 years agoStrip leading and trailing whitespace from all <p> tags.
Nick Bowler [Wed, 9 Jan 2019 04:27:39 +0000 (23:27 -0500)]
Strip leading and trailing whitespace from all <p> tags.

This should be harmless and improves the pretty-printed output a lot.

2 years agoWork around Nokogiri pretty-print issues.
Nick Bowler [Wed, 9 Jan 2019 01:23:36 +0000 (20:23 -0500)]
Work around Nokogiri pretty-print issues.

In general, pretty-printing XHTML will change its meaning because
whitespace added or removed can affect the results.  Instead of using
the xsl:strip-space functionality which is quite limited, use a normal
template to remove unwanted whitespace-only text nodes which can be
manually tweaked as required.

Then we explicitly add dummy nodes to prevent Nokogiri from reindenting
problematic cases, and finally clean those out just before publishing
(after all XSLT processing is finished).

2 years agoAdd copyright license information.
Nick Bowler [Sat, 23 Jun 2018 17:11:46 +0000 (13:11 -0400)]
Add copyright license information.

2 years agoAdd links from generated pages to source code on gitweb.
Nick Bowler [Sun, 20 May 2018 19:29:28 +0000 (15:29 -0400)]
Add links from generated pages to source code on gitweb.

2 years agoInitial commit
Nick Bowler [Sun, 13 May 2018 22:16:11 +0000 (18:16 -0400)]
Initial commit