从 看到了这个新的支援 UTF-8 字体显示的终端,试用了一下,感觉非常不错~
基于 Framebuffer,目标是为 Linux 提供一个可以支持国际化字符显示、并且支持字体配置的纯终端环境,类似于大家熟悉的 zhcon 和 cce,不过安装和配置上要简单不少。要想运行 Fbterm,首先你的 Linux 内核必须已经配置并且启用了 Framebuffer 的支持,如果正确配置,应该会有 /dev/fb 这个文件,如果没有,Fbterm 会报错。之后,下载,安装过程非常简单: ./configuremakesudo make install现在就可以在纯控制台下运行 fbterm 了,第一次运行 fbterm,会生成一个 ~/.fbtermrc 文件,内容如下:# Configuration for fbterm# font family/pixelsize used by fbterm, mulitple font families must be separated by ','font_family=monofont_size=12# default color of foreground/background text# available colors: 0 = black, 1 = red, 2 = green, 3 = brown, 4 = blue, 5 = magenta, 6 = cyan,7 = whitecolor_foreground=7color_background=0font_family 就是 fbterm 所使用的字体,默认为 mono,既然我们想要在终端下显示中文,那么把 mono 替换为中文字体就可以了,比如 simsun 或者 wqy。你也可以用逗号分隔字体,比如:font_family=Courier New, simsun这样,英文就会使用 Courier New,中文就会使用 simsun 了~除此之外,你还可以配置字体的大小、前景色和背景色,相信随着 Fbterm 的不断进步,可以配置的选项也会越来越多。显示效果:Fbterm 还提供了虚拟终端的支持:Ctrl Alt c : 创建新的虚拟终端Shift Left : 移动到上一个虚拟终端Shift Right : 移动到下一个虚拟终端Ctrl Alt 数字 : 移动到第 n 个虚拟终端另外,还有翻页的能力:Shitf Page Up : 向上翻页Shitf Page Down : 向下翻页这样,在终端下排错的时候,就省去了因为看不见错误信息的最后几行,而把错误信息重定向到文件中去的麻烦了。Q&A:1. 为啥我没有 /dev/fb 这个文件?首先你要正确的在内核中启用 Framebuffer 的支持,这不在本文的范围内,google 一下能查到详细的配置方法。如果你启用了 Framebuffer 还是没有这个文件,那么你可以看看在 grub 中有没有加入了正确的 vga 参数;如果有 /dev/fb0 这个文件,那么建一个链接 /dev/fb -> /dev/fb0 就可以了。2. 为啥运行了 fbterm 还是没法显示中文?先看看是不是在 ~/.fbtermrc 中正确配置了中文字体,另外不要忘记把终端的 Locale 中的字符集设定为 UTF-8,可以尝试把 export LC_ALL="zh_CN.UTF-8" 加入到你的 ~/.bashrc 中。