最近友人が、出先から、https経由で自宅のメールサーバを 読んだりしているらしく(SqWebMailというのを使っているらしい)、 それに影響をうけて出先接続用サーバ環境を作ってみたメモです。 何がしたかったというと、図書館でノートPCを使って作業をしたかったのです。
出先で何をやるかと考えたとき、メモの作成とメールの読み書きが一番ありえそうですが アプリケーションを決めてしまうと何かと不便。あと、データをクライアント に残すとシンクロが面倒・・・ということで、サーバを用意し、接続クライアントは ターミナルを使うことに決定。サーバに指令をだす形で全てを行います。
そして重要なのが日本語入力。せっかくなので漢字変換もサーバやりたい。 Windows系のOSだとこれはできないので、サーバは Linuxに。 ATOK X for Linux を持っているのでこれが使えれば実用的。 すこし調べると、なんと emacs から ATOK X が使う iiimf インターフェスに接続ができる lisp があるではないですか。
emacs が使えるのであれば、メーラは mew。ブラウザは emacs-w3m と アプリもあるしマルチバッファも使えるし言うことなしです。 早速やってみました。
OS | Fedora CORE 2 Linux | telnet と emacs が動くOS ということで既に稼働している Linux があったのでこれに構築 |
emacs | emacs-21.3-12 / emacs-common-21.3-12 | emacs エディタ。Fedora CORE 2 パッケージ |
ATOK X For Linux | ATOK X + ATOK X付属の iiimf パッケージ | Linux 用の ATOK |
m17n.org IIIMECF | IIIMECF-0.6 | emacs から iiimf と通信する lisp |
Mew | mew-3.3-2 / mew-common-3.3-2 | emacs 上で動くメーラ lisp。Fedora CORE 2 パッケージ。 |
emacs w3m | emacs-w3m-1.4.3 | emacs 上で動く テキストブラウザ lisp |
まず、今回の肝である emacs をインストールします。 Fedora の標準パッケージで 用意されているので、こちらを使いました。
# yum install emacs
次に、ATOK X をインストールします。 インストールの仕方は説明書に 従ってください。注意するのは、 Fedora には iiimf パッケージが標準 でついてくるのですが、ATOK X と組み合わせるとうまく動かないようなので ATOK インストール前に削除します。
# rpm -qa | grep iiimf
して出てきたパッケージを、
# rpm -e パッケージ名称 ..
で削除すると良いでしょう。Fedora 標準 iiimf を IIIMECF から 呼び出して ATOK X を使うと一見動いているように見えるのですが、 変換文字列の「確定」動作ができませんでした。(リターンを押すと this buffer is read-only..と emacs にいわれて変換が確定できない)
次に、IIIMECF をインストールします。IIIMECF を使うには、 あわせて、Mule-UCS もいるのですが、Fedora CORE 2 の emacs-common に標準で入っているのでこちらを利用しました。 IIIMECF をダウンロードし、展開し、
$ emacs -q --no-site-file -batch -l iiimcf-comp.el
バイトコンパイルします。そして、作成されたlisp 配下のファイルを、
/usr/share/emacs/site-lisp/IIIMCF
にコピーします。 IIIMCFディレクトリは作成しました。 できたら、 emacs の設定を行います。 ホームディレクトリの .emacs ファイルに次の記述を付け足します。
(setq emacs-ime "atokx")
(if (or (equal emacs-ime "atokx")
(equal emacs-ime "atok")
)
(progn
(require 'un-define)
(setq coding-category-utf-8 'utf-8)
(setq iiimcf-server-control-hostlist '("localhost"))
(setq iiimcf-server-control-default-language "ja")
(setq default-input-method 'iiim-server-control)
(require 'iiimcf-sc)
(define-key global-map "¥C-¥¥" 'toggle-input-method)
(setcar default-mode-line-format "")
)
)
これで emacs を起動し「CTRL+¥」キーを押下すれば スクリーンショット のように ATOK X が起動するはずです。
[ATOK X の操作]
CTRL+BS | 未確定文字列を 1文字削除 |
SPACE | 変換 |
カーソル←→ | 未確定文字列の変換対象文節の伸張を行う |
カーソル↓ | 選択中の未確定文字列を確定する |
RET (ENTER) | 未確定文字列を一括確定する |
CTRL + I | 未確定文字列をカタカナにする |
CTRL + P | 未確定文字列を英語にする |
CTRL + O | 未確定文字列を半角文字にする |
emacs 上で メールの読み書きを行う mew のインストールをします。 Fedora の標準パッケージになっているので、こちらを使いました。
# yum install mew
.emacs に メールサーバの設定を記述します。ここでは、POP を 使う設定にしました。
;;
;; load mew package
;;
(autoload 'mew "mew" nil t)
(autoload 'mew-send "mew" nil t)
(setq mew-mail-domain-list '("ドメイン名"))
(setq mew-name "ユーザ名")
(setq mew-user "ユーザ名");;
;; POP/SMTP setting
;;
(setq mew-use-cached-passwd t) ;; save password at beginning
(setq mew-pop-delete nil) ;; POPサーバからメールを消さない
(setq mew-pop-server "POPサーバ名")
(setq mew-smtp-server "SMTPサーバ名")
(setq mew-pop-auth 'pass)
(setq mew-pop-user "POPユーザ名")
(setq mew-dcc "メールアドレス")
Mew の起動は、emacs 起動後に、ESC +x して mew[enter]するか、 emacs を起動時に、
emacs -f mew
とすれば起動できます。
emacs 上でテキストブラウザを行う、emacs-w3m のインストールをします。
こちらは、Fedora にパッケージが用意されていないので、ファイルを ダウンロード、展開しコンパイルします。
$ ./configure
$ make
# make install
次に、 .emacs に設定を行います。
(require 'w3m-load)
これで、ESC +x して w3m[enter]するか、
emacs -f mew
で、emacs-w3m が起動します。
[emacs-w3m のよく使うコマンド]
リンクの上で enter キー | リンク先へ遷移 | カーソル移動は emacs 準拠。 CTRL + f(右)/b(左) p(上)/n(下) |
カーソルキー | リンク移動 | ↑↓で、画面内のリンクタグにカーソル移動。←→で「戻る」「進む」 |
U | URL入力 | |
a | ブックマーク追加 | 適当なセクション名とタイトルを入力 |
v | ブックマーク閲覧 | |
フォーム上で enter | html フォームに文字を入力するモードに | マルチカラムの textbox の場合は、CTRL + c c で確定 |
emacs 上で行番号を表示する lisp である、wb-line-number を使っています。いい感じです。
(require 'wb-line-number)
(wb-line-number-toggle)
全ての機能をサーバ側に預けることにより、クライアント側を何も考える必要 がないのが強みですね。
実はクライアントにしようとしていたのがキーボード付きWindowsCE 機なのです。 すぐに電源が入るし電池が持つのも良いのですが、なんといっても非力... この方法であれば遅かった(あほだった)漢字変換もサーバに任せられますし ストレージ容量も考えなくていいので、良い感じです。
データシンクロ手段としても良いと思いますので、強力なノートPC をお持ちの方もお試しください。(セキュリティにはお気をつけを)
(メモ) teraterm for windows CE を fedora で使うおまじない
export LANG=ja_JP EUC