i carry your heart with me(i carry it in
my heart)i am never without it(anywhere
i go you go,my dear;and whatever is done
by only me is your doing,my darling)
                                                       i fear
no fate(for you are my fate,my sweet)i want
no world(for beautiful you are my world,my true)
and it’s you are whatever a moon has always meant
and whatever a sun will always sing is you

here is the deepest secret nobody knows
(here is the root of the root and the bud of the bud
and the sky of the sky of a tree called life;which grows
higher than soul can hope or mind can hide)
and this is the wonder that’s keeping the stars apart

i carry your heart(i carry it in my heart)

e. e. cummings © 1952

»»  start here

recent comments

monolegible

saturday, 24 july 2021

i have been living with my mock up of a monospaced Atkinson Hyperlegible font now for some weeks. First, by simply substituting the Iosevka character variants that most closely matched their Hyperlegible counterparts, then a much lengthier concerted effort to tailor their individual shapes as closely as possible—the ascenders and descenders, their heights and roundness.

The end result has been quite satisfying and has exceeded all my expectations and, until an official monospaced font variant is released, if ever, will remain the default font for my development and writing environment for the foreseeable future. It’s that delicious—okay, i am a font nutter.

But it did not remain solely on my Linux desktops for long..

kindle

Monolegible

Portrait, font size 3, bold 3

i had tried previous versions of Iosevka on my Kindle Oasis but found the half cell width density of my coding oriented fonts.. well, flatly technical looking and not engaging for immersive reading. What a change this font presents with its extended width!

Tiempos Text and the Atkinson Hyperlegible fonts still remain my all time favourite serif and sans serif fonts on the Kindle. But these past weeks i have found myself continually returning to this monospaced font.

There is no doubt the Atkinson font is the easiest on the eyes. It imparts the sensation that it is making one read faster (whether you intend to or not!), like running down an incline effortlessly. But this monospaced variant has a charm that is very visually pleasing to my eyes—the fixed cell width giving the letters a uniform geometric presentation.

With a monospaced font one would expect to lose significant word density on the page but this is easily rectified with its incredible legibility at even the smallest font sizes, a trait it holds in common with the Atkinson font. Of course, if you prefer your reading material fully justified, then proportional fonts are the way to go.

But if you have a fondness for typewriters and old manuscripts—i am dating myself here—and left justification, or simply are drawn to fonts that breathe on a page with a subtle airiness around the characters and words, then this may be right up your alley. And with the right line spacing and margins, it feels very much like reading the “draft” of a novel—part of the allure, no doubt, that keeps me returning to it.

font weight

after some time with “Monolegible” on the Kindle, i decided i preferred the “book” weight of the font. It was possible to more closely match the contrast level of the Atkinson Hyperlegible font, the original “regular” font being either a shade lighter or darker on my Oasis—yes, i am that anal, but it also just felt a touch better which should be no surprise from its heritage. Unfortunately there is no means to customize the boldness increments as there is the font sizes to get a match.

Copying over the “book” weights of the font are easy enough, however, their font names effectively disable the “bold” fonts—their being associated with the “regular” and “italic” font names. Enter ttx to convert fonts to XML and back..

fonts='*-book *-bookitalic *-bold *-bolditalic' for i in $fonts ;do file=$i.ttf ttx $file done sed -i -e 's/iosevka Book Version/iosevka Regular Version/' \ -e 's/iosevka[ -]Book/iosevka/' \ -e 's/Book/Regular/' \ *-book.ttx sed -i -e 's/iosevka Book Italic Version/iosevka Italic Version/' \ -e 's/iosevka[ -]Book/iosevka/' \ -e 's/Book Italic/Italic/' \ *-bookitalic.ttx for i in $fonts ;do file=$i.ttx ttx $file done

and rename the “book” fonts as “regular” and “italic” to inherit the “bold” font references.

character tweaks

the capital M of the book weight appears heavier (to my eyes at least) than the remaining character set—this is purely an optical illusion particular to the flat-bottom M and its narrow spacing between the vertical and angled strokes, despite having the same stroke width as the other characters.

Replacing the book weighted character with its “regular” weighted version—and its ever so slightly thinner stroke width—gives its strokes more breathing room to create the balanced contrast (illusion) on the e-ink page..

echo " Open(\$2); Select(0u004d); Copy(); Open(\$1); Select(0u004d); Paste(); Generate(\$1); " >/tmp/fontforge.script for i in *book*#1.ttf ;do ditto M $i case $i in *italic*) file=*-italic.ttf ;; * ) file=*regular.ttf ;; esac fontforge --script /tmp/fontforge.script $i $file done

Did i mention anal somewhere?

The final adjustment replaces the standard Em dash which closely resembles the Dash due to the fixed width constraint of the monospaced font with the broken or (single character faux) 2 Em dash..

echo " Open(\$1); Select(0u268b); Copy(); Select(0u2014); Paste(); Generate(\$1); " >/tmp/fontforge.script for i in *#1.ttf ;do ditto emdash $i fontforge --script /tmp/fontforge.script $i done

And voila! A font i find myself reading with more and more.

During the hunt for a matching lower case tailed q to match the Atkinson Hyperlegible font, the author of Iosevka stated that “Iosevka is NOT a typeface targeting dyslexia, low-vision legibility, or anti-tampering”. Despite that claim and Iosevka’s focus as perhaps the most powerful coding font platform there is, i think Iosevka manages to address those issues as well as any monospaced font can with the character variants it provides..

