]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/spleen/README.md
Merge bmake-20230622
[FreeBSD/FreeBSD.git] / contrib / spleen / README.md
1 ```
2
3                                                    ::::::::::::::::::::
4                                                    :::              :::
5               _____       _______ __. ________ ________ ________.   :::
6              _)  _//__ __/ __   /   |.\  __  /.\  __  /.\  _.   |   :::
7             .\____   /.\   )/  /    ||   )/   |   )/   |   \|   |   :::
8             |   )/    |     __/|     \   _____|   _____|    |   |_  :::
9             |____     |_____|  |_____/____\\  |____\\  |    |____/  :::
10         - -- -- \_____| -H7--------------------------- `----' ----- ::: - -
11                                                    :::              :::
12                                                    ::::::::::::::::::::
13
14 ```
15
16 # Spleen
17
18 Spleen is a monospaced bitmap font available in 6 sizes:
19
20 - 5x8
21 - 6x12
22 - 8x16
23 - 12x24
24 - 16x32
25 - 32x64
26
27 Each size is provided in the Glyph Bitmap Distribution Format (BDF), and
28 release tarballs contain the fonts in the following formats: `PCF`, `PSF`
29 (for the Linux console), `OTB`, `OTF`, `.dfont` for macOS users, and `FON`
30 for Windows users.
31
32 All font sizes contain all ISO/IEC 8859-1 characters (Basic Latin and Latin-1
33 Supplement Unicode block), Latin Extended-A characters, as well as Box Drawing,
34 Block Elements, and Braille Patterns Unicode blocks, except for the 5x8 and the
35 6x12 versions.
36
37 Due to character size constraints, the 5x8 version only contains printable
38 ASCII characters, the Braille Patterns Unicode block, and light Box Drawing
39 characters. Please also note that there is no OpenType version for this size.
40
41 As of Spleen 1.8.0, there is now a 6x12 version containing the same Unicode
42 blocks as the 5x8 version and the Latin-1 Supplement Unicode block.
43
44 As of Spleen 2.0.0, the 8x16, 16x32 and 32x64 versions have full support for
45 Code page 437 (IBM PC).
46
47 Spleen also has support for Powerline symbols out of the box.
48
49 The font name is a reference to Baudelaire.
50
51 ## Screenshots
52
53 The following screenshots show Spleen 16x32 displaying code and prose.
54
55 ![Spleen - Hello][1]
56
57 ![Spleen - L'etranger][2]
58
59 ASCII characters for all sizes:
60
61 Spleen 5x8:
62
63 ![Spleen - ASCII characters - 5x8][3]
64
65 Spleen 6x12:
66
67 ![Spleen - ASCII characters - 6x12][4]
68
69 Spleen 8x16:
70
71 ![Spleen - ASCII characters - 8x16][5]
72
73 Spleen 12x24:
74
75 ![Spleen - ASCII characters - 12x24][6]
76
77 Spleen 16x32:
78 ![Spleen - ASCII characters - 16x32][7]
79
80 Spleen 32x64:
81 ![Spleen - ASCII characters - 32x64][8]
82
83 ## XLFD font names
84
85 ```
86 -misc-spleen-medium-r-normal--8-80-72-72-c-50-iso10646-1
87 -misc-spleen-medium-r-normal--12-120-72-72-c-60-iso10646-1
88 -misc-spleen-medium-r-normal--16-160-72-72-c-80-iso10646-1
89 -misc-spleen-medium-r-normal--24-240-72-72-c-120-iso10646-1
90 -misc-spleen-medium-r-normal--32-320-72-72-c-160-iso10646-1
91 -misc-spleen-medium-r-normal--64-640-72-72-c-320-iso10646-1
92 ```
93
94 ## Packages
95
96 Spleen packages are available for:
97
98 - [OpenBSD][9]
99 - [NetBSD][10]
100 - [FreeBSD][11]
101 - [Arch Linux][12]
102 - [Void Linux][13]
103 - [Nix][14]
104 - [Debian][15]
105 - [Ubuntu][16]
106 - [MacPorts][17]
107
108 ## Manual installation
109
110 ### *BSD and Linux
111
112 Clone the repository, convert the files to the Portable Compiled Format
113 (PCF) using **bdftopcf** and run **mkfontdir** in the directory.
114
115 Alternatively, release tarballs provide PCF files for each size.
116
117 ### macOS
118
119 macOS users should use the `.dfont` files provided in the release tarballs.
120
121 ### DOS
122
123 DOS users should run the **SPLEEN.COM** executable provided in the release
124 tarballs to enable the font.
125
126 This has been tested in DOSBox and FreeDOS on real hardware.
127
128 ### Windows
129
130 Windows users should use the `.fon` or `.otf` files provided in the release
131 tarballs.
132
133 ## Usage
134
135 ### *BSD and Linux
136
137 Update the font path to include **Spleen**:
138
139         xset +fp /usr/local/share/fonts/spleen/
140
141 Update **.Xdefaults** and add one of the following directives:
142
143         xterm*faceName: spleen:pixelsize=8:antialias=false
144         xterm*faceName: spleen:pixelsize=12:antialias=false
145         xterm*faceName: spleen:pixelsize=16:antialias=false
146         xterm*faceName: spleen:pixelsize=24:antialias=false
147         xterm*faceName: spleen:pixelsize=32:antialias=false
148         xterm*faceName: spleen:pixelsize=64:antialias=false
149
150 Launch **xterm**.
151
152 Ubuntu has bitmap fonts support disabled by default, instructions to enable
153 it are available [here][18].
154
155 ### Linux console
156
157 Release tarballs provide PSF files for each size, `setfont` can be used
158 to load and set the desired font.
159
160 ### NetBSD console
161
162 NetBSD has .fnt files for each size which can be loaded using wsfontload(8).
163
164 For example, to load Spleen 16x32:
165
166         wsfontload -N spleen-16x32 -w 16 -h 32 /usr/share/wscons/fonts/spleen-16x32.fnt
167         wsconsctl -dw font=spleen-16x32
168
169 ### FreeBSD console
170
171 The FreeBSD package contains .fnt files which can be loaded using
172 vidcontrol(1).
173
174 For example, to load Spleen 16x32:
175
176         vidcontrol -f /usr/local/share/fonts/spleen/spleen-16x32.fnt
177
178 ### OpenType versions
179
180 Spleen release tarballs now contains OTF versions generated automatically
181 from the BDF files, using [bdf2sfd][19]. Each font has a different name,
182 allowing them to be installed alongside.
183
184 They should be used in the exact size specified below, with anti-aliasing
185 disabled.
186
187 - Spleen 6x12: 9 Pt (12 pixels)
188 - Spleen 8x16: 12 Pt (16 pixels)
189 - Spleen 12x24: 18 Pt (24 pixels)
190 - Spleen 16x32: 24 Pt (32 pixels)
191 - Spleen 32x64: 48 Pt (64 pixels)
192
193 ## License
194
195 Spleen is released under the BSD 2-Clause license. See `LICENSE` file for
196 details.
197
198 ## Author
199
200 Spleen is developed by Frederic Cambus.
201
202 - Site: https://www.cambus.net
203
204 ## Resources
205
206 - [Spleen - Monospaced bitmap fonts][20] (2018)
207 - [New console font Spleen made default][21] (2019)
208 - [NetBSD, CTWM, and Spleen][22] (2021)
209
210 GitHub: https://github.com/fcambus/spleen
211
212 ## Trivia
213
214 - Spleen was imported in the OpenBSD src tree in [September 2018][23]
215 - Spleen is the default font for OpenBSD consoles since [January 2019][24]
216 - Spleen was imported in the NetBSD src tree in [March 2019][25]
217 - Spleen 12x24 was used in the Haiku [kernel debugger][26] (on high resolution
218   displays) from May 2021 to June 2022
219 - Spleen was imported in the FreeBSD base system in [May 2023][27]
220 - [msTERM][28], a Terminal program for MailStation devices uses Spleen 5x8
221 - [FBInk][29], a library to print text & images to an eInk Linux framebuffer
222   embeds Spleen 16x32
223 - [U8g2][30], a monochrome graphics library for embedded devices includes
224   all Spleen sizes
225 - [Ansilove][31], an ANSI and ASCII art to PNG converter includes Spleen
226
227 [1]: https://www.cambus.net/content/2018/09/spleen-hello.png
228 [2]: https://www.cambus.net/content/2018/09/spleen-etranger.png
229 [3]: https://www.cambus.net/files/spleen/spleen-5x8.png
230 [4]: https://www.cambus.net/files/spleen/spleen-6x12.png
231 [5]: https://www.cambus.net/files/spleen/spleen-8x16.png
232 [6]: https://www.cambus.net/files/spleen/spleen-12x24.png
233 [7]: https://www.cambus.net/files/spleen/spleen-16x32.png
234 [8]: https://www.cambus.net/files/spleen/spleen-32x64.png
235 [9]: https://openports.pl/path/fonts/spleen
236 [10]: https://pkgsrc.se/fonts/spleen
237 [11]: https://www.freshports.org/x11-fonts/spleen/
238 [12]: https://aur.archlinux.org/packages/spleen-font/
239 [13]: https://github.com/void-linux/void-packages/tree/master/srcpkgs/font-spleen
240 [14]: https://github.com/NixOS/nixpkgs/tree/master/pkgs/data/fonts/spleen
241 [15]: https://packages.debian.org/search?keywords=spleen
242 [16]: https://packages.ubuntu.com/search?keywords=spleen
243 [17]: https://ports.macports.org/port/font-spleen/
244 [18]: https://wiki.ubuntu.com/Fonts#Enabling_Bitmapped_Fonts
245 [19]: https://github.com/fcambus/bdf2sfd
246 [20]: https://www.cambus.net/spleen-monospaced-bitmap-fonts/
247 [21]: https://undeadly.org/cgi?action=article;sid=20190110064857
248 [22]: https://www.cambus.net/netbsd-ctwm-and-spleen/
249 [23]: https://freshbsd.org/openbsd/src/commit/5raMrDMpYlPYW01H
250 [24]: https://freshbsd.org/openbsd/src/commit/MoBCxKiAlFajRvSm
251 [25]: https://freshbsd.org/netbsd/src/commit/TAJuMl9caBpVjGfB
252 [26]: https://git.haiku-os.org/haiku/commit/?id=29a109bd6c01ce71bb61177ee9ff0417e74c1e18
253 [27]: https://cgit.freebsd.org/src/commit/?id=0d66206fff44
254 [28]: https://github.com/jcs/msTERM
255 [29]: https://github.com/NiLuJe/FBInk
256 [30]: https://github.com/olikraus/u8g2/wiki/fntgrpspleen
257 [31]: https://www.ansilove.org