2004年3月6日土曜日

SL-C860 メモ

りなざう備忘録・メモ

2004年2月12日に Linux Zaurus の SL-C860 を購入しました.

この文書に、 SL-C860 関連の備忘録・メモをまとめます。 当方は、この文書の内容についての保障はしません。 ここに書かれていることを実行するときは、自己責任で行って下さい。 ただし、つっこみは歓迎いたします。 掲示板 などを御利用ください。


インストールしたソフトたちの記録

gcc (zgcc)
GNU C コンパイラ.

qpe-embeddedkonsole-ja ワイド版
日本語 EUC,SJIS,JIS,UTF8 の入出力が可能なターミナル. SL-C860 付属 CD-ROM に入っているターミナルでは日本語が扱えないので導入.
なお,アイコンがタコだった.なるほど.

emacs21
emacsエディタ様.ターミナル上で動いてくれる. すご.
たぶんテキスト編集にしか使わないだろうから, emacs21-leim1_21.2.1-20021126_arm.ipk などの leim なパッケージはインストールしていない. 本来6パッケージをインストールしなくてはならないところ, 4パッケージしかインストールしていない. とりあえず,日本語テキスト編集などに問題はない.
欲をいえば,UNICODE に対応させたいな. UNICODE に対応させるための elisp パッケージ,名前忘れた.
で,とりあえずやってみました.

qpdf2
2.1.0 prerelease beta4 の qpdf2_render-freetype-2.1.0-20031208_arm.ipk というバージョンのものをインストール. freetype というライブラリ?を使って,きれいに表示してくれるバージョンの模様. ファイルサイズは およそ 940 KB . でかいので,コンパクトフラッシュカードがわにインストールをした.

libfreetype2
qpdf2 のインストール後にこれもインストール. ライブラリなので本体にインストールしてみた。 これをいれないと,pdf ファイルの本文部分の全角文字が豆腐(□)で表示された. とりあえず,この freetype2 により豆腐問題が解決. ありがたや.


Javaアプレットをちょっとだけ動かす

appletviewer hoge.html

上記のように、端末エミュレーター上やコマンドプロンプト上から ちょっと手軽にJavaアプレットを動かしてみる方法を模索した。 用意するのは、端末エミュレーターソフトウェアと、 クラスファイル(hoge.class)と、 アプレット実行用のhtmlファイル(hoge.html)の3つ。

hoge.html の絶対パスが [PATH] であるとすると、以下のように端末に打ち込むといい感じ。

evm -appletviewer localhost[PATH]
もしくは
evm -appletviewer [PATH]

もし hoge.html の絶対パスが /mnt/cf/hoge.html であるとすると、 コマンドは以下のようにする。

evm -appletviewer localhost/mnt/cf/hoge.html
もしくは
evm -appletviewer /mnt/cf/hoge.html

以下に 2つの失敗例も掲載。

localhost のかわりに file: という文字列をつけたら、 以下のようにエラーが出て失敗。

evm -appletviewer file:[PATH]
I/O exception while reading: URL connection with specified hostname is
not supported. Only localhost is supported.

localhost のかわりに file: という文字列をつけ、 [PATH] をhoge.htmlへの相対パスとしたら、 以下のようにエラーが出て失敗。

evm -appletviewer file:[PATH]
Bad URL: file://file:hoge.html ( java.lang.NumberFormatException: 
hoge.html )

emacs で unicode の読み書きをする

mule-ucs を使います.
何の因果か,手持ちの Debian マシンの emacs と,Zaurus 上の emacs とのバージョンがともに 21.2.1 と同じでした. したがって,Debian の emacs 用にコンパイルされた mule-ucs の elisp 群をそのまま Zaurus に流用してみます.

Debian マシン の /usr/share/emacs21/site-lisp/mule-ucs 以下にある elc ファイルを根こそぎ持ってきて,Zaurus の以下のディレクトリにコピーしました.

/home/QtPalmtop/share/emacs/site-lisp/mule-ucs

この elc ファイル群だけで, 5MB くらいの領域を使います. 以下がコピーしてもってきた elc ファイルの名前です.

big5c-cns.elc     big5c-ucs.elc     big5conv.elc     big5type.elc
jisx0213.elc      mccl-font.elc     mucs-ccl.elc     mucs-error.elc
mucs-type.elc     mucs.elc          mule-uni.elc     tae.elc
tbl-mg.elc        trans-util.elc    txt-tbl.elc      un-data.elc
un-define.elc     un-supple.elc     un-tools.elc     unicode.elc
unidata.elc       utf.elc           x0213-cdef.elc   x0213-char.elc
x0213-csys.elc    x0213-font.elc    x0213-mime.elc   x0213-udef.elc
x0213-util.elc

.emacs にはとくに何も書き加えず,以下のままです.

(set-buffer-file-coding-system 'euc-jp-unix)
(set-terminal-coding-system 'euc-japan)
(set-language-environment "Japanese")
(set-keyboard-coding-system 'euc-jp)

mule-ucsディレクトリが入っている site-lispディレクトリには subdirs.el がもうすでに作られているため, わざわざ .emacs で パス を通す必要はないです.

この変更により,emacs の起動に 30秒ほどかかるようになります. これは elc ファイルをカード側に置いたときと,あまり変わりません.

なお,コンパクトフラッシュカード側に elcファイルを置く場合は, .emacsload-path を通せばよいようです.
以下は,コンパクトフラッシュ上の /mnt/cf/mule-ucs というディレクトリの中に elcファイルたちを入れた場合の .emacs の例です.

;;; mule-ucs -- UNICODE の読み書きに対応
(setq load-path
      (cons (expand-file-name "/mnt/cf/mule-ucs")
     load-path))
(require 'un-define) ; Unicode
(require 'jisx0213)  ; JIS X 0213

(set-buffer-file-coding-system 'euc-jp-unix)
(set-terminal-coding-system 'euc-japan)
(set-language-environment "Japanese")
(set-keyboard-coding-system 'euc-jp)