‘The half minute which we daily devote to the winding-up of our watches is an exertion of labour almost insensible; yet, by the aid of a few wheels, its effect is spread over the whole twenty-four hours.’
Benjamin Slade

Beautiful and Free Unicode Typefaces, for editor and printer (including a comparison of Latin Modern and Computer Modern Unicode)

For my academic papers, I often need a typeface with a wide range of characters and diacritic combinations. Basic diacritics are supported by a wide range of fonts, but more specialised diacritics and particularly combinations of diacritics only work well in a handful of typefaces. I write my papers in TeX, which has two components: the typeface used to set the paper in (La)TeX and the typeface/font used inside Emacs, where I write the papers.

Top 50 IF list 2019

Emily Short wrote a blog post a fortnight ago or so discussing her nominees for Victor Gijsbers’ Top 50 Interactive Fiction Games of All Time list, 2019 edition. The contest closes on the 31st of July 2019 (i.e. in 2 days, as of the day I write this), and I was thinking about what games would be on my list. This has also resulted, perhaps more importantly, with me having a list of games I still need to play.

Running pdfpc in StumpWM

pdfpc is a fantastic application for presenting PDF slides, including perhaps especially those produced using LaTeX Beamer. It creates two (full-screen) windows, one a presenter viewer which shows the time elapsed and a preview of the next slide, and one the presentation view which is what is shown to the audience. It also has a bunch of other cool features like being able to draw on slides; highlight areas of slides, &c.

Guix, Nix: You are in a maze of twisty little $PATHs, some undefined

Some notes on interactive fiction/text adventure games and PATHs in Guix, and StumpWM. Maze no. 1 There may (likely is) some way of programmatically setting the X Windows PATH variable in Guix System (née GuixSD) via the base configuration (e.g. config.scm), but I haven’t been able to uncover anything that works. This is relevant for being able to use locally installed static binaries or local shell scripts via the window manager.

Semi-automated installation of Void Linux on pure ZFS with full LUKS disk encryption

After spending too much time repeatedly trying to set up a Void Linux installation using ‘pure ZFS’ and full-disk LUKS encryption, I ended up writing up a set of BASH scripts to automate (and, effectively, document) the installation process, and prevent me from forgetting steps along the way. There’s quite a number of potential stumbling block along the way (such as grub-probe not knowing how to properly find the root drive) which I figured out ways around, as well as discovering that Void’s zfs-0.

Auto-generate “creator” PDF metadata in AUCTeX using yasnippet

After struggling with some poorly-handled, apparently “reset” proofs introducing heaps of errors (despite my providing a .tex source) for the past few days,1 I thought about providing automated pdf-tags indicating creation tools used for my TeX-produced documents. Real, professionally-typeset documents deserve to have the tools used to produce them properly recognised in their metadata. So here’s a yasnippet which generates auto-populated hyperref options to generate a pdf-creator tag indicating the version of Emacs, AUCTeX, and distro used:

youtube-dl bash shell function: prefer mp4, and timestamp with download time

In case it’s useful, a quick Bash shell function which takes a single argument (a web address that is processable by youtube-dl) and returns the best quality mp4 version (in case you need to deal with a device that doesn’t like modern video encodings/containers), with the download time as the file’s modification time timestamp (useful if you have a directory of downloaded videos and want to quickly see the last N files you downloaded, rather than the files being sorted by upload time).

Equake(!) Quake-style overlay console in StumpWM

I’ve been alternatively using both KDE Plasma 5 and StumpWM on various machines and have got a working model for using the Equake drop-down in StumpWM. The StumpWM #'invoke-equake command hides (using StumpWM native hide-window, rather than Emacs’s make-frame-invisible as the latter creates various issues in finding and fetching the Equake window) the Equake frame if it’s the currently active window; it searches through all windows in all groups on the current screen/monitor, and calls emacsclient -n -e '(equake-invoke)' to create an Equake frame if no extant Equake window is found; and if an Equake window does already exist for the current screen, it is yanked into the current group, pulled into the current frame, and unhidden (if necessary).

Equake: A drop-down console written in Emacs Lisp

Over the holiday break I’ve been working on developing a Quake-style drop-down console, dubbed Equake / equake. It is not yet on Melpa, but is accessible at https://gitlab.com/emacsomancer/equake.1 equake, written fully in Emacs Lisp, is designed as a ‘classic’ drop-down console interface like Yakuake, inspired by ‘cheat’ consoles in games like Quake. It provides access to various ‘shells’ implemented in Emacs, including shell (an Emacs wrapper around the current system shell), term and ansi-term, (both terminal emulators, emulating VT100-style ANSI escape codes, like xterm does), and eshell (a shell written entirely in Emacs Lisp).

Browsing the Web with Common Lisp

I was a long-time user of Conkeror, a highly-extensible browser with an Emacs ethos. It still exists, but since the changes in the Firefox back-end away from XULRunner, which Conkeror uses, running Conkeror became increasingly difficult to use, so I’ve largely switched to just using plain Firefox. However, John Mercouris has been developing Next Browser (originally styled nEXT Browser), a browser with a Common Lisp front-end, allowing for customisability and extensibility along Conkeror/Emacs lines: