Why --- Yet another console font! I've been very happy with my sigma font, but I wanted to try kms. On my desktop I have a 1600x1200 monitor - if I don't specify any overrides, this gives me something like a 200x75 console which is far too tiny to read. So, for the sigma font I've been specifying 1024x768 for the framebuffer and getting a nice 128x48 console. But that is apparently incompatible with kms. [ I've since seen a suggestion that passing video= is ok ]. The kernel comes with a sun 12x22 font (CONFIG_FONT_SUN12x22) which is a less tiny size (135x53 for me). Unfortunately, it lacks accented letters. After searching, I eventually found psftools which allowed me to dump a font to text, edit it, and create an updated font. I just wish I'd found it sooner! The current version of kbd includes iso01-12x22 and iso02-12x22, but neither of these provide much in the way of accents (in fact, the iso02 version seems to be identical to the iso01 file, as if a fubar happened when they were first added to kbd, and the original site for it does not respond). But, loading iso01 provides a warning message from setfont that position 32 is nonblank and the background will look funny - in fact, the background is fine in this case, but I don't want the error message on each tty so I started from sun-12x22. Changes ------- Far too many to mention, but the main ones include: · This is a 512 glyph font, so as with sigma-consolefonts you'll have to do without bright colours in a tty. · I reduced the letter heights to get more room for accents (so, numbers are now taller than capital letters) · I reworked the 'A' glyph to look better (IMHO), and altered the 'g' to 'helvetic' style instead of 'times'. · later, I moved the nominal baseline down by 1 pixel to let me use less-small capitals than what i'd been using. · I added accents - some of these started in iso01, but I've often reworked them (the ring and cedilla are probably taken straight from iso01). In all of this, my aim is to get distinct and legible letters. So, while I've paid attention to the notes in ucs-fonts, I've made the grave accent wider than the acute because I was having difficulty identifying which accent was on a particular letter. · I took the few greek glyphs from iso01-12x22 as a starting point, then reworked them to fit the changed sizes. And then added those that were missing (for current 'montonic' greek). Some of them may look a bit ugly to native speakers - the versions in iso01 were perhaps better, but I needed to alter the alignments to let me include the accented latin letters. · I then attempted to create the basic cyrillic letters. I hope I've made them acceptable. · After that I added letters to cover what I think are all the live languages West of the Caucasus (I've added a couple of glyphs for azeri using a latin alphabet, but there isn't space to include the armenian or georgian alphabets, nor the many extra cyrillic letters needed for the other languages of the Causcasus. So, if anyone *does* need those, try my sigma-consolefonts. I don't expect anyone will ever have console text in many of the 'supported' languages, but if people can display them on a tty then it *might* happen. · As with my maps in sigma-consolefonts, I've included esperanto and mapped the obsolete 'kra' to cyrillic/greek 'k'. Artistic Guidelines ------------------- For letters and so forth, the bottom row of the character cell is always blank. Above this, there are 4 rows for descenders (a bit on the small side - for p,g,q I've changed the letter shape slightly to maximize the apparent length of the descender). Lowercase letters are 10 rows tall, uppercase 13. Above this are any accents - for uppercase letters, these can reach into the top row. A letter starts by having a margin at both left and right. When it is helpful to make the letter wider, it can move into the first column at the left, particularly for serifs. In extreme cases, the last column at the right can be used (e.g. 'W'), but this should mostly be avoided - some minimal space between letters is usually a good thing. Generally, my guiding principles are "does the letter look ok?" and "can I distinguish the variant forms?" (accents and so forth). This has led me to alter some of the accents to make them bolder. I'm sure that on a small screen they will look blocky, but on a big screen it's necessary to give the reader as much help as possible. Edit in an xterm, with a wide range of fonts! Sometimes, different fonts make visibly different choices. It seems to me that greek letters use either no descender or a full descender. For latin, I've used full descenders and made below-baseline accents a similar height. For cyrillic, after spending a long time looking at text in browsers, and pasting it then changing to a seriffed font, I've concluded that there are probably full-length descenders (e.g. lowercase 'у' [ 'u' ] but also shorter versions on e.g. 'д' and 'щ' ('d' and shcha). For the tailed-letters in kildin sami I've taken a guess at how they are supposed to look. The glyphs are all supposed to be in serif form, although the small cyrillic zhe [ж] doesn't have any and a few serifs have had to be omitted because of lack of space. License ------- The sun-12x22 font is derived from the version included in the linux kernel, and is therefore licensed under GPL v2. Accordingly, all the fonts derived from it bear that license. In a spirit of full compliance, I've put the gzipped "source" here - you can recreate source from a psf using psf2txt, but by supplying the commented source both you and I may sometimes be able to read comments about certain decisions. Last updated 2010-08-25 by Ken Moffat