Sigla
So in the past, because paper was expensive, people would abuse use abbreviations to save on space. This process is called Scribal Abbreviation or Sigla.
This project started a long time ago, and I've worked on it on and off, with the thought of abbreviating common letter pairings and words to a single glyph to fit (marginally) more information on a single page.
In terms of how successful it is at getting more information on a single page, it's not great (I can think of many others, from just printing with smaller margins [I reccomend this, I often print text on A5 with 1cm borders and never have bleed issues], to make the font smaller, and other stupidly simple things like that). However, it is stylistically very fun.
Editing the Text
Prior to right now (before 2025), I'd been using Python to replace characters in a text file.
ReplaceAll = {"the":"ꝥ", etc.} def Abbreviate(text): x = text for z in ReplaceAll: x = x.replace(z, ReplaceAll[z]) return x
This is bad Python, don't judge ¬_¬
There are a couple of symbols that I've come up with which have really stuck to me, that being a crossed thorn (ꝥ) for 'the', and a dotted eng (ŋ̇) for 'ing'. All of these can be done using 'combining diacritics', so long as a chosen font has one. (They also seem to mess with some text editors, like the dotted eng on Neocities' editor.)
Common Strings
To see which strings I should abbreviate, for efficiency, I grabbed a text dataset from somewhere (English Wikipedia, ~1GB) and analysed it for frequency of letter pairs and trios, to find the most used ones.
This becomes a problem of balance and compromise. Optimising for the highest amount of compression would mean using so many abbreviated glyphs that one would need a lookup table to read the text, and since I know this isn't going to be a great way to compress printed text, I may aswell go for legibility. This means using the most common character combinations with the most intuitive substitutions.
I've not implemented these yet...
Editing a Font
A few times, I've had the thought of building this into a font (I believe this has pros and cons compared to the previous method), but FontForge is a bit of a frustrating program for me. This time (2025-03), I've finally hunkered down and done it. It's a lot more work than the previous method...
I used Inkscape to modify a couple of the glyphs of DejaVu Serif Condensed (my favourite font and mercifully with simple serifs), imported them into FontForge and set them as ligatures. I did this in a way that's most likely not the intended or efficient way, but it worked, using Font Tutorials for help.
This seems to work a charm for writing live, the ligatures are applied automatically and it's, I dunno, a little bit magical seeing it be applied in realtime. The downside to this method, obviously, is that it only works with a single font, and wanting to use more than one would require all that work to be done again.