2010/01/15(Fri)
○[NetBSD] editline(3)
@libeditとは?
NetBSD libeditは GNU readline互換ライブラリで、以下のような機能を提供します。
- (キーバインドが)vi互換でなければ生きて行けない
- emacs互換は生きる資格がない(ぉ
- 老化に伴う健忘対策としてコマンドラインを記憶する機能
- Tabキーによる補完機能、無駄に叩かれたTabキーの発する静電気で東京都が一晩(ry
NetBSDではsh(1)にmail(1)、そしてftp(1)などが使用しています。
@libeditの現状
このライブラリはつい最近まで国際化されておらず、multibyteの扱いに難があったのですが
GNU readline 6.0でmultibyte supportが入ったことにインスパイヤされたのか
去年の暮れに
UTF-8サポートしたよという知らせが。
これはへんたい喜ばしいことなんですが、いろいろと実装に問題のあるコードでして。
「
国際化はUTF-8にまかせろー(バリバリ)」ときたら「
やめて!」と返すしかありませんやね。
私もざっと問題点を 指摘したメールを投げまして、commitしたえらい人と 面接しまして
「特技はI5N(イオナズン)とありますが?」 「いいえ。I18Nです。」 「I18Nとは何のことですか?」 「国際化です。」 (以下略)
という流れになり、私が書き直すことになりましてん。
ぼちぼちコード読みはじめたとこなんですが、どうせならその過程でもネタにしてみようかね、と。
いきなり全部の解説は無理なので、ディアゴス○ティーニ方式で。