]> git.draconx.ca Git - homepage.git/log
21 months agoImprove script hack compatibility.
Nick Bowler [Wed, 17 Feb 2021 04:01:02 +0000 (23:01 -0500)]
Improve script hack compatibility.

Old versions of Netscape will actually try and execute these
definitely-not-javascript hacks as Javascript.  So let's try to
avoid that from happening by making the contents look like one
big Javascript comment.

We might need an additional workaround if any of the contents
contains a literal */.  We'll cross that bridge when we get to it.

21 months agoImplement sortable file listing tables.
Nick Bowler [Wed, 17 Feb 2021 02:03:20 +0000 (21:03 -0500)]
Implement sortable file listing tables.

Just for fun, let's add clickable headers to sort the file listings by
name, modification time, and file size, both in forward and reverse,
entirely implemented using XHTML and CSS.

21 months agoImplement version-aware sorting of file listings.
Nick Bowler [Wed, 17 Feb 2021 01:32:02 +0000 (20:32 -0500)]
Implement version-aware sorting of file listings.

Based on glibc strverscmp, except with better awareness of version
components.  Now slotifier-1.1.tar.gz will appear after slotifier-1,
as expected.

21 months agoRelease slotifier-1.1.
Nick Bowler [Mon, 15 Feb 2021 06:06:06 +0000 (01:06 -0500)]
Release slotifier-1.1.

Welp, not even a day and we already need to hotfix the release!
Let's just call it practicing our new release preparation systems...

21 months agoRelease slotifier-1.
Nick Bowler [Sun, 14 Feb 2021 19:26:35 +0000 (14:26 -0500)]
Release slotifier-1.

Mostly a trial to see if we can get all the infrastructure in place
to release tarballs tarballs on the website.  Newly introduced is
an "archive" directory, which provides for browseable file listings,
as well as the ability to link to the most recent tar file in the
generated project descriptions.

21 months agoWork around git-annex breakage.
Nick Bowler [Sun, 14 Feb 2021 00:32:48 +0000 (19:32 -0500)]
Work around git-annex breakage.

Seems new versions of git annex just bail out when run in a "bare"
repository, (at least when git config core.bare return true).

Problem is, you can create work trees from bare repositories and then
the result is not really "bare" even though git config core.bare will
return "true".  Since site deployment does this, and then tries to run
git annex, we get pointless failures.

Simple enough to just manually set core.bare to false when running
git annex, which seems sufficient to make things work again.

21 months agoGenerate slotifier project page from bundled README.md.
Nick Bowler [Sat, 13 Feb 2021 22:30:08 +0000 (17:30 -0500)]
Generate slotifier project page from bundled README.md.

Instead of keeping this information on the website, move most of
the contents of the slotifier project page to that package's README.

Then, use some scripts to pull the contents back into the website
via a git submodule.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

2 years 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.

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

2 years 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.

3 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...

3 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.

3 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.

3 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.

3 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.

3 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.

3 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.

3 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).

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

4 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.

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