Používám Ubuntu 15.04 64-bit Desktop Edition (Linux založený na Debianu).
Použil jsem sudo dpkg-reconfigure console-setup
z příkazového řádku změnit výchozí typ písma konzoly na Terminus. Okamžitě poté se písma konzoly změnila na ostřejší písmo.
Nicméně po restartu Ctrl +Alt +F1 zavede mě do okna konzoly, které má původní robustnější vzhled písma, nikoli můj vybraný výběr.
Soubor /etc/default/console-setup
Zdá se, že soubor byl změněn na mé volby.
# CONFIGURATION FILE FOR SETUPCON
# Consult the console-setup(5) manual page.
ACTIVE_CONSOLES="/dev/tty[1-6]"
CHARMAP="UTF-8"
CODESET="guess"
FONTFACE="Terminus"
FONTSIZE="8x16"
VIDEOMODE=
# The following is an example how to use a braille font
# FONT='lat9w-08.psf.gz brl-8x8.psf'
Jak natrvalo změním písmo konzoly, aby použilo mé preferované písmo?
Přijatá odpověď:
Viz https://askubuntu.com/questions/630118/ a https://askubuntu.com/questions/328463/.
Zdá se, že tento problém je způsoben nesouladem v pojmenování písem
, která konzola-setup očekává, a písma v /usr/share/consolefonts/
a
takto zkopírován do /etc/console-setup/
když vyberete písmo, které chcete použít (pomocí dpkg-reconfigure console-setup
).
Pokud přejdete do konzole a provedete strace /lib/udev/console-setup-tty fbcon
,
můžete vidět, že se pokouší otevřít fonty takto:
/etc/console-setup/Lat15-TerminusBold11x22.psf
Ale když se podíváte do /etc/console-setup/
, je tam jen hrstka
písem (které jste vybrali) a vypadají spíše takto:
/etc/console-setup/Lat15-TerminusBold22x11.psf.gz
Jeden má výšku x šířku a druhý má šířku x výšku.
Problém lze vyřešit několika způsoby.
(1) /lib/udev/console-setup-tty
by mohlo být opraveno – Toto je trvalejší
řešení upstream.
(2) Můžete ručně změnit /etc/default/console-setup
, obrátí
výšku a šířku ve VELIKOSTI FONTU. Toto bude nutné provést pokaždé, když
změníte písma pomocí dpkg-reconfigure console-setup
. Ale když se
stroj restartuje, tato preference zůstane zachována.
(3) Můžete nainstalovat fonty, které console-setup-tty očekává. Tomu
říkám možnost „overkill“. Udělal jsem to takto:
V /etc/rc.local:
# install console fonts and then set up console
/etc/console-setup/fonts.sh install
/lib/udev/console-setup-tty fbcon
Vytvořte skript s názvem /etc/console-setup/fonts.sh
:
#!/bin/bash
action=$1
srcdir="/usr/share/consolefonts"
parent="/etc/console-setup"
subdir="fonts"
case "$1" in
install)
# console fonts are not named properly in Ubuntu 15.04, compensate
[[ -d $parent/$subdir ]] || mkdir $parent/$subdir
for x in $( cd $srcdir ; ls -1 ) ; do
# rearrange the two numbers from HHxWW to WWxHH
y=$(echo "$x" | sed -e 's/^([^-]*)-([^0-9]*)([0-9]*)x([0-9]*).psf.gz/1-24x3.psf.gz/g')
# whether the pattern above matches or not, we'll be uncompressing here
z=${y/.psf.gz/.psf}
[[ ! -f $parent/$subdir/$z ]] && zcat $srcdir/$x > $parent/$subdir/$z
[[ ! -L $parent/$z ]] && ln -sv $subdir/$z $parent/$z
done
;;
uninstall)
rm -rf $parent/$subdir
# only remove broken links (links to the fonts we removed above)
rm $(find -L $parent -type l)
;;
*)
echo "$(basename $0) install|uninstall"
;;
esac
exit 0
Pro rychlé pragmatické řešení bych udělal # 2 s komentářem v souboru, který
možná bude potřeba znovu udělat, pokud zvolíte jiný font (za předpokladu, že
komentář také nebude přepsat).
Ale #3 funguje dobře s minimálním zmatkem nebo nepořádkem.