探検
nkfってなんだ
1名無しさん@お腹いっぱい。
NGNG 初心者です。ご指導おねがいします。
NGNG
kcc が最強なわけだが…
138愛・昆布 ◆qvkminQt6g
2005/03/28(月) 23:20:29 ぼくわこんぶがだいすきですぼくがこんぶがすきなところわおいしいからこんぶはすきですおでんのこんぶはぜんぶたべてしまっておとおさんにおこらいましたもうしないようにしないとおとおさんがこわいのでしません。
2005/03/29(火) 02:41:03
そのままアルジャーノンで
140名無しさん@お腹いっぱい。
2005/04/16(土) 07:42:34 iconvやuconvがあるからもうnkfとかqkcとか日本ローカルなものはいらないね
2005/04/16(土) 07:46:48
すごいね.2001年からのスレかよ.
2005/04/16(土) 08:12:36
2005/04/16(土) 08:21:26
ぐぐれば?
2005/04/16(土) 10:23:43
Non Korea Future
2005/04/16(土) 12:19:02
あがっちまったものはしょうがない、
文字コード変換総合スレということにでもしてみるか
文字コード変換総合スレということにでもしてみるか
2005/04/16(土) 12:36:17
iconv糞っていってるやつは、libiconvにパッチを当てるって事を
思いつかないんだろう。
思いつかないんだろう。
2005/04/16(土) 15:50:28
どのOSでもパッチをあてられるというわけでもなく。
2005/04/16(土) 17:26:19
自動認識の要求もそれなりにあるからなあ。
まあでもiconvに成功するまでいろんなencodingで試すというやりかたも
なくもないか。gonzuiはそうやっているらしい。
まあでもiconvに成功するまでいろんなencodingで試すというやりかたも
なくもないか。gonzuiはそうやっているらしい。
2005/04/16(土) 18:07:30
>>146
パッチ当てなきゃ糞っていうなら十分糞だと思うが?
パッチ当てなきゃ糞っていうなら十分糞だと思うが?
2005/04/17(日) 18:19:22
nkfのnってなんで?
2005/04/17(日) 18:34:19
nantonaku
kayuitokorowo
funsaishita
kayuitokorowo
funsaishita
2005/04/30(土) 13:09:03
Cのライブラリとしてつかえるのって、iconvとwkf以外にはなにがあります?
2005/06/11(土) 09:57:32
上書きしようとして -O をつけると無変換にならなくねが?おらがのバージョン2.04だども。
154名無しさん@お腹いっぱい。
2005/06/12(日) 08:27:41 age
155153
2005/06/13(月) 09:09:31 ヤバイ上書きは--overwriteらしい。今は反省している。
156名無しさん@お腹いっぱい。
2005/12/31(土) 17:24:03 > あいかわらず河野がかかわってるんじゃん。
tar xvf nkf203.tar # 最新版
grep -R . void
nkf.c: void (*status_func)PROTO((struct input_code *, int));
...
nkf.c: ** void@merope.pleiades.or.jp (Kusakabe Youichi)
tar xvf nkf203.tar # 最新版
grep -R . void
nkf.c: void (*status_func)PROTO((struct input_code *, int));
...
nkf.c: ** void@merope.pleiades.or.jp (Kusakabe Youichi)
2005/12/31(土) 17:55:31
fujitsu最大の成果物ということでよろしいでしょうか?
158名無しさん@お腹いっぱい。
2005/12/31(土) 18:02:43 でも河野さんはsonyでしょ。(当時)
2006/01/13(金) 15:10:58
--guess はバグってる?
% nkf --version
Network Kanji Filter Version 2.0.5 (2005-04-10)
Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa),2000 S. Kono, COW, 2002-2005 Kono, Furukawa, Naruse
% nkf --guess utf8
UTF-8
% nkf --guess utf8 utf8 utf8
utf8:UTF-8
utf8:EUC-JP
utf8:EUC-JP
% nkf --version
Network Kanji Filter Version 2.0.5 (2005-04-10)
Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa),2000 S. Kono, COW, 2002-2005 Kono, Furukawa, Naruse
% nkf --guess utf8
UTF-8
% nkf --guess utf8 utf8 utf8
utf8:UTF-8
utf8:EUC-JP
utf8:EUC-JP
160naruse
2006/01/16(月) 19:58:38 ごめんなさい、バグってます。
CVSでは nkf.c rev:1.71 治っておりますので、よろしければそちらをお使いください。
http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/nkf/nkf-2/nkf-utf8/nkf.c?rev=1.89&view=log#rev1.71
なお、2.0.6は桜が咲くころには出す予定です。
CVSでは nkf.c rev:1.71 治っておりますので、よろしければそちらをお使いください。
http://cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/nkf/nkf-2/nkf-utf8/nkf.c?rev=1.89&view=log#rev1.71
なお、2.0.6は桜が咲くころには出す予定です。
2006/01/16(月) 20:40:22
162成瀬 ◆NBGqNARUSE
2006/03/11(土) 14:09:50 えー、というわけで、そろそろ桜の花も咲きそうなので、
2.0.6を出したいなぁと思っているわけですが、迷っているのが一つ。
「nkf --overwrite が mtime を更新しない」
http://lists.sourceforge.jp/mailman/archives/nkf-dev/2006-March/000010.html
って直した方がいいですか?
数行の修正でいいはずなのですが、どちらがお好みなのかなーと。
ついでに、nkf 2.0.6での文字コードのマッピングは以下の通りになりますので、ご意見のある方はお早めに。
http://nkf.sourceforge.jp/ucm/
2.0.6を出したいなぁと思っているわけですが、迷っているのが一つ。
「nkf --overwrite が mtime を更新しない」
http://lists.sourceforge.jp/mailman/archives/nkf-dev/2006-March/000010.html
って直した方がいいですか?
数行の修正でいいはずなのですが、どちらがお好みなのかなーと。
ついでに、nkf 2.0.6での文字コードのマッピングは以下の通りになりますので、ご意見のある方はお早めに。
http://nkf.sourceforge.jp/ucm/
2006/03/11(土) 16:45:41
modify したんだから更新しといた方がいいんじゃない?
わりとどうでもいいけど。
わりとどうでもいいけど。
164名無しさん@お腹いっぱい。
2006/03/11(土) 16:48:26 過疎スレに書き込むなボケ
2006/03/11(土) 18:41:13
迷ったときはオプションを追加して泥沼化
166成瀬 ◆NBGqNARUSE
2006/03/11(土) 19:04:33 デフォルトでmtimeを更新するようにしたら、
cp -p を真似して、mtimeを更新しない -p オプションを追加する気ではいます。
>>164
わざわざageてくださってどうも、しかもツンデレで。
cp -p を真似して、mtimeを更新しない -p オプションを追加する気ではいます。
>>164
わざわざageてくださってどうも、しかもツンデレで。
2006/03/12(日) 20:21:51
168成瀬 ◆NBGqNARUSE
2006/03/12(日) 23:32:07 http://lists.sourceforge.jp/mailman/archives/nkf-dev/2006-March/000016.html
によると、--overwrite がatime/mtimeを保持するのは意図した動作らしいので、手をつけないことにしました。
というわけで、
* touchすれば更新できるのでそのままにしておく
* 更新するoverwriteを別途定義する
* tar風に --modification-time と --access-time を追加
かなぁ・・・。
perl/rubyの真似をして-i[extension]とかすると、既存のオプションにぶつかるのが悩み。
によると、--overwrite がatime/mtimeを保持するのは意図した動作らしいので、手をつけないことにしました。
というわけで、
* touchすれば更新できるのでそのままにしておく
* 更新するoverwriteを別途定義する
* tar風に --modification-time と --access-time を追加
かなぁ・・・。
perl/rubyの真似をして-i[extension]とかすると、既存のオプションにぶつかるのが悩み。
2006/03/12(日) 23:42:37
qkcの-jがくさってるってのは、具体的にどんな場合?
170成瀬 ◆NBGqNARUSE
2006/03/13(月) 00:08:33 >>169
おそらく、デフォルトでエスケープシーケンスが ESC $B と ESC (J になっていることではないかと。
/Jでなく、/BJを指定すればいいのですけれどね。
http://hp.vector.co.jp/authors/VA000501/htmlhelp/jisesc.html
http://hp.vector.co.jp/authors/VA000501/htmlhelp/cmdopt.html
おそらく、デフォルトでエスケープシーケンスが ESC $B と ESC (J になっていることではないかと。
/Jでなく、/BJを指定すればいいのですけれどね。
http://hp.vector.co.jp/authors/VA000501/htmlhelp/jisesc.html
http://hp.vector.co.jp/authors/VA000501/htmlhelp/cmdopt.html
171167
2006/03/13(月) 00:35:36 意図してやってるなら仕方ないですね。
とりあえずそのままで、タイムスタンプ変えたい人が多く出てきたらオプション新設、
とかでもいいように思います。
そういえば先日 Subversion でファイルを nkf --overwrite してからコミットしようとしたら
一向にコミットできなくてはまってしまった。
--overwrite のタイムスタンプの件は man に書いてなかったですよね?
とりあえずそのままで、タイムスタンプ変えたい人が多く出てきたらオプション新設、
とかでもいいように思います。
そういえば先日 Subversion でファイルを nkf --overwrite してからコミットしようとしたら
一向にコミットできなくてはまってしまった。
--overwrite のタイムスタンプの件は man に書いてなかったですよね?
172成瀬 ◆NBGqNARUSE
2006/03/13(月) 00:54:34 タイムスタンプの件はマニュアルには書いてありませんね。
とりあえずマニュアルは更新しておくことにします。
とりあえずマニュアルは更新しておくことにします。
173167
2006/03/13(月) 00:55:26 すんません、お手数かけます。
174167
2006/03/13(月) 10:10:02 思い出した。
今更なので、変えてくれという話ではなくて、素朴な疑問なのですが、
「--overwrite」って一般的なもんなんすかね?
GNU sed だと --in-place だったり Perl や Ruby だと -i ですよね。
今更なので、変えてくれという話ではなくて、素朴な疑問なのですが、
「--overwrite」って一般的なもんなんすかね?
GNU sed だと --in-place だったり Perl や Ruby だと -i ですよね。
175成瀬 ◆NBGqNARUSE
2006/03/13(月) 15:01:02 別名の案を考えるのにフィルタ系のコマンドを一通り調べてみたのですが、
* 相当するコマンドが無い
* デフォルトが上書き
がそもそも大多数で、わたしが見つけられたのはPerl/Rubyの-i[=extension]くらいでした。
sedは見たのですが、GNU sedには-i/--in-placeがあるのですか。
--overwriteを用いているのはnkfくらいのようですね。
-iは既存のオプションと衝突しているため使えないとして、
--in-placeを更新するoverwriteにするというのはありだと思います。
というか、--in-place[=SUFFIX] の拡張子を指定してバックアップはわたしも欲しいので、
この方向で実装してみます。
上書きを行うロングオプションで--in-place以上に有名なものってありませんよね?
なるべく長いものに巻かれておきたいのですけれど。
* 相当するコマンドが無い
* デフォルトが上書き
がそもそも大多数で、わたしが見つけられたのはPerl/Rubyの-i[=extension]くらいでした。
sedは見たのですが、GNU sedには-i/--in-placeがあるのですか。
--overwriteを用いているのはnkfくらいのようですね。
-iは既存のオプションと衝突しているため使えないとして、
--in-placeを更新するoverwriteにするというのはありだと思います。
というか、--in-place[=SUFFIX] の拡張子を指定してバックアップはわたしも欲しいので、
この方向で実装してみます。
上書きを行うロングオプションで--in-place以上に有名なものってありませんよね?
なるべく長いものに巻かれておきたいのですけれど。
176成瀬 ◆NBGqNARUSE
2006/03/21(火) 22:55:47 2.0.6 beta1 を出しました。
http://sourceforge.jp/projects/nkf/
ところで、今 nkf は -m がデフォルトで有効になっています。
これを、デフォルトで -m0 にしたいと思っているのですが、どう思います?
一応、コンパイルオプションでデフォルト -m / -m0 を切り替えられるようにして、
お茶を濁しつつ変えてしまおうかとも思っているのですけれど。
ちなみに、同様に意図しない変換を引き起こしうる、デフォルトが -X な件は、
--ic / --oc ではデフォルトで -x を含むようにしています。
http://sourceforge.jp/projects/nkf/
ところで、今 nkf は -m がデフォルトで有効になっています。
これを、デフォルトで -m0 にしたいと思っているのですが、どう思います?
一応、コンパイルオプションでデフォルト -m / -m0 を切り替えられるようにして、
お茶を濁しつつ変えてしまおうかとも思っているのですけれど。
ちなみに、同様に意図しない変換を引き起こしうる、デフォルトが -X な件は、
--ic / --oc ではデフォルトで -x を含むようにしています。
177名無しさん@お腹いっぱい。
2006/06/03(土) 16:36:10 SJISで全角'−'記号の0x817CをUTF-8Nの0xEFBC8Dに変換する
オプションを教えて欲しい。
普通にC:\>nkf -S -w test.sjs > test.utf8nとかしても
0xE28892に変換され、他のソフトに読み込むときうまく
読み込まれず苦労しています。
TeraPadで読み込んでUTF-8Nで変換すると0xEFBC8Dに変換されます。
あと、全角の'¥'記号が半角の'\'記号になってしまうのも。
オプションを教えて欲しい。
普通にC:\>nkf -S -w test.sjs > test.utf8nとかしても
0xE28892に変換され、他のソフトに読み込むときうまく
読み込まれず苦労しています。
TeraPadで読み込んでUTF-8Nで変換すると0xEFBC8Dに変換されます。
あと、全角の'¥'記号が半角の'\'記号になってしまうのも。
2006/06/04(日) 01:42:56
人に聞くよりソース読んじゃった方が早くね?
2006/06/04(日) 10:55:14
180177
2006/06/04(日) 17:35:32 nkfのVersionはたしか2.07betaだと思う。
Vectorでダウンロードしたやつで、
色んなVersionが同梱されていました。
因みにiconvってWindowsで使えるの?
Vectorでダウンロードしたやつで、
色んなVersionが同梱されていました。
因みにiconvってWindowsで使えるの?
2006/06/04(日) 20:39:13
それだとあなたの言う動作になっているね。
2.0の頃は¥のままだったんだけど。
iconvはcygwinに入っているよ。
2.0の頃は¥のままだったんだけど。
iconvはcygwinに入っているよ。
2006/06/04(日) 22:30:08
--cp932
183177
2006/06/05(月) 08:47:49184名無しさん@お腹いっぱい。
2006/06/05(月) 09:15:25185成瀬 ◆NBGqNARUSE
2006/06/16(金) 03:28:54 今更だけどフォロー
>>177 >>183
現在の nkf はデフォルトでは ASCII の範囲はそのまま、
それ以外はJISのマッピングに準拠したマッピングにしています。
Windows の変換と同じ変換、すなわち CP932 互換の変換をしたい場合は、
--cp932 で行うことができます。
なお 2.0.6 では nkf --ic=CP932 --oc=UTF-8 と、iconv っぽく使えます。
>>179 >>180
行う変換がどのマッピングなのか把握しているならば iconv が適当です。
Windows なら香り屋さんのが楽 http://www.kaoriya.net/#LIBICONV
>>184
*_getc -> kanji_convert -> *_iconv -> *_conv -> *_oconv -> *_putc
という流れを把握すれば、多少はいじるのが楽になるかも。
グローバル変数の嵐ですけどね・・・。
> Subjectに、8ビット文字入れてくる汚物メールを検出するフィルタ。
ならば、*_getc の追加でいけるかな。
grep -E '[^[:cntrl:][:print:]]' で済みそうだけど。
>>177 >>183
現在の nkf はデフォルトでは ASCII の範囲はそのまま、
それ以外はJISのマッピングに準拠したマッピングにしています。
Windows の変換と同じ変換、すなわち CP932 互換の変換をしたい場合は、
--cp932 で行うことができます。
なお 2.0.6 では nkf --ic=CP932 --oc=UTF-8 と、iconv っぽく使えます。
>>179 >>180
行う変換がどのマッピングなのか把握しているならば iconv が適当です。
Windows なら香り屋さんのが楽 http://www.kaoriya.net/#LIBICONV
>>184
*_getc -> kanji_convert -> *_iconv -> *_conv -> *_oconv -> *_putc
という流れを把握すれば、多少はいじるのが楽になるかも。
グローバル変数の嵐ですけどね・・・。
> Subjectに、8ビット文字入れてくる汚物メールを検出するフィルタ。
ならば、*_getc の追加でいけるかな。
grep -E '[^[:cntrl:][:print:]]' で済みそうだけど。
2006/12/08(金) 02:57:52
IDに注目。
なんかうれしい。
なんかうれしい。
187186
2006/12/08(金) 03:00:07 俺はバカだ。ここはUNIX板じゃないか(泣
(ちなみに俺の今の -> "nkf2PDI3")
(ちなみに俺の今の -> "nkf2PDI3")
188成瀬 ◆NBGqNARUSE
2006/12/09(土) 03:04:13 おめw
189名無しさん@お腹いっぱい。
2007/01/19(金) 11:03:37 バグでしょか? 2.0.7 と CVS 先端で再現します。
1. MIME デコードしたりしなかったりする
% nkf -e
あいうえお =?iso-2022-jp?b?GyRCJCIbKEI=?=
あいうえお =?iso-2022-jp?b?GyRCJCIbKEI=?=
% nkf -e
こんにちは =?iso-2022-jp?b?GyRCJCIbKEI=?=
こんにちは あ
2. UTF-8 だと MIME デコード部分が化ける
% nkf -w
あいうえお =?iso-2022-jp?b?GyRCJCIbKEI=?=
あいうえお $"
% nkf -w
こんにちは =?iso-2022-jp?b?GyRCJCIbKEI=?=
こんにちは =?iso-2022-jp?b?GyRCJCIbKEI=?=
1. MIME デコードしたりしなかったりする
% nkf -e
あいうえお =?iso-2022-jp?b?GyRCJCIbKEI=?=
あいうえお =?iso-2022-jp?b?GyRCJCIbKEI=?=
% nkf -e
こんにちは =?iso-2022-jp?b?GyRCJCIbKEI=?=
こんにちは あ
2. UTF-8 だと MIME デコード部分が化ける
% nkf -w
あいうえお =?iso-2022-jp?b?GyRCJCIbKEI=?=
あいうえお $"
% nkf -w
こんにちは =?iso-2022-jp?b?GyRCJCIbKEI=?=
こんにちは =?iso-2022-jp?b?GyRCJCIbKEI=?=
2007/01/19(金) 12:18:29
MIMEのオプションも指定しなきゃだめだよ
191189
2007/01/19(金) 13:37:092007/01/20(土) 00:07:52
nandedaro
kizukebakokanni
fuzisanga...
kizukebakokanni
fuzisanga...
2007/01/20(土) 00:26:24
あいうえお =?iso-2022-jp?b?gqA=?=
194成瀬 ◆NBGqNARUSE
2007/01/21(日) 07:32:24 とりあえず現状を。
1. エンコーディングの確定前にMIME文字列が出現した場合認識しない
2. 一部のエンコーディングでMIME encodeされたJISな文字列が文字化け
の二つの問題と認識しています。
後者は手元で修正しました。
前者は現在ちとてこずっています。
回避方法としては、エンコーディングがわかる場合は明示的に指定する、になります。
1. エンコーディングの確定前にMIME文字列が出現した場合認識しない
2. 一部のエンコーディングでMIME encodeされたJISな文字列が文字化け
の二つの問題と認識しています。
後者は手元で修正しました。
前者は現在ちとてこずっています。
回避方法としては、エンコーディングがわかる場合は明示的に指定する、になります。
195189
2007/01/21(日) 14:59:59 前者の方ですが、確かに入力のエンコーディングを指定したらうまくいきました。
自動判定が絡んでくるとなると厄介そうなのはなんとなく想像つきますので、
あまり期待しないで期待しておきます(?)。
対応ありがとうございます。
自動判定が絡んでくるとなると厄介そうなのはなんとなく想像つきますので、
あまり期待しないで期待しておきます(?)。
対応ありがとうございます。
196189
2007/01/30(火) 16:59:22 CVS 先端で後者の方が直っていました。ありがとうございました。
2007/11/17(土) 12:16:02
198成瀬 ◆NBGqNARUSE
2007/11/18(日) 06:47:45 >>197
わたしも微妙な仕様で正直変えたいと思っているのですが、
調べたところどうも1.7あたりから導入されているらしく、
いまさらそう簡単には変えられないというのが現状です。
っと思っていたのですが、Ruby1.9にあわせてnkfを2.1にし、
そこでこの手の変えづらかった仕様に手を入れてしまうのもありな気がしてきました。
少し検討してみます。
わたしも微妙な仕様で正直変えたいと思っているのですが、
調べたところどうも1.7あたりから導入されているらしく、
いまさらそう簡単には変えられないというのが現状です。
っと思っていたのですが、Ruby1.9にあわせてnkfを2.1にし、
そこでこの手の変えづらかった仕様に手を入れてしまうのもありな気がしてきました。
少し検討してみます。
199197
2007/11/18(日) 12:20:20 真面目なレスありがとう。
過去のnkf利用scriptが走馬灯のように思い浮かんで欝になりました。
-Xがdefaultである件も、前から何だかなーと思ってます。
出力がISO-2022-JPの場合は仕方ないんだけど。
過去のnkf利用scriptが走馬灯のように思い浮かんで欝になりました。
-Xがdefaultである件も、前から何だかなーと思ってます。
出力がISO-2022-JPの場合は仕方ないんだけど。
200成瀬 ◆NBGqNARUSE
2007/11/19(月) 17:11:54 >>199
とりあえずMIME decodeの方はconfig.hに
#define MIME_DECODE_DEFAULT FALSE
とでも書いてmakeすればデフォルト無効になります。
-Xの方はソース眺めていて-Iとの絡みが謎なので解読中。
似た方法でデフォルトを変えられるようにする方向です。
あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。
とりあえずMIME decodeの方はconfig.hに
#define MIME_DECODE_DEFAULT FALSE
とでも書いてmakeすればデフォルト無効になります。
-Xの方はソース眺めていて-Iとの絡みが謎なので解読中。
似た方法でデフォルトを変えられるようにする方向です。
あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。
2007/11/19(月) 22:12:40
>>200
> あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。
あ、それあると嬉しい。
man あたりに "DEFAULT FLAGS" みたいなエントリ作れば良いのでは?
--help やって気付いたけど、標準エラー出力に投げるんだね。
これはソース見てすぐにどこいじれば標準出力に変更できるか分かったけど。
> あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。
あ、それあると嬉しい。
man あたりに "DEFAULT FLAGS" みたいなエントリ作れば良いのでは?
--help やって気付いたけど、標準エラー出力に投げるんだね。
これはソース見てすぐにどこいじれば標準出力に変更できるか分かったけど。
2007/11/20(火) 03:03:24
>>201
>> あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。
>あ、それあると嬉しい。
>man あたりに "DEFAULT FLAGS" みたいなエントリ作れば良いのでは?
コンパイルオプションは最終的にconfigureで設定できるようにする予定なのですが、
こっちはNKF.pmのコンパイルが微妙になることに気づいてどうしようかなとか。
ていうか、Encode.pmが標準添付なこの時代にNKF.pmとか使う人いるんだろうか。
# Encodeをたたくラッパーでいい気がするよね。
>--help やって気付いたけど、標準エラー出力に投げるんだね。
ですね、以前に微妙かと思って手元にあったコマンドがどこにヘルプ投げるか調べたら、
どっちもあったんですが、標準出力の方がいいですか?
>> あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。
>あ、それあると嬉しい。
>man あたりに "DEFAULT FLAGS" みたいなエントリ作れば良いのでは?
コンパイルオプションは最終的にconfigureで設定できるようにする予定なのですが、
こっちはNKF.pmのコンパイルが微妙になることに気づいてどうしようかなとか。
ていうか、Encode.pmが標準添付なこの時代にNKF.pmとか使う人いるんだろうか。
# Encodeをたたくラッパーでいい気がするよね。
>--help やって気付いたけど、標準エラー出力に投げるんだね。
ですね、以前に微妙かと思って手元にあったコマンドがどこにヘルプ投げるか調べたら、
どっちもあったんですが、標準出力の方がいいですか?
2007/11/21(水) 00:17:27
>>202
>>--help やって気付いたけど、標準エラー出力に投げるんだね。
> ですね、以前に微妙かと思って手元にあったコマンドがどこにヘルプ投げるか調べたら、
> どっちもあったんですが、標準出力の方がいいですか?
量が多い時にページャに渡すときに一手間増えるかなと。
といっても 2>&1 を追加するだけなんで、あまり気にしなくておk。
>>--help やって気付いたけど、標準エラー出力に投げるんだね。
> ですね、以前に微妙かと思って手元にあったコマンドがどこにヘルプ投げるか調べたら、
> どっちもあったんですが、標準出力の方がいいですか?
量が多い時にページャに渡すときに一手間増えるかなと。
といっても 2>&1 を追加するだけなんで、あまり気にしなくておk。
2007/11/21(水) 17:17:45
デフォールト・オプション大変りなnkfは、nkf3として、
/usr/bin/nkf
/usr/bin/nkf3
が共存できるようにするとか。
Debian的には、
/usr/bin/nkf2
/usr/bin/nkf3
/usr/bin/nkf→/etc/alternatives/nkf→/usr/bin/nkf2
/usr/share/man/man1/nkf.1→/etc/alternatives/nkf.1→/usr/share/man/man1/nkf2.1
な感じ。update-alternatives --set nkf /usr/bin/nkf3で切り替え。
/usr/bin/nkf
/usr/bin/nkf3
が共存できるようにするとか。
Debian的には、
/usr/bin/nkf2
/usr/bin/nkf3
/usr/bin/nkf→/etc/alternatives/nkf→/usr/bin/nkf2
/usr/share/man/man1/nkf.1→/etc/alternatives/nkf.1→/usr/share/man/man1/nkf2.1
な感じ。update-alternatives --set nkf /usr/bin/nkf3で切り替え。
2007/11/22(木) 14:10:01
nkf3 って名前で install するのは .deb のパッケージシステムで
(すまん俺 .rpm なシステムしか知らん)やる事じゃまいか?
問題になるようなら他のシステム(portsとか)でも多分そうすると思う。
コンフィグorメイクのオプションで設定可能にするのは構わないと
思うがデフォルトを nkf3 にするのはどうかと。
(すまん俺 .rpm なシステムしか知らん)やる事じゃまいか?
問題になるようなら他のシステム(portsとか)でも多分そうすると思う。
コンフィグorメイクのオプションで設定可能にするのは構わないと
思うがデフォルトを nkf3 にするのはどうかと。
2007/11/23(金) 01:00:12
debianだと、たとえ本家がnkf-2.1だろうと、
メインテナが互換性上別にした方がいいと考えたらnkf3_2.1になる。
だから気にしないでいい。
メインテナが互換性上別にした方がいいと考えたらnkf3_2.1になる。
だから気にしないでいい。
207成瀬 ◆NBGqNARUSE
2007/12/07(金) 13:25:21 とりあえず config.h で -m と -x のデフォルトを変えられるようにしました。
#define MIME_DECODE_DEFAULT 0
#define X0201_DEFAULT 0
で -m0 -x を指定しているのと同じ状態になります。
また、nkf -V でコンパイルオプションを表示するようにしました。
Summary of my nkf 2.0.8 (2007-12-07) configuration:
Compile-time options:
Default output encoding: ISO-2022-JP
Decode MIME encoded string: OFF
Convert JIS X 0201 Katakana: OFF
例えばこんな感じ。
なお、この修正に伴い -x 関連のコードを整理した影響で、-I -x の動作に変更があります。
旧来 -I -x では半角カタカナの入力に対して、半角カタカナを出力していましたが、
これからはゲタを返すようになります。
#define MIME_DECODE_DEFAULT 0
#define X0201_DEFAULT 0
で -m0 -x を指定しているのと同じ状態になります。
また、nkf -V でコンパイルオプションを表示するようにしました。
Summary of my nkf 2.0.8 (2007-12-07) configuration:
Compile-time options:
Default output encoding: ISO-2022-JP
Decode MIME encoded string: OFF
Convert JIS X 0201 Katakana: OFF
例えばこんな感じ。
なお、この修正に伴い -x 関連のコードを整理した影響で、-I -x の動作に変更があります。
旧来 -I -x では半角カタカナの入力に対して、半角カタカナを出力していましたが、
これからはゲタを返すようになります。
208201
2007/12/16(日) 17:44:56 >>207
> また、nkf -V でコンパイルオプションを表示するようにしました。
GJ。
と言いたいところなんだが、手元でコンパイルして表示してみたら
Default output encoding: と下の二行の表示位置が空白一個分
ずれてるよ。
$ diff nkf.c.orig nkf.c
6183c6183
< fprintf(stderr, "(空白4個)Default output encoding:(空白6個)"
---
> fprintf(stderr, "(空白4個)Default output encoding:(空白5個)"
> また、nkf -V でコンパイルオプションを表示するようにしました。
GJ。
と言いたいところなんだが、手元でコンパイルして表示してみたら
Default output encoding: と下の二行の表示位置が空白一個分
ずれてるよ。
$ diff nkf.c.orig nkf.c
6183c6183
< fprintf(stderr, "(空白4個)Default output encoding:(空白6個)"
---
> fprintf(stderr, "(空白4個)Default output encoding:(空白5個)"
2007/12/30(日) 01:49:03
nkfを次の様に使ってますが稀に文字化けします、文字化けしないような使い方がありますか?
mplayer ファイル名 | nkf -wu
文字化けの例
ファイル名は05.バレエ組曲「くるみ割り人形」アラビアの踊り.mp3
略
Failed to open LIRC support. You will not be able to use your remote control.
Playing 05.繝舌Ξ繧ィ邨峇縲後\繧九∩蜑イ繧贋ココ蠖「縲阪い繝ゥ繝薙い縺ョ雕翫j.mp3.
Audio file file format detected.
Clip info:
Title: チャイコフスキー バレエ組曲「
Artist: トスカニーニ指揮 NBC交響楽
略
ロケールはutf8でID3タグがsjisです
mplayer ファイル名 | nkf -wu
文字化けの例
ファイル名は05.バレエ組曲「くるみ割り人形」アラビアの踊り.mp3
略
Failed to open LIRC support. You will not be able to use your remote control.
Playing 05.繝舌Ξ繧ィ邨峇縲後\繧九∩蜑イ繧贋ココ蠖「縲阪い繝ゥ繝薙い縺ョ雕翫j.mp3.
Audio file file format detected.
Clip info:
Title: チャイコフスキー バレエ組曲「
Artist: トスカニーニ指揮 NBC交響楽
略
ロケールはutf8でID3タグがsjisです
2007/12/30(日) 02:20:45
ファイル名がutf8なんだろ。
213成瀬 ◆NBGqNARUSE
2007/12/30(日) 17:15:04 nkf は行ごとに文字コードを判定することもあったようなその部分は壊したような、
とりあえず、ID3タグのみがShift_JIS (たぶんCP932)なのですから、そこだけ変換するべきでしょう。
mplayer | ruby -nrnkf -e'puts /^(Title|Artist)/=~$_ ? NKF.nkf("-w --ic=cp932",$_) : $_'
これだとバッファ周りがだめそうですが
とりあえず、ID3タグのみがShift_JIS (たぶんCP932)なのですから、そこだけ変換するべきでしょう。
mplayer | ruby -nrnkf -e'puts /^(Title|Artist)/=~$_ ? NKF.nkf("-w --ic=cp932",$_) : $_'
これだとバッファ周りがだめそうですが
214210
2007/12/31(月) 01:36:18 ありがとうございます
rubyさっぱりわからないですが試してみました
ファイル名は変換されますがID3タグが化けます、
それよりも秒数がまとめて出力されてしまう
Title: `CRtXL[ o
Gg
ネu
Artist: gXJj[jw
@mab
?
ソ
y
Album: o
Gg
ネuュ鰡
鑞
`v
ファイル名が"05.バレエ組曲「くるみ割り人形」 アラビアの踊り.mp3"なら
-wu で認識してくれるのだけど
rubyさっぱりわからないですが試してみました
ファイル名は変換されますがID3タグが化けます、
それよりも秒数がまとめて出力されてしまう
Title: `CRtXL[ o
Gg
ネu
Artist: gXJj[jw
@mab
?
ソ
y
Album: o
Gg
ネuュ鰡
鑞
`v
ファイル名が"05.バレエ組曲「くるみ割り人形」 アラビアの踊り.mp3"なら
-wu で認識してくれるのだけど
215成瀬 ◆NBGqNARUSE
2007/12/31(月) 17:59:12 あー、秒数とかがダメか。
てっとり早い解決策は、ID3タグをID3v2 (Unicode)に変換することじゃないかなぁ。
一括変換できるソフトはSTEPくらいしか知りませんが。
http://hp.vector.co.jp/authors/VA012911/
それ以外だとファイル名が化けるのはあきらめて nkf -uwS とかかな。
結局のところ出力がUTF-8の行とShift_JISの行が混在しているのが問題なので、
そろえてしまわないと解決は面倒になります。
てっとり早い解決策は、ID3タグをID3v2 (Unicode)に変換することじゃないかなぁ。
一括変換できるソフトはSTEPくらいしか知りませんが。
http://hp.vector.co.jp/authors/VA012911/
それ以外だとファイル名が化けるのはあきらめて nkf -uwS とかかな。
結局のところ出力がUTF-8の行とShift_JISの行が混在しているのが問題なので、
そろえてしまわないと解決は面倒になります。
216210
2008/01/06(日) 21:14:58 ID3タグをUnicodeにすることも考えましたが
そうすると他の機器で文字化けが、、、
mplayerでファイル名が化けることはそんなにないので
当面このままでいきます、ありがとう
そうすると他の機器で文字化けが、、、
mplayerでファイル名が化けることはそんなにないので
当面このままでいきます、ありがとう
217成瀬 ◆NBGqNARUSE
2008/01/21(月) 17:12:26 先日デフォルトの出力エンコーディングを指定できるようにしたわけですが、
よくよく考えればロケール見て決めてくれよと思いつく。。。
よくよく考えればロケール見て決めてくれよと思いつく。。。
2008/01/24(木) 02:29:18
2008/01/24(木) 11:16:16
うーん。locale見るのはUIのレイヤでやってほしいかなぁ
内部のエンジンがそういう暗黙の挙動をするのは嬉しくないかも
内部のエンジンがそういう暗黙の挙動をするのは嬉しくないかも
2008/01/24(木) 15:08:10
>>218
Ruby 1.9 だと Encoding.locale_charmap がエンコーディング名とか、
Encoding.default_external がエンコーディングオブジェクトとかありますが、
Kconv に tolocale とこっそりつっこんだので、これ使うと楽です。
>>219
> うーん。locale見るのはUIのレイヤでやってほしいかなぁ
> 内部のエンジンがそういう暗黙の挙動をするのは嬉しくないかも
基本的には nkf コマンドの UI 部の機能という見解ですが、ライブラリとしての話でしょうか。
その場合は出力エンコーディングを指定してよという話になるわけですが。
ちなみに、今まではなにもいじらなければ JIS がデフォルトだったのでそれってどうよ、だったと。
Ruby 1.9 だと Encoding.locale_charmap がエンコーディング名とか、
Encoding.default_external がエンコーディングオブジェクトとかありますが、
Kconv に tolocale とこっそりつっこんだので、これ使うと楽です。
>>219
> うーん。locale見るのはUIのレイヤでやってほしいかなぁ
> 内部のエンジンがそういう暗黙の挙動をするのは嬉しくないかも
基本的には nkf コマンドの UI 部の機能という見解ですが、ライブラリとしての話でしょうか。
その場合は出力エンコーディングを指定してよという話になるわけですが。
ちなみに、今まではなにもいじらなければ JIS がデフォルトだったのでそれってどうよ、だったと。
2008/01/24(木) 19:36:37
nkf"コマンド"ではやって欲しいな
222成瀬 ◆NBGqNARUSE
2008/01/24(木) 21:32:52 Ruby 拡張ライブラリだとどうしましょうかね。
* 今まで通りデフォルト JIS
* いやいや時代は UTF-8
* 自力でロケールはないとして、
* Encoding.locale_charmap
* Encoding.default_external
* 指定しないとエラー
* 今まで通りデフォルト JIS
* いやいや時代は UTF-8
* 自力でロケールはないとして、
* Encoding.locale_charmap
* Encoding.default_external
* 指定しないとエラー
2008/01/25(金) 02:42:31
2008/01/25(金) 11:22:34
nkfを使うということをプログラマが選択した時点で、
コード変換に注意を向けているわけですから、指定しないとエラー、
がいいんじゃないですかねぇ。
こっちじゃ動いたけどあっちじゃ動かない、系のトラブルも
回避できますし。
コード変換に注意を向けているわけですから、指定しないとエラー、
がいいんじゃないですかねぇ。
こっちじゃ動いたけどあっちじゃ動かない、系のトラブルも
回避できますし。
2008/03/01(土) 20:48:25
nkf --guessで、ファイル名も表示する方法ない?
複数ファイル入れた時は、表示されるんだが・・・
複数ファイル入れた時は、表示されるんだが・・・
226成瀬 ◆NBGqNARUSE
2008/03/01(土) 21:43:27 nkf 単体でやる方法はありませんね。
常にファイル名表示ーするとたぶん問題なんだろうなぁ。
常にファイル名表示ーするとたぶん問題なんだろうなぁ。
2008/03/01(土) 23:04:38
/dev/nullを加えてnkf -gしてgrep -v /dev/nullする
2008/03/01(土) 23:11:45
先にecho -nしとこうぜ
2008/04/12(土) 02:41:18
フォルダー内のテキストやHtmlを一括で漢字エンコードするソフトを教えて下さいと2chで頼んだら
こちらのソフトを教えていただきました
下記アドレスを見たんですけど使い方がさっぱりわかりません
ttp://sourceforge.jp/projects/nkf/document/nkf-man-2_0_6-ja/ja/4/nkf-man-2_0_6-ja.txt
このツールで大量のテキストのエンコードを一括変換させるにはどのようにすればいいのでしょうか?
Windows xp
フォルダー内にはEUCのものとUTF-8のものとがあります
これらのファイルを一括でS-JISに変更させる方法を教えて下さい
オプションの説明ばかりでもしかして1ファイルづつの操作なのでしょうか?
一括変換の方法も書いてあるのかもしれないけど
疲れて最後までよめませんでした
どなたかわかるかたお願いします
こちらのソフトを教えていただきました
下記アドレスを見たんですけど使い方がさっぱりわかりません
ttp://sourceforge.jp/projects/nkf/document/nkf-man-2_0_6-ja/ja/4/nkf-man-2_0_6-ja.txt
このツールで大量のテキストのエンコードを一括変換させるにはどのようにすればいいのでしょうか?
Windows xp
フォルダー内にはEUCのものとUTF-8のものとがあります
これらのファイルを一括でS-JISに変更させる方法を教えて下さい
オプションの説明ばかりでもしかして1ファイルづつの操作なのでしょうか?
一括変換の方法も書いてあるのかもしれないけど
疲れて最後までよめませんでした
どなたかわかるかたお願いします
2008/04/12(土) 03:27:29
悪いこといわんから、Windows用の専用ツール使いなよ。
窓の杜行けばあるでしょ。
窓の杜行けばあるでしょ。
2008/04/12(土) 03:37:34
>>230
えっそうなんですか
もうひとつ漢字とらんさーというツールも教えてもらったんだけど
フォルダーごとエンコードしてみたら2割くらいはバイナリかもしれないと
エンコード出来なかった表示がでてきた
それでファイルを1枚づつ確認してみたら
見事に1枚もエンコード変換できていませんでした
nkfに期待してるのですが
使い方わかんないよ
レスありがと
気が向いたら使用方法教えて下さいね
おやすみ
えっそうなんですか
もうひとつ漢字とらんさーというツールも教えてもらったんだけど
フォルダーごとエンコードしてみたら2割くらいはバイナリかもしれないと
エンコード出来なかった表示がでてきた
それでファイルを1枚づつ確認してみたら
見事に1枚もエンコード変換できていませんでした
nkfに期待してるのですが
使い方わかんないよ
レスありがと
気が向いたら使用方法教えて下さいね
おやすみ
2008/04/12(土) 03:50:01
nkfの自動判別使った奴があるから探して使いなよ。
nkfでやりたかったら、↓のシェルスクリプト使いな。
#! /bin/sh
for i in "$@"; do
mv "$i" "$i.org"
nkf -s "$i.org" > "$i"
done
けどツール探した方が速いと思うよ、あなたの場合。
nkfでやりたかったら、↓のシェルスクリプト使いな。
#! /bin/sh
for i in "$@"; do
mv "$i" "$i.org"
nkf -s "$i.org" > "$i"
done
けどツール探した方が速いと思うよ、あなたの場合。
2008/04/12(土) 04:16:15
2008/08/28(木) 02:12:18
最近 nkf のリリース無いね。
SourceForge 見る限りではメンテはされているみたいだけど。
そろそろ 2.0.9 とかが出てもいい頃だと思うんだけど。
SourceForge 見る限りではメンテはされているみたいだけど。
そろそろ 2.0.9 とかが出てもいい頃だと思うんだけど。
2008/08/29(金) 06:02:01
どのような変更を期待なさっているので
2008/11/05(水) 21:10:48
レスを投稿する
ニュース
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★2 [ニョキニョキ★]
- 日本と中国を結ぶ12航空路線で全便欠航 中国人に最も人気の海外旅行先は日本から韓国に [ぐれ★]
- 米中電話会談、トランプ氏は「米国側は中国にとっての台湾問題の重要性を理解する」 [1ゲットロボ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★3 [ぐれ★]
- 【音楽】「なんでこんなバカが国のトップなの?」 若者に人気のバンド「GEZAN」のマヒトゥ・ザ・ピーポーが高市総理に苦言 [シャチ★]
- 【国際】トランプ氏、来年4月に中国を訪問する招待を受け入れる 習氏も国賓で訪米へ 電話会談 [ぐれ★]
- 【高市悲報】来年、習近平主席がアメリカに「国賓」として訪米。どうするんだよ高市・・・アメリカも敵に回すのか? [483862913]
- 【悲報】有名配信者さん、公式大会で小学生の前で奇行して炎上して逆ギレwwwwwwwwwwwwwwwwww [856698234]
- フィフィ「外国人だろうが日本人だろうが反日は要らんのよ、この国に…自分にとって住みやすい国に行け。」 [856698234]
- 猟友会ハンター「警察や自衛隊の力を借りてのクマ駆除は大歓迎。肉の加工など 駆除の後についてもしっかりと話を進めてほしい」 [932029429]
- 【高市悲報】トランプおやびん「偉大な指導者である習近平首席、米国は中国にとっての台湾問題の重要性を理解しています」 [115996789]
- 4Kって綺麗か?
