需要が有るか無いかと言ったら、ぶっちゃけアレな話題ですが…。
Zaurus のコマンドラインでミニブログしようというお話しです。

なりゆき

二つのミニブログ、はてなハイクと Twitter を透過的に利用するために cli/haiku.phpというアプリケーションを書いていました。これは、コマンドラインで実行する PHP スクリプトです。で、どうせならこれをいつでもどこでも使える様にしてーな、と思ったわけですが、気軽に電源を切ったり入れたり切ったり入れたりできる携帯可能なモノで、PHP がローカルで実行できるのは Zaurus か NetWalker くらい。NetWalker の方が簡単にできるとは思うものの、これは所有していない私。幸いにして Zaurus SL-C1000 なら俺の横で寝ています。というわけで、Zaurus で cli/haiku.php を動かしてみようとしたわけです。


PHP のコンパイルに失敗しました

PHP のインタプリタが必要ということで、検索して『我が征くは肥沃な荒野: PHPが欲しくなりました』経由で『ほとんど他人の褌 〜開発環境いろいろ〜』というページに辿り着き、配布されている PHP のパッケージをインストールしてみました。が、これには pear コマンドが含まれていない模様。cli/haiku.php は PEAR の HTTP_Requet に依存しています。そこで自前でコンパイルしてみようと、PC 上でのクロスコンパイルしようとして、できなかったので、Zaurus でのセルフコンパイル、しかしこれもダメ。丸一日潰してしまいました。

気を取り直してやっぱりパッケージを使わせてもらいます

そこで PHP 自体はコンパイル済みのパッケージを使わせていただくことにして、PEAR 関係のアレは別の所から持ち込むこととします。以前共有サーバにアップロードするために go-pear を使ってダウンロードしたアレを PC にそのまま取っておいたので、それを Zaurus にコピーしてしまいます。ここで注意するのは、メモリカードなどを経由してコピーする場合、そこが FAT の様にファイル名の大文字/小文字を区別しないファイルシステムだと、コピーの際にディレクトリ/ファイル名の大文字/小文字が変わってしまい、スクリプト中でライブラリの読み込みを要求する記述との対応が取れなくなってしまう場合があるということです(たぶん)。このため、今回はアレの PEAR ディレクトリを zip で固め、メモリカードから Zaurus 本体へ unzip しました。Zaurus の /usr/local/lib/php/ の下にアレの PEAR ディレクトリができる形となります。

他に必要なものを入れていきます

まず Zaurus についてくるターミナルエミュレータでは日本語の入力ができないので、『いとしの liza』から「qpe-embeddedkonsole-ja 日本語入力欄付きワイド版パッケージ」というのをいただきます。また、cli/haiku.php はタイムラインを標準出力に吐き出すだけなので、ページャが必要となります。今回はキャラクタベースのウェブブラウザである w3m を使ってみたいと思います。Zaurus 向けの w3m のパッケージは zaurus-ja プロジェクトで配布しているものがあるのですが、これはなぜか私の Zaurus では起動してくれなかったので、他のものを探します。ところがどうも他にあったのが今はサイトが無くなっている様です。そこで Webarchive を掘って掘って掘り進みます。ありました。そこから「【通常版】w3m_0.5.1+async-1_arm.ipk」と「libgc_6.3alpha4-1_arm.ipk」をいただきます。他に『X/Qt feed』から openssl のパッケージを入れる様に指示されていますが、openssl は大分前に別の必要があって入れていたので、今回は省略。

cli/haiku.php を入れます

cli/haiku.php は Yanmah2 project のリリース一覧から最新版をダウンロードします。と言いたいところですが、私は開発者本人なので、PC から メモリカード経由で移しただけです(とか一度言ってみたかった)。私は自作のスクリプトなどはいつも ~/bin に入れているので、これもそこにアレしました。cli/haiku.php のパッケージをダウンロードされた方は、zip の中の haiku.php というファイルだけを Zaurus に移せば OK です。

環境設定

日本語入力の設定

端末エミュレータで日本語入力ができる様に、以下の内容で設定ファイル ~/.inputrc を作成します。

set convert-meta off
set meta-flag on
set output-meta on

環境変数の設定

~/.bashrc に以下の内容を記入します。

export TERM=xterm-new
export PATH=~/bin:$PATH

これで端末エミュレータを起動する度にこの内容で環境変数が設定されます。

PHP の設定

php.ini の編集

/home/www/conf/php.ini-dist の70行目辺りに以下の様に記入し、ファイル名を php.ini として保存します。

include_path = .:/usr/local/lib/php:/usr/local/lib/php/PEAR
シンボリックリンクの作成

haiku.php の記述に合わせて、/usr/bin/php で php を起動できる様にします。


実行属性を付ける

キーボードを叩く回数を減らすために、haiku.php に実行属性を付けてやりましょう。

$ chmod +x ~/bin/haiku.php

haiku.php の設定

あ、haiku.php にはてなと Twitter の ID とパスワードなどを設定しておくことは忘れずに。それと $env_charcode の値を EUC-JP としておきます。この辺の設定と使い方の詳細は cli/haiku.php のページにあるよ。

行っちゃうぞー

というわけで Zaurus のホーム画面でタコのマークの「端末ウィンドウ」を起動します。ここまでのパッケージのインストールと各種設定ができていれば、haiku.php と叩くだけで良いはずです。何も引数を付けずに haiku.php を実行すると、簡単なヘルプを表示します。まずはこれを確認。そしていよいよはてなハイクと Twitter のタイムラインを見てみましょう。もちろんインターネットには接続しておきます。

$ haiku.php mix -h | w3m -T text/html -I e

少し待つとはてなハイクと Twitter のエントリが時系列で混在したタイムラインが出てきます。やったね。よく頑張ったね。

おまけ:Zaurus 標準の日本語入力機能について

なんだか評判の良くない Zaurus の日本語入力機能ではありますが、私は結構気に入っています。うまく使うコツは…

単文節変換のつもりで使う
連文節変換の方が快適だとは限らないのです。
目的の漢字が出なかったら「音訓(Fn+Space)」
いわゆる単漢字変換です。場合によっては初めから音訓変換にすることもあります。
押しやすいキーコンビネーションなのでパカパカと切り替えてやるとなかなかイイです。
静的単語補完機能を使う
例えば「にほんご」と入力して「日本語」で確定した後、「に」と入力して変換するだけで「日本語」が候補に出てきます。
この機能があることをツイ忘れて、同じ単語を変換するのにいちいち全部入力してしまったりもしますが、うまく使うとアレがナニします。

全般に Zaurus のコレはモバイル環境で短い文を繰り返し入力するのに適した仕組みになっていると思います。そこをつかむと割とヨイ感じに使えると、そういうことです(たぶん)。というわけで買ってからすでに4年以上経ちましたが、まだまだ Zaurus は現役なのです。
もうちょっと Zaurus を使っていきます。

おまけのおまけ

ちなみに:

です。