UPDATE-XFONTS-TRADITIONAL(8)

πŸ’– update-xfonts-traditional πŸ’–

okay bestie, so this is a section 8 manual page from the chiark utilities family, and no, it's not a command you run casually β€” it's one of those maintenance-girlie system admin tools. let's get into it πŸŽ€


✨ NAME ✨

update-xfonts-traditional β€” generate traditional ASCII fixed-with fonts 🌸

(yes, that's the actual wording, "fixed-with", we don't fix it, we preserve it fr fr πŸ’…)


πŸ¦‹ SYNOPSIS πŸ¦‹

update-xfonts-traditional --bdf-filter

update-xfonts-traditional --process-pcf in.pcf.gz out.pcf.gz

update-xfonts-traditional --process-fontdirs fontdir ...

update-xfonts-traditional --process-fonttrees fonttree ...

update-xfonts-traditional --update
hmm wait, the --update mode is listed in MODES but not in the SYNOPSIS, so don't come for me, I'm just the messenger πŸ™ˆ

🌈 DESCRIPTION 🌈

so basically update-xfonts-traditional generates versions of X11 PCF fonts that have been edited to restore compatibility with traditional versions of US-ASCII, and to restore some of the glyphs to a more traditional appearance. it's giving "nostalgia restoration project" and honestly? iconic πŸ‘‘


πŸ’… MODES πŸ’…

  • --bdf-filter β€” takes a BDF on standard input and tries to generate an edited BDF on standard output. in-and-out, no drama ✨
  • --process-pcf β€” takes two PCF filename arguments (yes, that's a typo in the original, "Takes to PCF filename arguments", but you know what it means, bestie 🫢). the input PCF gets uncompressed, decompiled to a BDF, processed, recompiled to a PCF and recompressed. it's the full glow-up pipeline πŸ’–
  • --process-fontdirs β€” in each fontdir, all files named font.pcf.gz are processed, to generate where applicable corresponding trad--font.pcf.gz files. and here's the smart part: the mtime, ctime and inode number of the input files are recorded, so that reprocessing the same directory later will be fast. efficiency queen behavior ⚑
  • --process-fonttrees β€” each fonttree is searched for font directories, which are then processed as above. it goes hunting πŸ”
  • --update β€” each built in font tree location is searched for font directories which are processed as above. the vibes are automatic 🌟

πŸŽ€ OPTIONS πŸŽ€

  • -R|--rules-path rulespath β€” prepend rulespath to the path of directories from which to load glyph editing rules. yes, it's -R|--rules-path, pipe and all, that's literally how it's written πŸ’…
  • --share-dir share-dir β€” use share-dir instead of /usr[/local]/share/xfonts-traditional. pick your own home, main character energy πŸ‘‘
  • --parallel|-j cpus β€” use up to cpus cores for processing fonts. the default is all the cpus available. we do not do half measures here πŸ”₯
  • --always-reprocess β€” when scanning font directories, always reprocess all the fonts, regardless of whether we think they have been done already. no skipping, no shortcuts, we do the work again πŸ’ͺ
  • --no-tolerate-bad-fonts β€” treat bad input fonts (eg, ones for which pcf2bdf crashes, or ones with other problems) as a fatal error. normally they just produce a warning. so like, this is the strict mode, be careful bestie 😭

πŸ“ FILES πŸ“

  • xfonts-traditional.done β€” in each font directory, records information about processed fonts, so as to optimise away unnecessary reprocessing. it's the receipts file 🧾
  • xfonts-traditional.log β€” in each font directory, records a lot of which fonts were processed and to a certain extent if not why not. it's the diary πŸ““
  • /usr/share/fonts/X11 /usr/local/share/fonts/X11 β€” default font tree paths for --update. those are the hangout spots πŸ“
  • trad--font.pcf.gz β€” in any font directory, our output files. ⚠️ any other files matching this pattern may be overwritten or deleted. so like, don't go naming your random files that, okay? 😳

⭐ EXIT STATUS ⭐

  • 0 β€” all went well and there were no warnings. we love a clean run πŸ₯³
  • 2 β€” with --bdf-filter and --process-pcf only, indicates that the input font did not need to be edited, or was not suitable for editing, and has not been written out, so the output is incomplete, but this is not an error. so don't panic, it's a soft no πŸ’…
  • any other β€” there were problems. yeah. πŸ’€

πŸ’€ BUGS πŸ’€

only the 6x13 font is conventionally called supported. (that's exactly how it's phrased, "conventionally called supported", we keep it fr fr πŸ™ˆ)

and β€” and this is the sad part β€” this package comes too late to rescue Unix from an incompatible change to its character set. we tried, bestie. we really did. 😭🫢


πŸ‘‘ that's a wrap πŸ‘‘

sign-off time: this page is from Greenend, dated 2012, and it lives in section 8 of the manual β€” UPDATE-XFONTS-TRADITIONAL(8), chiark utilities edition. slay, stay traditional, and don't forget to back up before you let it delete anything matching trad--font.pcf.gz πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…πŸ«Ά