Consoleet is an umbrella name for my endeavours surrounding text-oriented consoles, bitmap fonts and otherwise, color considerations, and generally retro look-and-feel. Cornerstone observations as a software developer who is using text all the time:
- Emulating the looks of CRT rendition (e.g. dot mask / scanlines) impedes the brightness too much. Unless I had a 4K HDR display, I wouldn't try again.
- The 16-color VGA/DOS palette is close to perfection (achieves 91% of points of a reference palette tuned for maximum contrast). Other color palettes offered by terminal emulators are generally garbage in contrast.
Utilities
vfontas (originally "VGA font file assembler") can read/write bitmap fonts from/to a number of formats and transform the glyphs in various ways. vfontas is able to generate outline fonts from bitmapped fonts.
Format | Ext. | Read | Write |
---|---|---|---|
X11 Bitmap Distribution Format | .bdf | ✓ | ✓ |
Consoleet textgraphic format | .txt | ✓ | ✓ |
MS-DOS Codepage Information files | .cpi | ✓ | – |
Raw bitmaps | .fnt | ✓ | ✓ |
GNU Unifont | .hex | ✓ | – |
Linux "kbd" package Unicode maps | .uni | ✓ | ✓ |
netpbm Portable Bitmap | .pbm | – | ✓ |
PC Screen font version 1 | .psf | ✓ | – |
PC Screen font version 2 | .psf | ✓ | ✓ |
FontForge Spline Font Database | .sfd | – | ✓ |
X11 Portable Compiled Format | .pcf | ← (via fontforge + BDF export) | → (via SFD export + fontforge) |
Adobe PostScript Type 1 | .pfa | – (use fontforge rasterization to BDF) | → (via SFD export + fontforge) |
OpenType | .otf | – (use fontforge rasterization to BDF) | → (via SFD export + fontforge) |
Web Open Font Format (WOFF) | .woff | – (use fontforge rasterization to BDF) | → (via SFD export + fontforge) |
palcomp can be used to generate palettes for terminals. The most important realization is that programs running within a terminal and which use console_codes(4) to set colors rely on the contrast of the colors produced by a color pairing to be proportional to the contrast those two codes have when using the VGA color palette. For this reason, a mainstay of this program is to operate using a colorspace with perceptual uniformity, i.e. CIELAB/LCh.
As of 2022-11-20, the utilities related to font and color manipulation have been split off hxtools and moved to the Consoleet project. There is now a consoleet-utils source code tree.
- Latest release: 1.9 (2025-03-09) [
Download] - Source code release archive
- Git source code repository – https://codeberg.org/consoleet/consoleet-utils
- Git source code repository – https://git.inai.de/consoleet-utils (clone only; no webview)
Conversion tryout: vfontas -loadpsf <(gzip -cd /usr/share/kbd/consolefonts/lat1-16.psfu.gz) -setname lat -savesfd lat.sfd && fontforge lat.sfd; then {File > Export > {select OTF}, Save to ~/.fonts/lat.otf}.
Articles
- Presentation from openSUSE Conference 2023
- Unusual size of 8×19 fonts explained
- Analysis of AST machines' fonts
- Analysis of the UEFI/EDK font
Fonts
OTF remakes, in blocky and in smooth variants.
- Consoleet Terminus
- Consoleet Darwin (OS X/Darwin/XNU console font)
- Consoleet Oldschool PC (int10h reformatted)
- Consoleet Fixedsys
- Consoleet KBD
- Consoleet Xorg (Xorg standard fonts)
- Consoleet UEFI (Intel UEFI BIOS font)
- Consoleet AMI (AMI BIOS font)
- ASRock BIOS font = Letter Gothic with matrix=0.9 0 0 1