diff options
Diffstat (limited to 'upstream/opensuse-leap-15-6/man8/setfont.8')
-rw-r--r-- | upstream/opensuse-leap-15-6/man8/setfont.8 | 272 |
1 files changed, 272 insertions, 0 deletions
diff --git a/upstream/opensuse-leap-15-6/man8/setfont.8 b/upstream/opensuse-leap-15-6/man8/setfont.8 new file mode 100644 index 00000000..a702fbea --- /dev/null +++ b/upstream/opensuse-leap-15-6/man8/setfont.8 @@ -0,0 +1,272 @@ +.TH SETFONT 8 "11 Feb 2001" "kbd" +.SH NAME +setfont \- load EGA/VGA console screen font +.SH SYNOPSIS +.B setfont +.RB [ -O +.IR font+umap.orig ] +.RB [ -o +.IR font.orig ] +.RB [ -om +.IR cmap.orig ] +.RB [ -ou +.IR umap.orig ] +.RB [ -\c +.IR N ] +.RI [ "font.new ...\&" ] +.RB [ -m +.IR cmap ] +.RB [ -u +.IR umap ] +.RB [ -C +.IR console ] +.RB [ -h\c +.IR H ] +.RB [ -v ] +.RB [ -V ] +.IX "setfont command" "" "\fLsetfont\fR command" +.SH DESCRIPTION +The +.B setfont +command reads a font from the file +.I font.new +and loads it into the EGA/VGA character generator, +and optionally outputs the previous font. +It can also load various mapping tables +and output the previous versions. +.LP +If no args are given (or only the option +.RI \- N +for some number +.IR N ), +then a default +.RI (8x N ) +font is loaded (see below). +One may give several small fonts, all containing +a Unicode table, and +.B setfont +will combine them and load the union. +Typical use: +.TP +.B setfont +Load a default font. +.TP +.B "setfont drdos8x16" +Load a given font (here the 448-glyph drdos font). +.TP +.B "setfont cybercafe -u cybercafe" +Load a given font that does not have a Unicode map +and provide one explicitly. +.TP +.B "setfont LatArCyrHeb-19 -m 8859-2" +Load a given font (here a 512-glyph font combining several +character sets) and indicate that one's local character set +is ISO 8859-2. +.LP +Note: if a font has more than 256 glyphs, only 8 out of 16 colors +can be used simultaneously. It can make console perception worse +(loss of intensity and even some colors). + +.SH "FONT FORMATS" +The standard Linux font format is the PSF font. +It has a header describing font properties like character size, +followed by the glyph bitmaps, optionally followed by a Unicode mapping +table giving the Unicode value for each glyph. +Several other (obsolete) font formats are recognized. +If the input file has code page format (probably with suffix .cp), +containing three fonts with sizes e.g. 8x8, 8x14 and 8x16, then one of +the options \-8 or \-14 or \-16 must be used to select one. +Raw font files are binary files of size +.RI 256* N +bytes, containing bit images for each of 256 characters, +one byte per scan line, and +.I N +bytes per character (0 < +.I N +<= 32). +Most fonts have a width of 8 bits, but with the framebuffer device (fb) +other widths can be used. + +.SH "FONT HEIGHT" +The program +.B setfont +has no built-in knowledge of VGA video modes, but just asks +the kernel to load the character ROM of the video card with +certain bitmaps. However, since Linux 1.3.1 the kernel knows +enough about EGA/VGA video modes to select a different line +distance. The default character height will be the number +.I N +inferred from the font or specified by option. However, the +user can specify a different character height +.I H +using the +.I "\-h" +option. + +.SH "CONSOLE MAPS" +Several mappings are involved in the path from user program +output to console display. If the console is in utf8 mode (see +.BR unicode_start (1)) +then the kernel expects that user program output is coded as UTF-8 (see +.BR utf-8 (7)), +and converts that to Unicode (ucs2). +Otherwise, a translation table is used from the 8-bit program output +to 16-bit Unicode values. Such a translation table is called a +.IR "Unicode console map" . +There are four of them: three built into the kernel, the fourth +settable using the +.I "\-m" +option of +.BR setfont . +An escape sequence chooses between these four tables; after loading a +.IR cmap , +.B setfont +will output the escape sequence Esc ( K that makes it the active translation. +.LP +Suitable arguments for the +.I "\-m" +option are for example +.IR 8859-1 , +.IR 8859-2 ", ...," +.IR 8859-15 , +.IR cp437 ", ...," +.IR cp1250 . +.LP +Given the Unicode value of the symbol to be displayed, the kernel +finds the right glyph in the font using the Unicode mapping info +of the font and displays it. +.LP +Old fonts do not have Unicode mapping info, and in order to handle +them there are direct-to-font maps (also loaded using +.IR "\-m" ) +that give a correspondence between user bytes and font positions. +The most common correspondence is the one given in the file +.I trivial +(where user byte values are used directly as font positions). +Other correspondences are sometimes preferable since the +PC video hardware expects line drawing characters in certain +font positions. +.LP +Giving a +.I "\-m none" +argument inhibits the loading and activation of a mapping table. +The previous console map can be saved to a file using the +.I "\-om file" +option. +These options of setfont render +.BR mapscrn (8) +obsolete. (However, it may be useful to read that man page.) + +.SH "UNICODE FONT MAPS" +The correspondence between the glyphs in the font and +Unicode values is described by a Unicode mapping table. +Many fonts have a Unicode mapping table included in +the font file, and an explicit table can be indicated using +the +.I "\-u" +option. The program +.B setfont +will load such a Unicode mapping table, unless a +.I "\-u none" +argument is given. The previous Unicode mapping table +will be saved as part of the saved font file when the \-O +option is used. It can be saved to a separate file using the +.I "\-ou file" +option. +These options of setfont render +.BR loadunimap (8) +obsolete. +.LP +The Unicode mapping table should assign some glyph to +the `missing character' value U+fffd, otherwise missing +characters are not translated, giving a usually very confusing +result. + +Usually no mapping table is needed, and a Unicode mapping table +is already contained in the font (sometimes this is indicated +by the .psfu extension), so that most users need not worry +about the precise meaning and functioning of these mapping tables. + +One may add a Unicode mapping table to a psf font using +.BR psfaddtable (1). + +.SH OPTIONS +.TP +.BI "\-h " H +Override font height. +.TP +.B \-d +Doubles the size of the font, by replicating all of its pixels +vertically and horizontally. This is suitable for high pixel density +(e.g. "4k") displays on which the standard fonts are too small to be +easily legible. Due to kernel limitations, this is suitable only for +16x16 or smaller fonts. +.TP +.BI "\-m " file +Load console map or Unicode console map from +.IR file . +.TP +.BI "\-o " file +Save previous font in +.IR file . +.TP +.BI "\-O " file +Save previous font and Unicode map in +.IR file . +.TP +.BI "\-om " file +Store console map in +.IR file . +.TP +.BI "\-ou " file +Save previous Unicode map in +.IR file . +.TP +.BI "\-u " file +Load Unicode table describing the font from +.IR file . +.TP +.BI "\-C " console +Set the font for the indicated console. (May require root permissions.) +.TP +.B \-v +Be verbose. +.TP +.B \-V +Print version and exit. + +.SH NOTE +PC video hardware allows one to use the "intensity" bit +either to indicate brightness, or to address 512 (instead of 256) +glyphs in the font. So, if the font has more than 256 glyphs, +the console will be reduced to 8 (instead of 16) colors. + +.SH FILES +.TP +.I /usr/share/kbd/consolefonts +The default font directory. +.LP +.TP +.I /usr/share/kbd/unimaps +The default directory for Unicode maps. +.LP +.TP +.I /usr/share/kbd/consoletrans +The default directory for screen mappings. +.LP +The default font is a file +.I default +(or +.IR default8x N +if the \-N option was given for some number N) +perhaps with suitable extension (like .psf). +.SH "SEE ALSO" +.BR psfaddtable (1), +.BR unicode_start (1), +.BR loadunimap (8), +.BR utf-8 (7), +.BR mapscrn (8) +.\" .SH "AUTHORS" +.\" Eugene G. Crosser (crosser@pccross.msk.su) +.\" .br +.\" Andries E. Brouwer (aeb@cwi.nl) |