SSブログ

ng-1.5beta1をUTF-8対応させてみた。 [ソフトウェア]

ここ10年以上OpenBSDを使っていたが、最近都合でFedoraCore 6も使い始めた。
OpenBSDでは漢字コードは仕事の都合もあってSJISメインで、日本語ファイル名はcapで適当なフィルタやらなんやらを作っていろいろ処理していた。
ちょっとした設定ファイルの編集などにkemacsを使っていたのだが、FedoraCore 6ではいろいろとUTF-8になっているようなのでいいまいちうまくない。
viでもいいんだが、emacs使いとしてはやっぱり軽量エディタもemacs系にしたい。
しょうがないので、ng-1.5beta1のファイルI/Oと入力と表示をUTF-8対応させてみた。

欲しい人はこちらからどうぞ

Ng サポートページから、ng-1.5beta1.tar.gz を拾ってきて、適当に展開したディレクトリで gunzip <ng-1.5beta1-utf8.patch.gz | patch -p1 して、./configure して make すれば動くと思う。
とりあえず、FedoraCore 6 x86-64と、OpenBSD3.5 i386ではコンパイルできて動いている。

kinit.h を見ればわかるが、デフォルトはすべてUTF-8になっている。
ファイル読み込み時の漢字コード判別は、EUCよりUTF-8優先になっている。
(>=0xc0 が先に現れた場合はUTF-8とみなしている)
そのため、コマンドラインオプションでglobal_kexpectを指定できるようにした。
-S (SJIS), -J (JIS), -E (EUC), -W (UTF-8)
EUCでファイルを読みたい場合、ng -E <file> とすればよい。
JIS→UCS-2, UCS-2→JISの変換テーブルが大きいのでバイナリのサイズが倍以上になるが、まあ、いまどきのPCなら問題ないだろう。

Ng サポートページにも送っておいたが、久しく更新されていないようなので、だれか必要としている人がいるかもしれないと思いここに公開しておく。

ついでにemacsで使うためにMSゴシックとMS明朝から10~22ピクセルのビットマップをBDFにした。
sbitRW.exeが使えるかと思ったら、なんだか「~」が抜けてしまっていたし、13区のNEC特殊文字やIBM拡張文字もなかったみたいなので、自前のツールを拡張して組み合わせてBDF化した。
このためのツールはちょっと公開できないか……


nice!(1)  コメント(7)  トラックバック(1) 

nice! 1

コメント 7

m

今頃発見しましたが、いいですねぇ。
emacs指なので、でも、emacs入れるのは重すぎるという環境では
いつも ng を入れていたのですが、 utf8が主流のこの時期にはちょっと
つらくなってきてました。が、復活。
ありがとうございます。
ちなみに、freebsd 8.0 で問題なく使えています。
by m (2010-03-03 21:53) 

pula

RaspberryPiを購入して、10年ぶりにLinuxいじっています。
ng探していたので助かりましたヽ(´▽`)ノ

by pula (2012-08-27 22:01) 

kimipooh

ng愛用していたので大変助かってます。

by kimipooh (2016-03-11 16:30) 

kimipooh

RedHat に導入する場合、
yum install ncurses-devel
としてライブラリを入れた上で、

./configure
make LDFLAGS=-lncurses
make install

で導入できました。
MacOS 10.10.5には、
./configure
Makefile内のCFLAGS行を「CFLAGS = -O2 $(CDEFS) -w -Wno-return-type」に変更
make
make install

でした。

by kimipooh (2016-03-11 16:43) 

いわもと こういち

×などのUTF-8で2バイトになる文字が正しく入力できなかったので修正してみました。
追加で https://gist.github.com/ttdoda/763bce5e80278c56de0f05967e2f2ad8 をあててみて下さい。
by いわもと こういち (2020-07-14 12:37) 

GK

UTF8対応パッチをありがとうございます.
「こちらからどうぞ」がリンク切れでした.
何年か前にダウンロードしたファイルが残っていたので試したところ,無事にFreeBSD12で使えました.
学生の頃からずっとngを愛用していますが,おかげさまでまだ使い続けられそうです.
by GK (2022-02-11 17:48) 

m

リンク切れですが、waybackmachine とかででこのサイトを検索し、2018年位のを選べばリンク先もダウンロードできます。
古いパッチを持ってない人はためしてみてください。

by m (2024-02-17 09:28) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 1

-|ガンダム無双 ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。