Arch linux 更换tty的字体和颜色
posts/arch-linux-%E6%9B%B4%E6%8D%A2tty%E7%9A%84%E5%AD%97%E4%BD%93%E5%92%8C%E9%A2%9C%E8%89%B2Terminus Font
Terminus Font 是一种简洁、固定宽度的位图字体。
字体安装
在终端yay -S terminus-font
可对字体进行安装。
安装过后,字体会被存放在/usr/share/kbd/consolefonts/
下。
kbd 包提供了改变虚拟终端字体的工具。可以使用的字体存储在
/usr/share/kbd/consolefonts/
目录下(各发行版的存储路径略有不同),那些以.psfu
或者.psfu.gzv
结尾的字体具有内置的 Unicode 转换映射,可用于终端字体。psfu
,psfu.gz
– 点阵字体。s
代表屏幕,f
代表字体,u
代表 Unicode,gz
用 gzip 压缩(不适用于 X.Org)。
字体临时设置
我们可以进入 tty 界面进入这个文件夹然后使用setfont
命令来进行字体临时设置。
比如要使用ter-v18b
这个字体就可以用setfont /usr/lib/kbd/consolefonts/ter-v18b.psf.gz
进行设置。
使用showconsolefont
可以查看当前字体的全部字符样式。
字体永久设置
使用setfont
命令设置后的字体会在系统重启后恢复默认的字体。此时我们可以通过编辑/etc/vconsole.conf
文件进行永久设置字体。
通过添加FONT=ter-v18b
或FONT=ter-v18b.psf.gz
进行指定字体。编辑后重启系统即可查看效果。
如果重启过后字体只在进入系统生效一次恢复默认有可能是因为显卡驱动引导时字体被复位,然后终端被切至帧缓冲 (framebuffer)。可使用 Early KMS 提前加载图形驱动可以避免这个问题。
若要在早期的用户空间中使用自定义的字体,可以在 /etc/mkinitcpio.conf
中使用 consolefont 钩子。
Flat-remix Color Theme
Flat-remix 的颜色配置是我比较喜欢配置,颜色配置介绍见此篇博客,且在flat-remix icons、flat-remix-gtk、flat-remix-gnome上都有体现。
bash 设定
在 .bashrc
文件内添加:
if [ "$TERM" = "linux" ]; then
echo -en "\e]P01F2229" #black
echo -en "\e]P88C42AB" #darkgrey
echo -en "\e]P1D41919" #darkred
echo -en "\e]P9EC0101" #red
echo -en "\e]P25EBDAB" #darkgreen
echo -en "\e]PA47D4B9" #green
echo -en "\e]P3FEA44C" #brown
echo -en "\e]PBFF8A18" #yellow
echo -en "\e]P4367bf0" #darkblue
echo -en "\e]PC277FFF" #blue
echo -en "\e]P5BF2E5D" #darkmagenta
echo -en "\e]PDD71655" #magenta
echo -en "\e]P649AEE6" #darkcyan
echo -en "\e]PE05A1F7" #cyan
echo -en "\e]P7E6E6E6" #lightgrey
echo -en "\e]PFFFFFFF" #white
fi
后重新 login tty 即可生效。
fish 设定
在 fish.config
文件status --is-login; and begin
内添加:
if [ "$TERM" = "linux" ]
echo -en "\e]P01F2229" #black
echo -en "\e]P88C42AB" #darkgrey
echo -en "\e]P1D41919" #darkred
echo -en "\e]P9EC0101" #red
echo -en "\e]P25EBDAB" #darkgreen
echo -en "\e]PA47D4B9" #green
echo -en "\e]P3FEA44C" #brown
echo -en "\e]PBFF8A18" #yellow
echo -en "\e]P4367bf0" #darkblue
echo -en "\e]PC277FFF" #blue
echo -en "\e]P5BF2E5D" #darkmagenta
echo -en "\e]PDD71655" #magenta
echo -en "\e]P649AEE6" #darkcyan
echo -en "\e]PE05A1F7" #cyan
echo -en "\e]P7E6E6E6" #lightgrey
echo -en "\e]PFFFFFFF" #white
end
后重新 login tty 即可生效。