From patchwork Mon Mar 1 18:15:34 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Heinrich Schuchardt X-Patchwork-Id: 1445726 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=2a01:238:438b:c500:173d:9f52:ddab:ee01; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.a=rsa-sha256 header.s=badeba3b8450 header.b=kui//R6I; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [IPv6:2a01:238:438b:c500:173d:9f52:ddab:ee01]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4Dq7js5Wxhz9sR4 for ; Tue, 2 Mar 2021 05:16:01 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 16B8A803AB; Mon, 1 Mar 2021 19:15:56 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; secure) header.d=gmx.net header.i=@gmx.net header.b="kui//R6I"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 285E9804E7; Mon, 1 Mar 2021 19:15:53 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2, SPF_HELO_NONE autolearn=ham autolearn_force=no version=3.4.2 Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 8ADCF8006D for ; Mon, 1 Mar 2021 19:15:44 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmx.de Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=xypron.glpk@gmx.de DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1614622539; bh=WmN5MkZPSsTj65Cl+ElbCmhLgHcvpkw+a3skM6FdY5c=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date; b=kui//R6I/mHfozhitVt1Yr+8JzAVT+Jk6PYeTAZ8ksB5WMKbbOstOgFO3BxLpXPKV UUsMAmShDSW7fxVP/JyxU8+OB6ENECfRATriEZsv/Kj30e0S9jqsZdw8UNN7DeRFGy tYswQ15nLyp+OCIDmi5C0ejIPNTKsDDAyImBAY8M= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from LT02.fritz.box ([62.143.246.89]) by mail.gmx.net (mrgmx105 [212.227.17.174]) with ESMTPSA (Nemesis) id 1M4b1y-1lGEaC2ZEc-001iG7; Mon, 01 Mar 2021 19:15:38 +0100 From: Heinrich Schuchardt To: Anatolij Gustschin Cc: u-boot@lists.denx.de, Heinrich Schuchardt Subject: [PATCH v2 1/1] video: add DejaVu Mono font Date: Mon, 1 Mar 2021 19:15:34 +0100 Message-Id: <20210301181534.7618-1-xypron.glpk@gmx.de> X-Mailer: git-send-email 2.30.1 MIME-Version: 1.0 X-Provags-ID: V03:K1:eOLSYCeaS3AE04e5Wuo4rSnKTzRTxCxZMqsZamS0T8jaAvdCqJe idW/jJoYXijx3W/79H514yYkPlu6sANzGAqgkrmG6B9hMJPINFHoI2dlsBRJ10xUsEdyjVs AvbNOkUVWfLlyqkoizXp5KijyzLK+OmcjkiQu7S6INW7gbCBwBiAUbE+0SxsYB/HxvbL8Ki 7Kquqq1tZ2Iqu7zccWDIw== X-UI-Out-Filterresults: notjunk:1;V03:K0:Z7WPH0UHWmo=:sAgAZk/KrqERwjqhh2rvoi eWkuwSvEh1RRLZetouLDA8Zk5PAd0wJr/UotsZNOspU5KNZ22oVhugd4eVkQkviW6Z6dcJBTl DbP7D93WBiodw0OXD81xM95mcZe+Pb8jk7dOrQMyUPaZ5tqwWKBprlNXZdYrVgfq8fFqNUM6O N5HqpaMuNE74LUTnmJj7ATCdEESeQhx8i/OIymUzHs2UBHuHFaI7V0Y5q/zOmUVBZsxsGmAdr K0Cc3i3VAdynvtiOWiJuEoToM6gz5Zb+jzyHLusIMiPpM4coxwFrlhGq4AxJ+CgMcVQl0Nypj AGh1JK+MVbgwzFf+xhmx0/KKNjla4WEhgkA0ZfuuabdjdQyqStK2Aw8530ZMMLm65gh9posbl P7QeEvhWwWRqoARVhiW+p9qK/4pqfwGy98jEsD1V7npUcBPmqPbQ8TJcybewUNs9nYj5Owroq ulyni6XvSsedXBDk63WHrsMhSbfyudZe5nLkUZlhcDKxYdh8PEJq+fjmbRnCTfExNQaeq2/XI VjHfy8MjKv5Q0wl6ThCstb33Gu2mjzNfPDZtRycheld2n2P/Lh6dtOkEe3Bmd17Zgb9TRFPPO k8PQEiDcyZLHPlCOUDPpTZyR/drkmh8sPXHRnBq7A08KjVvEd52Zj9u31OU7VTS5dpggPWD5u tcJT+dYYiVPiFIGCLH6DPTqPLg+tTTkWTZLnBhGtbL2qWMgSpL7D78v6lIbi4e5cs8MkzAz72 w0Bfajnmu6y6xZZPWrvQjZr/PeGxl6SQ1Eiyf3VezHIWwxX2OU7WDuNcs+hkvmPBHsqWX5vTG E5ccs8ETWYj0Q72cbGOmnHdN8z8ILT6CYMu7VhAB0Snj2AcGSvvveMRxLH1Lx/bXLSoS8Vj3U xZ994IYoxnj4oCCcAWoQ== X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.102.4 at phobos.denx.de X-Virus-Status: Clean A TrueType font for U-Boot should fulfill the following requirements: * mono spaced * support full code page 437 * easily readable Unfortunately none of the fonts provided with U-Boot fulfills all of these requirements. Let's add the DejaVu Mono font. To reduce the code size the characters are limited to code page 437. Signed-off-by: Heinrich Schuchardt --- v2: add two symbols used by GRUB add the FontForge script used to generate the reduce font --- Licenses/dejavu_font_license.txt | 187 ++++++++++++++++++++ drivers/video/console_truetype.c | 4 + drivers/video/fonts/437.ff | 263 ++++++++++++++++++++++++++++ drivers/video/fonts/Kconfig | 10 +- drivers/video/fonts/Makefile | 1 + drivers/video/fonts/dejavu_mono.ttf | Bin 0 -> 41104 bytes 6 files changed, 464 insertions(+), 1 deletion(-) create mode 100644 Licenses/dejavu_font_license.txt create mode 100755 drivers/video/fonts/437.ff create mode 100644 drivers/video/fonts/dejavu_mono.ttf GIT binary patch literal 41104 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 literal 0 HcmV?d00001 -- 2.30.1 diff --git a/Licenses/dejavu_font_license.txt b/Licenses/dejavu_font_license.txt new file mode 100644 index 0000000000..8d71958606 --- /dev/null +++ b/Licenses/dejavu_font_license.txt @@ -0,0 +1,187 @@ +Fonts are (c) Bitstream (see below). DejaVu changes are in public domain. +Glyphs imported from Arev fonts are (c) Tavmjong Bah (see below) + + +Bitstream Vera Fonts Copyright +------------------------------ + +Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream Vera is +a trademark of Bitstream, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of the fonts accompanying this license ("Fonts") and associated +documentation files (the "Font Software"), to reproduce and distribute the +Font Software, including without limitation the rights to use, copy, merge, +publish, distribute, and/or sell copies of the Font Software, and to permit +persons to whom the Font Software is furnished to do so, subject to the +following conditions: + +The above copyright and trademark notices and this permission notice shall +be included in all copies of one or more of the Font Software typefaces. + +The Font Software may be modified, altered, or added to, and in particular +the designs of glyphs or characters in the Fonts may be modified and +additional glyphs or characters may be added to the Fonts, only if the fonts +are renamed to names not containing either the words "Bitstream" or the word +"Vera". + +This License becomes null and void to the extent applicable to Fonts or Font +Software that has been modified and is distributed under the "Bitstream +Vera" names. + +The Font Software may be sold as part of a larger software package but no +copy of one or more of the Font Software typefaces may be sold by itself. + +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, +TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME +FOUNDATION BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING +ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE +FONT SOFTWARE. + +Except as contained in this notice, the names of Gnome, the Gnome +Foundation, and Bitstream Inc., shall not be used in advertising or +otherwise to promote the sale, use or other dealings in this Font Software +without prior written authorization from the Gnome Foundation or Bitstream +Inc., respectively. For further information, contact: fonts at gnome dot +org. + +Arev Fonts Copyright +------------------------------ + +Copyright (c) 2006 by Tavmjong Bah. All Rights Reserved. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of the fonts accompanying this license ("Fonts") and +associated documentation files (the "Font Software"), to reproduce +and distribute the modifications to the Bitstream Vera Font Software, +including without limitation the rights to use, copy, merge, publish, +distribute, and/or sell copies of the Font Software, and to permit +persons to whom the Font Software is furnished to do so, subject to +the following conditions: + +The above copyright and trademark notices and this permission notice +shall be included in all copies of one or more of the Font Software +typefaces. + +The Font Software may be modified, altered, or added to, and in +particular the designs of glyphs or characters in the Fonts may be +modified and additional glyphs or characters may be added to the +Fonts, only if the fonts are renamed to names not containing either +the words "Tavmjong Bah" or the word "Arev". + +This License becomes null and void to the extent applicable to Fonts +or Font Software that has been modified and is distributed under the +"Tavmjong Bah Arev" names. + +The Font Software may be sold as part of a larger software package but +no copy of one or more of the Font Software typefaces may be sold by +itself. + +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL +TAVMJONG BAH BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. + +Except as contained in this notice, the name of Tavmjong Bah shall not +be used in advertising or otherwise to promote the sale, use or other +dealings in this Font Software without prior written authorization +from Tavmjong Bah. For further information, contact: tavmjong @ free +. fr. + +TeX Gyre DJV Math +----------------- +Fonts are (c) Bitstream (see below). DejaVu changes are in public domain. + +Math extensions done by B. Jackowski, P. Strzelczyk and P. Pianowski +(on behalf of TeX users groups) are in public domain. + +Letters imported from Euler Fraktur from AMSfonts are (c) American +Mathematical Society (see below). +Bitstream Vera Fonts Copyright +Copyright (c) 2003 by Bitstream, Inc. All Rights Reserved. Bitstream Vera +is a trademark of Bitstream, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of the fonts accompanying this license (“Fonts”) and associated +documentation +files (the “Font Software”), to reproduce and distribute the Font Software, +including without limitation the rights to use, copy, merge, publish, +distribute, +and/or sell copies of the Font Software, and to permit persons to whom +the Font Software is furnished to do so, subject to the following +conditions: + +The above copyright and trademark notices and this permission notice +shall be +included in all copies of one or more of the Font Software typefaces. + +The Font Software may be modified, altered, or added to, and in particular +the designs of glyphs or characters in the Fonts may be modified and +additional +glyphs or characters may be added to the Fonts, only if the fonts are +renamed +to names not containing either the words “Bitstream” or the word “Vera”. + +This License becomes null and void to the extent applicable to Fonts or +Font Software +that has been modified and is distributed under the “Bitstream Vera” +names. + +The Font Software may be sold as part of a larger software package but +no copy +of one or more of the Font Software typefaces may be sold by itself. + +THE FONT SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS +OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, +TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL BITSTREAM OR THE GNOME +FOUNDATION +BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, +SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN +ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR +INABILITY TO USE +THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. +Except as contained in this notice, the names of GNOME, the GNOME +Foundation, +and Bitstream Inc., shall not be used in advertising or otherwise to promote +the sale, use or other dealings in this Font Software without prior written +authorization from the GNOME Foundation or Bitstream Inc., respectively. +For further information, contact: fonts at gnome dot org. + +AMSFonts (v. 2.2) copyright + +The PostScript Type 1 implementation of the AMSFonts produced by and +previously distributed by Blue Sky Research and Y&Y, Inc. are now freely +available for general use. This has been accomplished through the +cooperation +of a consortium of scientific publishers with Blue Sky Research and Y&Y. +Members of this consortium include: + +Elsevier Science IBM Corporation Society for Industrial and Applied +Mathematics (SIAM) Springer-Verlag American Mathematical Society (AMS) + +In order to assure the authenticity of these fonts, copyright will be +held by +the American Mathematical Society. This is not meant to restrict in any way +the legitimate use of the fonts, such as (but not limited to) electronic +distribution of documents containing these fonts, inclusion of these fonts +into other public domain or commercial font collections or computer +applications, use of the outline data to create derivative fonts and/or +faces, etc. However, the AMS does require that the AMS copyright notice be +removed from any derivative versions of the fonts which have been altered in +any way. In addition, to ensure the fidelity of TeX documents using Computer +Modern fonts, Professor Donald Knuth, creator of the Computer Modern faces, +has requested that any alterations which yield different font metrics be +given a different name. + +$Id$ diff --git a/drivers/video/console_truetype.c b/drivers/video/console_truetype.c index 293b3a5ef4..b9caf2dd0c 100644 --- a/drivers/video/console_truetype.c +++ b/drivers/video/console_truetype.c @@ -490,6 +490,7 @@ FONT_DECL(nimbus_sans_l_regular); FONT_DECL(ankacoder_c75_r); FONT_DECL(rufscript010); FONT_DECL(cantoraone_regular); +FONT_DECL(dejavu_mono); static struct font_info font_table[] = { #ifdef CONFIG_CONSOLE_TRUETYPE_NIMBUS @@ -503,6 +504,9 @@ static struct font_info font_table[] = { #endif #ifdef CONFIG_CONSOLE_TRUETYPE_CANTORAONE FONT_ENTRY(cantoraone_regular), +#endif +#ifdef CONFIG_CONSOLE_TRUETYPE_DEJAVU + FONT_ENTRY(dejavu_mono), #endif {} /* sentinel */ }; diff --git a/drivers/video/fonts/437.ff b/drivers/video/fonts/437.ff new file mode 100755 index 0000000000..065709a218 --- /dev/null +++ b/drivers/video/fonts/437.ff @@ -0,0 +1,263 @@ +#!/usr/bin/fontforge +# SPDX-License-Identifier: GPL-2.0+ +# +# This script uses FontForge to strip unused symbols from a TrueType font. +# Only symbols in code page 437 and two glyphs used by GRUB are left in. +# +# Usage +# +# ./437.ff +# +# e.g. +# +# ./437.ff dejavu-fonts-2.37/src/DejaVuSansMono.sfd dejavu_mono.ttf + +Print() +Print("Strip unused symbols from TrueType font") +if ($argc != 3) + Print() + Print("Usage:") + Print($0, " ") + return +endif + +Print("Loading ", $1) +Open($1) + +# Code page 437 +SelectMore("u0020") +SelectMore("u0021") +SelectMore("u0022") +SelectMore("u0023") +SelectMore("u0024") +SelectMore("u0025") +SelectMore("u0026") +SelectMore("u0027") +SelectMore("u0028") +SelectMore("u0029") +SelectMore("u002a") +SelectMore("u002b") +SelectMore("u002c") +SelectMore("u002d") +SelectMore("u002e") +SelectMore("u002f") +SelectMore("u0030") +SelectMore("u0031") +SelectMore("u0032") +SelectMore("u0033") +SelectMore("u0034") +SelectMore("u0035") +SelectMore("u0036") +SelectMore("u0037") +SelectMore("u0038") +SelectMore("u0039") +SelectMore("u003a") +SelectMore("u003b") +SelectMore("u003c") +SelectMore("u003d") +SelectMore("u003e") +SelectMore("u003f") +SelectMore("u0040") +SelectMore("u0041") +SelectMore("u0042") +SelectMore("u0043") +SelectMore("u0044") +SelectMore("u0045") +SelectMore("u0046") +SelectMore("u0047") +SelectMore("u0048") +SelectMore("u0049") +SelectMore("u004a") +SelectMore("u004b") +SelectMore("u004c") +SelectMore("u004d") +SelectMore("u004e") +SelectMore("u004f") +SelectMore("u0050") +SelectMore("u0051") +SelectMore("u0052") +SelectMore("u0053") +SelectMore("u0054") +SelectMore("u0055") +SelectMore("u0056") +SelectMore("u0057") +SelectMore("u0058") +SelectMore("u0059") +SelectMore("u005a") +SelectMore("u005b") +SelectMore("u005c") +SelectMore("u005d") +SelectMore("u005e") +SelectMore("u005f") +SelectMore("u0060") +SelectMore("u0061") +SelectMore("u0062") +SelectMore("u0063") +SelectMore("u0064") +SelectMore("u0065") +SelectMore("u0066") +SelectMore("u0067") +SelectMore("u0068") +SelectMore("u0069") +SelectMore("u006a") +SelectMore("u006b") +SelectMore("u006c") +SelectMore("u006d") +SelectMore("u006e") +SelectMore("u006f") +SelectMore("u0070") +SelectMore("u0071") +SelectMore("u0072") +SelectMore("u0073") +SelectMore("u0074") +SelectMore("u0075") +SelectMore("u0076") +SelectMore("u0077") +SelectMore("u0078") +SelectMore("u0079") +SelectMore("u007a") +SelectMore("u007b") +SelectMore("u007c") +SelectMore("u007d") +SelectMore("u007e") +SelectMore("u00c7") +SelectMore("u00fc") +SelectMore("u00e9") +SelectMore("u00e2") +SelectMore("u00e4") +SelectMore("u00e0") +SelectMore("u00e5") +SelectMore("u00e7") +SelectMore("u00ea") +SelectMore("u00eb") +SelectMore("u00e8") +SelectMore("u00ef") +SelectMore("u00ee") +SelectMore("u00ec") +SelectMore("u00c4") +SelectMore("u00c5") +SelectMore("u00c9") +SelectMore("u00e6") +SelectMore("u00c6") +SelectMore("u00f4") +SelectMore("u00f6") +SelectMore("u00f2") +SelectMore("u00fb") +SelectMore("u00f9") +SelectMore("u00ff") +SelectMore("u00d6") +SelectMore("u00dc") +SelectMore("u00a2") +SelectMore("u00a3") +SelectMore("u00a5") +SelectMore("u20a7") +SelectMore("u0192") +SelectMore("u00e1") +SelectMore("u00ed") +SelectMore("u00f3") +SelectMore("u00fa") +SelectMore("u00f1") +SelectMore("u00d1") +SelectMore("u00aa") +SelectMore("u00ba") +SelectMore("u00bf") +SelectMore("u2310") +SelectMore("u00ac") +SelectMore("u00bd") +SelectMore("u00bc") +SelectMore("u00a1") +SelectMore("u00ab") +SelectMore("u00bb") +SelectMore("u2591") +SelectMore("u2592") +SelectMore("u2593") +SelectMore("u2502") +SelectMore("u2524") +SelectMore("u2561") +SelectMore("u2562") +SelectMore("u2556") +SelectMore("u2555") +SelectMore("u2563") +SelectMore("u2551") +SelectMore("u2557") +SelectMore("u255d") +SelectMore("u255c") +SelectMore("u255b") +SelectMore("u2510") +SelectMore("u2514") +SelectMore("u2534") +SelectMore("u252c") +SelectMore("u251c") +SelectMore("u2500") +SelectMore("u253c") +SelectMore("u255e") +SelectMore("u255f") +SelectMore("u255a") +SelectMore("u2554") +SelectMore("u2569") +SelectMore("u2566") +SelectMore("u2560") +SelectMore("u2550") +SelectMore("u256c") +SelectMore("u2567") +SelectMore("u2568") +SelectMore("u2564") +SelectMore("u2565") +SelectMore("u2559") +SelectMore("u2558") +SelectMore("u2552") +SelectMore("u2553") +SelectMore("u256b") +SelectMore("u256a") +SelectMore("u2518") +SelectMore("u250c") +SelectMore("u2588") +SelectMore("u2584") +SelectMore("u258c") +SelectMore("u2590") +SelectMore("u2580") +SelectMore("u03b1") +SelectMore("u00df") +SelectMore("u0393") +SelectMore("u03c0") +SelectMore("u03a3") +SelectMore("u03c3") +SelectMore("u00b5") +SelectMore("u03c4") +SelectMore("u03a6") +SelectMore("u0398") +SelectMore("u03a9") +SelectMore("u03b4") +SelectMore("u221e") +SelectMore("u03c6") +SelectMore("u03b5") +SelectMore("u2229") +SelectMore("u2261") +SelectMore("u00b1") +SelectMore("u2265") +SelectMore("u2264") +SelectMore("u2320") +SelectMore("u2321") +SelectMore("u00f7") +SelectMore("u2248") +SelectMore("u00b0") +SelectMore("u2219") +SelectMore("u00b7") +SelectMore("u221a") +SelectMore("u207f") +SelectMore("u00b2") +SelectMore("u25a0") +SelectMore("u00a0") + +# Characters used by GRUB + +# BLACK UP-POINTING TRIANGLE +SelectMore("u25b2") +# BLACK DOWN-POINTING TRIANGLE +SelectMore("u25bc") + +SelectInvert() +DetachAndRemoveGlyphs() + +Print("Saving ", $2) +Generate($2) diff --git a/drivers/video/fonts/Kconfig b/drivers/video/fonts/Kconfig index c692fa9602..f0cc963fb6 100644 --- a/drivers/video/fonts/Kconfig +++ b/drivers/video/fonts/Kconfig @@ -7,7 +7,6 @@ menu "TrueType Fonts" config CONSOLE_TRUETYPE_NIMBUS bool "Nimbus Sans Regular" depends on CONSOLE_TRUETYPE - default y help Nimbus Sans L is a version of Nimbus Sans using Adobe font sources. It was designed in 1987. A subset of Nimbus Sans L were released @@ -49,4 +48,13 @@ config CONSOLE_TRUETYPE_CANTORAONE License: SIL Open Font Licence http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL +config CONSOLE_TRUETYPE_DEJAVU + bool "DejaVu Sans Mono Regular" + depends on CONSOLE_TRUETYPE + default y + help + This mono spaced font contains all code page 437 characters. + From https://sourceforge.net/projects/dejavu/ + License: DejaVu Font License + endmenu diff --git a/drivers/video/fonts/Makefile b/drivers/video/fonts/Makefile index 4fca120b73..1111f92a2c 100644 --- a/drivers/video/fonts/Makefile +++ b/drivers/video/fonts/Makefile @@ -7,3 +7,4 @@ obj-$(CONFIG_CONSOLE_TRUETYPE_NIMBUS) += nimbus_sans_l_regular.o obj-$(CONFIG_CONSOLE_TRUETYPE_ANKACODER) += ankacoder_c75_r.o obj-$(CONFIG_CONSOLE_TRUETYPE_RUFSCRIPT) += rufscript010.o obj-$(CONFIG_CONSOLE_TRUETYPE_CANTORAONE) += cantoraone_regular.o +obj-$(CONFIG_CONSOLE_TRUETYPE_DEJAVU) += dejavu_mono.o diff --git a/drivers/video/fonts/dejavu_mono.ttf b/drivers/video/fonts/dejavu_mono.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2d03f87ebabfd3750d85390dd696e360540aaafe