Skip to content

Repository files navigation

Optimized Lekton + ligatures + Nerd Font


Modified Lekton with five fixes plus Fira Code programming ligatures, built for both desktop and terminal ( Nerd Font ) use.

optimizations

original vs optimized vs Nerd Font — Lekton gains a Bold Italic, a dotted 0, a bigger bullet, ^ ` and ligatures

ligatures

ligaturize.sh wraps Ligaturizer: it copies Fira Code's ligature glyphs and its calt rules into every optimized face, scale-corrected to Lekton's cell, and renames the family to LektonLig ( --name, defaulting to the --to dir ). calt never merges characters — each ligature is drawn as single-cell pieces that calt swaps in, so the advance width never changes and the font stays monospace.

ligatures in LektonLig

features

# FEATURE WHY EXAMPLE
1 Bold Italic Lekton ships Regular / Bold / Italic but no Bold Italic — synthesized from the Italic ( shapes ) + Bold ( weight )
2 dotted 0 Lekton's 0 and o look nearly identical; a centered dot disambiguates them original 0 looks like o; optimized 0 has a centered dot
3 bigger Lekton's bullet is a tiny 58-unit square ( ≈5.8% of em ); scaled up to ~200 ( 20% of em ), keeping its original square shape
4 added ^ ` Lekton ships without ^ ( asciicircum ) and ` ( grave ); synthesized from the face's own â / à accents so they match Lekton's stroke
5 ligatures Fira Code programming ligatures copied in via calt ( monospace-safe ) Fira Code ligatures in LektonLig

optimized/ carries 1–4; LektonLig/ adds 5; LektonLigNF/ adds the Nerd Font glyph set on top.

layout

DIR CONTENTS FEATURES
original/ vendor Lekton — Regular / Bold / Italic ( untouched )
optimized/ 4 desktop faces — Regular / Bold / Italic / Bold Italic 1–4
LektonLig/ 4 desktop faces + Fira Code ligatures 1–5
LektonLigNF/ 4 Nerd Font Mono faces ( otf + ttf ) 1–5 + NF
scripts/ bolditalic.py · dotzero.py · glyphfix.py · ligaturize.sh · preview.py
build.sh one-click rebuild of all three output dirs
original  ──▶  optimized  ──▶  LektonLig  ──▶  LektonLigNF
 vendor       1 bolditalic     5 ligaturize      + Nerd Font
              2 dotzero          ( Ligaturizer )   ( font-patcher )
              3 + 4 glyphfix

Lekton declares no OFL Reserved Font Name, so the family keeps the name Lekton ( optimized/ ), the ligature build is LektonLig, and the Nerd Font faces install as LektonLigNerdFontMono.

install

  • editor / desktop, no ligatures → the four faces in optimized/.
  • editor / desktop, with ligatures → the four faces in LektonLig/.
  • terminal / prompt with glyphs → the four faces in LektonLigNF/ ( use the ttf unless your terminal prefers otf ).

Tip

  • macOS: double-click a font, or drop the files into ~/Library/Fonts.
  • Linux: copy into ~/.local/share/fonts then fc-cache -f.

Note

Enable contextual alternates ( calt ) in your editor to see the ligatures — most editors and terminals keep it on by default.

build

bash build.sh              # rebuild optimized/, LektonLig/ and LektonLigNF/ ( NF step is silent by default )
bash build.sh --all        # also refresh the README SVGs ( assets/preview.svg + zero.svg + ligatures.svg )
bash build.sh --verbose    # show the font-patcher output for the NF step
bash build.sh --dry-run    # print every command, change nothing
bash build.sh --help       # list all options

Requires:

  • FontForge ( brew install fontforge ), hb-shape ( brew install harfbuzz, for --all )
  • Nerd Font step, font-patcher at /opt/FontPatcher/font-patcher.
  • ligaturize.sh clones Ligaturizer to /opt/Ligaturizer, on first run and reset --hards it to the latest on later runs
  • Script details and options: CONTRIBUTING.md.

how the ligatures work

Ligaturizer copies Fira Code's ligature glyphs and its calt rules into each face, scale-corrected to Lekton's cell.
calt never merges characters — each ligature is drawn as single-cell pieces ( CR.n.m + lig.n ) that calt swaps in, so the advance width never changes and the font stays monospace.

Note

Italic ligatures are upright. Fira Code has no italic, so every face gets the same upright ligature glyphs — in italic code the letters slant but -> / == stay vertical.

license & credits

  • Lekton © Accademia di Belle Arti di Urbino — SIL Open Font License 1.1 ( no Reserved Font Name ).
  • Modifications ( Bold Italic, dotted 0, bigger , added ^ `, ligature + Nerd Font patching ) by marslo, released under the same OFL 1.1.
  • Ligatures via Fira Code ( OFL 1.1 ) · Ligaturizer ( script GPL-3.0, used as an external tool — the fonts it produces are not GPL ).
  • Nerd Font glyphs via Nerd Fonts.

About

Lekton with a synthesized Bold Italic, a dotted-zero, a bigger •, added missing glyphs, and Fira Code ligatures — desktop + Nerd Font builds, OFL 1.1

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages