前の晩冬に HDD を CF に換装した工人舎 SH8 だが、その後 Ubuntu 13.04 をインス トールし、10月に 13.10 へ更新した。以前は所謂「寝モバ」もこのマシンでよくやっていたものだが、最近はタブレットを使う。そういう出番は減ったのだが、こういう文章を書くときに、こういう小さめのマシンを使いたいと思う時が有る。しかし大した機能 は必要ないので、重い Unity はやめて XFCE、いや、もうテキストコンソールでいいんじゃないか。ということで、環境構築を始めたのだった。


fbterm の設定

 コンソールで日本語を表示するには、マルチバイト文字に対応したターミナルエミュレータを使う必要が有る。Ubuntu では、fbterm が標準のインストールセットに含まれている様だ別に apt-get した記憶が無いので、多分…後で history を見たら自分でインストールしていました。訂正リポジトリに用意されている

 fbterm の実行にはフレームバッファが利用可能である必要が有る。これも最初から有効になっていた。ただそのままでは root 権限でないと fbterm を起動できないので、通常使用するユーザを video グループに所属させておく。

$ sudo adduser kodakana video

 fbterm の初回実行時に ~/.fbtermrc が生成される。最初に $ sudo fbterm とかすると、このファイルの所有者が root になってしまうので、

$ sudo chown kodakana:kodakana ~/.fbtermrc

の様にして直す。各種の設定は ~/.fbtermrc に書く。設定できる項目はそのファイルの中に説明が有る。また、これらの設定はコマンドラインでも指定できる。

$ fbterm --help

とやると、コマンドラインオプションの一覧が表示される。まずすることはフォント名とその大きさの指定だ。フォントと大きさの組み合わせによっては、表示が乱れる場合 が有った。まずコマンドラインで試し、気に入ったものを ~/.fbtermrc に書くと良い。

$ fbterm -n "Ume Gothic" -s 16

行間も調整できる。

$ fbterm --font-height=+6

画面の背景を白、文字を黒にするには、

$ fbterm -f 0 -b 7

とやる。設定ファイルで指定した後もコマンドラインオプションで上書きできる。

日本語入力

 日本語の入力には fcitx-fbterm というのも有るが、uim-fep の方が使いやすいと思う。

$ sudo apt-get install uim-fep uim-mozc

uim-mozc の他に uim-skk や uim-anthy なども有る。好きなものを使える。uim-fep を 使うには、fbterm 上のコマンドラインで uim-fep を実行する方法と、fbterm の起動時 に uim-fep を実行する様に指定する方法が有る。後者は、

$ fbterm -- uim-fep

とやる。uim-fep を実行するとデフォルトの変換エンジンが使われる。エンジンを指定するには、

$ uim-fep -u skk

の様にする。SKK だと Ctrl+J で平仮名モードに入るが、Mozc はそのままでは日本語入力モードにできない。~/.uim を作成してキーバインドを割り当てる。その内容は、

(define-key generic-on-key? '("<Control> "))
(define-key generic-off-key? '("<Control> "))

の二行で、Ctrl+Space が割り当てられる。

 なお fcitx-fbterm の場合は、

$ fcitx-fbterm-helper

または

$ fbterm -i fcitx-fbterm

とやると、fcitx が有効な状態で fbterm が実行される。

マウス

 コンソールでもマウスを使うことができる。

$ sudo apt-get install gpm

マウスと言っても、GUI の様にクリックで操作できるわけではない。ただ、文字列のコピーが便利になる。fbterm 上では、マウスで選択した文字列を右クリックでペーストできる。

背景画像

 fbterm には画像を読み込む能力は無いが、他のプログラムに画像を表示させ、その上で背景を透過させた fbterm を実行できる。そのためには fbv というプログラムが必要だが、Ubuntu のリポジトリにパッケージは無いので、ソースからビルドする。今回は別のマシンで deb パッケージを作成して持って来ることにした。

 必要なパッケージは、

  • build-essential
  • checkinstall
  • make
  • libgif-dev
  • libjpeg-dev
  • libpng12-dev

といったあたり。まずは開発者のサイトからダウンロードしたソースアーカイブを展開して、取り出されたディレクトリに移る。

$ tar xvf fbv-1.0b.tar.gz
$ cd fbv-1.0b

checkinstall を実行すると Directory nonexistent とか言って止まるので、mkdir する。

$ sudo mkdir /usr/local/man/man1

checkinstall で deb を作る。

$ sudo checkinstall -t=debian --install=no

ディレクトリの中に deb が出来るので、使うマシンに持って来てインストール。

$ sudo dpkg -i fbv_1.0b-1_i386.deb

 fbterm の man に背景画像を設定するスクリプトのサンプルが載っているので、それと fbv の man を参考にシェルスクリプトを作る。その内容は、

#!/bin/bash
echo -ne "\e[?25l"
fbv -ciuk "$1" << EOF
q
EOF
shift
export FBTERM_BACKGROUND_IMAGE=1
exec fbterm "$@" 

というもの。これを ~/bin/fbterm-bi というファイル名で保存した。~/bin には PATH が通っている。実行権を付けておく。

$ chmod +x ~/bin/fbterm-bi

一つ目の引数に画像ファイル名を、二つ目以降に fbterm のオプションを渡す。

$ fbterm-bi ~/Pictures/wallpaper.png -- uim-fep

この場合は fbterm の文字色は白になるので、背景にする画像は白っぽい所が無い方が良い。