久保田です。
# 仕事がたまってるときに限って作業がはかどってしまう...
パッチを整理してみました。upstream へ持って行くことを前提とした
作業ですので、upstream の最新版のそのままのソースコードに対する
パッチとなっています。
こんなかんじで、成田さんに相談しようと思っていますが、
いかがでしょうか。(最後の Debian パッケージからの抽出パッチに
ついては、ぜんぶ理解しているわけではないので、後藤さんヘルプが
ほしいところです)。
★lv-4495a.diff.gz
ISO-8859-10,11,13,14,15,16 を追加します。とくに ISO-8859-15
対応は、今後欧米では必須の機能です。
また、「=」キーを押したときに最下行に表示されるエンコーディング
名を、省略記号ではなくフルネームで書くようにしました。
★lv-4495b.diff.gz
Unicode におけるハングルのコードポイントは、過去に何度か
変化しています。lv が使っている変換表は古いものだったので、
新しいものをつかうようにしました。これで、UTF-8 環境で
EUC-KR なファイルを見たりすることができるようになります。
★lv-4495c.diff.gz
入力エンコーディングの自動判別を強化して、日本人や東アジア人
以外が使って嬉しくなるようにするとともに、出力エンコーディングも
自動判別するようにしました。
入力エンコーディングは、
1. 入力ファイルが UTF-8 なら UTF-8 に決定
2. ロケールが CJK の場合、もし入力ファイルが EUC であれば、
EUC に決定。ここのアルゴリズムは従来どおりです。
3. デフォルトのエンコーディング (defaultEuc) が UTF-8 以外
なら、それに決定 (この段階に至るということは、1. で決定
しなかったということだから、入力ファイルは UTF-8 ではない)。
4. LC_CTYPE ロケールの charset 部分が8ビットエンコーディング
の場合には、そのエンコーディングを採用。もしそうでないなら、
language/country 部分から類推。たとえば国コードが DE なら
ISO-8859-15、言語コードが mk なら ISO-8859-5、など。
という順で調べます。もちろん、-I の指定があればそれが優先します。
出力エンコーディングは、もし -O などによる指定がなければ、
完全にロケールに従います。
★lv-4495d.diff.gz
Debian パッケージから抽出したパッチです。こまかなエラー回避
などが含まれます。(man -k でエラーが生じる、など)。
ただし、著作権表示のアップデートについては、入れていません。
(どうせ新バージョンが出たら再び 2003 にアップデートしないと
いけないですから)。
ところで、sourceforge に lv-devel というのがありますが、
これは何でしょうか? 成田さんと、そこに持っていく話になっている
のでしょうか? そのへんの話がどこまで進んでいるのか、雰囲気を
聞かせていただければ助かります。
---
久保田智広 Tomohiro KUBOTA <kubota@debian.org>
http://www.debian.or.jp/~kubota/
Attachment:
lv4495a.diff.gz
Description: Binary data
Attachment:
lv4495b.diff.gz
Description: Binary data
Attachment:
lv4495c.diff.gz
Description: Binary data
Attachment:
lv4495d.diff.gz
Description: Binary data