是否可能在fbterm下英文和中文字體分開設定

系统字体配置、中文显示和输入法问题
回复
头像
xukongwen
帖子: 21
注册时间: 2021-01-19 16:24

是否可能在fbterm下英文和中文字體分開設定

#1

帖子 xukongwen » 2021-01-23 8:36

遇到一個尷尬的問題,在tty下,我很喜歡的中文字會導致fbterm裡面顯示特別奇怪,就是各種英文都顯示不全,可是中文確完美。
我主要用vim寫中文,請問有沒有可能說在終端模式下顯示一套正常的英文,然後在vim裡面顯示我喜歡的中文字體呢?

另外我沒有gui,只能在tty下或者fbterm裡操作
謝謝。
头像
astolia
论坛版主
帖子: 6447
注册时间: 2008-09-18 13:11

Re: 是否可能在fbterm下英文和中文字體分開設定

#2

帖子 astolia » 2021-01-25 19:31

fbterm的字体用的是fontconfig库,所以用配置fontconfig的方法做就行了。
配置文件内容如下

代码: 全选

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
	<alias>
		<family>MyFont</family>
		<prefer>
			<family>英文字体名</family>
			<family>中文字体名</family>
		</prefer>
	</alias>
</fontconfig>
可以保存到/etc/fonts/conf.d下面,以.conf为扩展名。或者直接编辑/etc/fonts/fonts.conf,把<alias>部分放到原有的<fontconfig>里面。这是全局的做法。也可以保存到~/.config/fontconfig/conf.d下面,或者~/.config/fontconfig/fonts.conf,这是针对当前用户的做法。

具体的字体名需要保证和fc-list列出来的一致。fc-list列出来的同一个字体的多个名字会用逗号分隔,任选其一即可。

这样就新增了一个名为MyFont的字体,在fbterm的配置里选用或者直接fbterm -n MyFont选用
debug4
帖子: 85
注册时间: 2020-10-29 7:34

Re: 是否可能在fbterm下英文和中文字體分開設定

#3

帖子 debug4 » 2022-08-14 22:18

方案1:
修改 ~/.fbtermrc
* 把字号由 12 改成 16或 24,或者更大。
* font-names= 这一行,指定两个字体。第1个推荐 英文等宽字体;第2个为中文字体。中间逗号隔开。
(注意:如果某个字体名称中间有空格,千万不要在字体名称前后加 成对的 单引号 或者 双引号!否则字体名无法被识别!
----
#font-names=Unifont
#font-names=WenQuanYi Micro Hei Sharp

font-names=DejaVu Sans Mono,WenQuanYi Micro Hei Sharp
#font-names=DejaVu Sans Mono,Noto Sans CJK SC
#font-names=DejaVu Sans Mono,WenQuanYi Zen Hei


#font-size=12
#font-size=24
font-size=16

---
方案2:
如果只是因为指定中文字体时,英文字符太宽或错位导致无法识别,也可以只指定一款字体,
如 Unifont 或者 WenQuanYi Micro Hei Sharp。

这两款字体,都能同时对英文和中文显示良好。

sudo apt-get install unifont

示例:
---
#font-names=Unifont
font-names=WenQuanYi Micro Hei Sharp

font-size=16
---
回复