閑的蛋疼。。。所以想讓console支援中文(其實就是UTF8編碼的支援),據說有核心的顯示補丁。。。但是太高端了。。俺不會。。。。但是找了半天總算沒白費時間。。。讓俺知道了有framebuffer這東東。。。。。也找到了這篇文章http://forum.ubuntu.org.cn/viewtopic.php?f=8&t=382065,俺基本參照的這上面的來的。。。。。但是開始部分的那個指令碼俺沒用!因為這部分基本上和解決顯卡驅動造成開機畫面解析度過低的方法差不多
在Ubuntu下安裝和使用fbterm虛擬控制台:
1 安裝v86d實現控制台下vesa輸出
代碼:$ sudo apt-get install v86d
為了方便你查看顯卡可用的輸出模式,可以安裝hwinfo代碼:
$ sudo apt-get install hwinfo
$ sudo hwinfo --framebuffer
2 配置framebuffer。修改/boot/default/grub,在核心啟動選項中加入framebuffer輸出和解析度的設定,在intramfs的模組中加入vesa的framebuffer及其設定,在intramfs的開機splash配置中開啟framebuffer(可選)。
3 安裝fbterm
代碼:$ sudo apt-get install fbterm
4 安裝IME的fbterm模組。我使用的是fcitx,就以fcitx為例。fcitx為fbterm提供的輸入模組叫fcitx-fbterm。代碼:sudo apt-get install fcitx-frontend-fbterm
5 把使用者加入到可以使用framebuffer輸出的組,這個組叫video代碼:
$sudo usermod -a -G video your_username
6 配置fbterm,fbterm預設的設定檔在~/.fbtermrc,開啟後你可以修改虛擬終端輸出解析度,字型,字型大小,背景色,前景色彩,甚至可以選用背景圖片。
在這裡強調的是fbterm的一個安全特性,這個特性會讓普通使用者在控制台下無法使用系統快速鍵,因此無法調出中文IME。解決辦法是:代碼:sudo setcap 'cap_sys_tty_config+ep' /usr/bin/fbterm
或者:代碼:sudo chmod u+s /usr/bin/fbterm
到這裡,所有工作基本都做完了,接下來你可以按下ctrl+alt+F1,登入後輸入fbterm,就可以正常顯示中文了。fcitx-fbterm提供了一個指令碼,可以直接開啟fbterm並調用fcitx,命令名是fcitx-fbterm-helper
碼:
$ env DISPLAY=:0 fcitx-fbterm-helper
如果你使用純shell,之前fcitx並沒有啟動,那麼代碼:$ env DISPLAY=:0 fcitx-fbterm-helper -l
一般情況下,也可以直接指定IME並啟動fbterm代碼:env DISPLAY=:0 fbterm -i fcitx-fbterm
還有一些其他設定 將灰白調回純白。fbter預設將白色顯示為灰色,看上去很彆扭,在fbterm中運行代碼:echo -ne "\e]P7ffffff"
滑鼠支援。fbterm可以與gpm server配合用滑鼠進行複製/粘貼。代碼:sudo apt-get install gpm
sudo service gpm start
切換到fbterm,移動滑鼠就可以了。
我自己寫了一個指令碼zhterm.sh代替了,代碼如下
#! /bin/bash
export DISPLAY=:0
fcitx-fbterm-helper -l
$chmod 755 zhterm.sh && sudo mv zhterm.sh /usr/bin
最後如果想要在進入虛擬終端的時候就啟用fbterm的話,可以將下面的代碼加到.bashrc裡面
if [ "$TERM" = "linux" ]; then
zhterm.sh
fi
另外還有一些軟體比如fbgrab(截屏) fbi(看圖) fbgs(看pdf)
console播放視頻
mplayer -vo fbdev xxx.mp4
若要指定大小則 mplayer -vo fbdev2 xxx.mp4 -vf scale=1360:768
想看那種字元型的視頻的話: mplayer -caca xxx.mp4