Producing IMO a most beautiful monospaced font for both coding, writing and.. reading.

finishing touches

after some time with the above changes, two characters in particular begged for adjustment: the Em dash and the Ellipsis, both which felt too compressed with their single cell width. Breaking the monospaced rule..

The monospaced broken Em dash has been replaced with a double cell width Dash. This is far more legible, providing greater separation of the following clause as well as a longer stroke to differentiate it from the Hyphen. The Dash is used in place of lengthening the Em dash to provide more side bearing spacing to its adjacent characters.

Similarly, the Ellipsis is also enlarged to a double cell width to give the “dots” more breathing room (and match the size of the Period). This transformation requires adjusting the dots’ resultant weight (size) and position..

echo " Open(\$1); Select(0u2012); Copy(); Select(0u2014); Paste(); Transform(200,0,0,100,100,0); Select(0u2026); Transform(200,0,0,200,100,0); ChangeWeight(-100); Move(0,-40); Generate(\$1); " >/tmp/fontforge.script for i in *#1.ttf ;do ditto emdash $i fontforge --script /tmp/fontforge.script $i done

Lastly, an alternate capital Q variant breaks with the Atkinson Hyperlegible font character matching. The “crossing” Q while legible feels similarly compressed (especially at small font sizes) with its crossing diagonal stroke—due to the monospaced cell width preventing a circular shape. In its place, the “detached-tailed” Q feels more rounded (and open), despite the enclosing shapes being identical for both—purely a personal aesthetic choice..

[buildPlans.iosevka-custom.variants.design] capital_q = "detached-tailed" ...

..see Iosevka Hyperlegible.

These last few modifications have firmly established this font as my favourite font to read by. If you are a fan of monospaced fonts—though, technically this font is no longer a monospaced font with its double width character substitutions—and e-ink readers, this highly legible sans serif font may be worth your look. And those with dyslexia may find its monospaced “spacing” particularly appealing..

font size

Monolegible landscape

Landscape, font size 4, bold 3

not needing the range of font sizes the Kindle defaults set (with no FONT_RAMP defined), i apply these FONT_RAMP values for a more granular font size control (with setting 6 equivalent to the default setting 1)..

5.46 5.72 5.98 6.29 6.60 6.96 7.28 7.64 8.06 8.42 8.89 9.30 9.77 10.24

i like small fonts!

The legibility and appeal of the extended width characters beckoned trialing as a coding font (omitting the double width character and font weight tweaks). It works staggeringly well.. to these eyes. Who knew code could look so good!

epilogue

i have been living with this monospaced font now for several months. The FONT_RAMP settings have proved optimal (for my extra small font size preferences). The only change to my Kindle setup is the addition of a font family containing the crossing capital Q i originally started with—i select it occasionally when the mood dictates, though, my aesthetic still leans towards the more open presentation of the detached tailed Q.

The Atkinson Hyperlegible and Tiempos Text fonts still reside on my device but switching to them always prompts quickly switching back, despite the beauty of these fonts. There is something additionally easing to the way i process text that is particular to monospaced “spacing”—perhaps from years of staring at code or akin to reading draft.

Programmers may prefer the serif variants of some letters common to their favourite coding fonts, notably the lower case l—whose the extra stroke i find diminishes the “air” surrounding the letter. Personal aesthetics and those of the Atkinson font again trump these variant choices. The balance of classic geometric and subtle serif character variants (in line with the Atkinson Hyperlegible font objectives) renders an exceedingly clean typeface that i don’t foresee being displaced on my Kindle (or desktop for that matter) anytime soon.

files

comment ?

sunday, 25 july 2021

with the focus on font type legibility satisfied (on my desktops, e-readers and web site), it was time to address the resultant aesthetic of this site.

So, with some further CSS tweaking and server side magic.. a big face lift!

First and foremost, the former outdented lower case lead in word following all headings—a quirky distinction this site has had from its inception as a stylistic signature—becomes paragraph indented with the leading three first words text transformed to X height upper case courtesy of the site’s Passenger/Nginx application <span></span> insertion and corresponding CSS, producing a less formal presentation—softening in my old age i guess. Paragraph spacing has also been tightened a smidgen in the direction of formatting convention—but not quite.

Next, the glaring bold width and extreme (default) contrast of bold highlights—there being only the regular and bold font weights available with the Atkinson Hyperlegible Font—has been replaced again with an X height all caps rendering and a lower contrast font colour. The X height reduces the stroke width and the font color localizes the emphasis where it belongs (imo), in the content.

Finally, italic highlights—which always look larger with their oblique elongated strokes (correctable with a CSS font size adjustment), to my eyes, just seem visually out of place embedded between words (which i suppose is the highlight intent.. not a big fan of italics obviously!)—get a similar treatment, sans the font weight and color. Not to be confused with but the same as the capitalized lead in words.

All of this serves to soften the default emphasis of HTML character highlighting on the content so one’s eyes are not distracted by visual “shouting”. (But really, only serves my aesthetic.. which is quite possibly very contrary)! In other words, easy on the eyes, hopefully friendlier and more welcoming.. but unexciting. No one has ever accused me of being too colourful. :)

comment ?