SDB:Fbterm
目录
特性
- 启用了加速滚动后,和 Linux 内核终端的速度一样,也即作为一个模拟器,它能和 Runlevel 3 默认终端一样快。
- 使用 fontconfig 配置字体,freetype2 渲染,与基于 Qt/Gtk+ 的图形应用一样
- 可以动态的创建/销毁多达 10 个窗口
- 可记录每个窗口的滚动历史
- 自动检测当前语言的文本编码,支持中日韩双字节脚本。
- 可动态使用快捷键切换预配置的额外文本编码
- 与 gpm 服务器配合可跨窗口复制粘贴文本
- 支持屏幕转向
- 支持服务器-客户端结构的输入法
- 支持背景图片
安装
目前官方源尚未提供软件包,所以如果要简便安装请在 openSUSE 构建服务 上搜索 fbterm 。注意,构建服务上的包一般没有加入 gpm 鼠标支持。所以假如您执迷于在终端也能用鼠标的话,那么您只能在 fbterm 项目在 google code 上的网站 处获得源代码并参照网站说明进行编译安装。
设置
启动
如果您在启动 fbterm 时发现没有权限,那么请检查您是否在 video 组。您可以通过以下命令来加入 video 组:
sudo gpasswd -a 您的用户名 video
字体
配置在 /home/您的用户名/.fbtermrc
首先注意,konsole/gnome-terminal 等 X11 环境的终端模拟器的字体拿到 fbterm 中百分之百会走形。因此一些很漂亮的比如 consolas,monaco,andale 等都很丑。你可以在 .fbtermrc 中自己试验。原因是 fbterm 使用 fontconfig 挑字体,freetype 渲染,但是 freetype 中依赖 libxft 的部分它作为一个终端无法使用。
中文字型测试过文泉驿微米黑、正黑、点阵宋和 unibit,都不行。其中点阵宋显示很清晰,但是宽度太大,其他完全就不清晰。微软、苹果家的字体都是要求 freetype 渲染的,就不要想了。我摸索出的最佳字体配置如下:
font-names=DejaVu Sans Mono,Droid Sans Fallback font-size=14
编码
text-encodings=UTF-8
也在 .fbtermrc 中配置。
键盘快捷键
启动提示:
[input] can't change kernel keymap table, all shortcuts will NOT work, see SECURITY NOTES section of man page for solution.
原因:fbterm 需要设置内核键盘映射表来设定快捷键。这就需要 fbterm 是一个 setuid 0 的程序(不然普通用户还是设置不了快捷键因为没权限操作内核)。fbterm 也只在设置快捷键时会自动转为 root。因此安全上是可以放心的。
解决:
sudo chmod u+s /usr/bin/fbterm
背景图片
安装 home:MargueriteSu 源的 fbv 软件,把下面脚本保存成 cfbterm
#!/bin/bash # fbterm-bi: a wrapper script to enable background image with fbterm # usage: fbterm-bi /path/to/image fbterm-options echo -ne "\e[?25l" # hide cursor fbv -ciuker "这里是你的图片的完整路径" << EOF q EOF shift export FBTERM_BACKGROUND_IMAGE=1 exec fbterm "$@"
然后:
sudo cp -r cfbterm /usr/bin
以后每次都用 cfbterm 命令启动控制台。图片支持 png/jpeg/jpg/bmp 格式,建议用 png,jpeg 的颜色渐变在终端下显示很丑。
输入法
安装 fcitx-fbterm。然后在 /home/marguerite/.fbtermrc 的最后:
input-method=fcitx-fbterm
网上有说 fcitx 和 fbterm 的进终端自动启动,但那个不支持背景图片。如果你不需要背景图片,可以把:
# If you do console login, it will start fbterm and fcitx-fbterm by default. [[ $(tty) == \/dev\/tty[0-9]* ]] && fcitx-fbterm-helper
写入到 /home/marguerite/.bashrc。
使用背景图片的启动方法是:
- 登录终端
- cfbterm 启动 fbterm
- 在 fbterm 中运行 fcitx -d 启动 fcitx
256 色
fbterm 支持 256 色,使用:
TERM=fbterm vim .fbtermrc
这样的命令来启动程序即可。不想每次都这么做,在 .fbtermrc 的最后写入:
export TERM=fbterm
即可。
灰白改纯白
fbterm 里面默认的白色实际上是灰白,不习惯的可以在 .fbtermrc 的最后写入:
# restore white color echo -ne "\e]P7ffffff"
即可。
鼠标
要先设置 gpm。使用:
sudo yast mouse
来选择你想在终端中使用的鼠标。然后,
在终端登录后默认的 bash 中,使用:
sudo /etc/init.d/gpm start
启动 gpm 鼠标服务器。之后正常进入 fbterm 用鼠标。
终端截图
安装 home:MargueriteSu 源中的 fbshot。使用:
fbshot -s 读秒 图片保存路径
来截图。
中文控制台下的常用辅助工具
- 输入法:fcitx-fbterm,ibus-fbterm,fbterm-ucimf
- 截图:fbgrab
- 背景图片:fbv
- 分屏:tmux