1 名前:名無しさん@お腹いっぱい。 [01/11/08 16:57.net] 初心者です。ご指導おねがいします。
118 名前:ななし mailto:sage [03/03/27 23:49.net] iconv の "i" って "imouto" の事?
119 名前:名無しさん@お腹いっぱい。 mailto:sage [03/03/29 10:26.net] >>118 そうだよバカ
120 名前:山崎渉 mailto:(^^) [03/04/17 12:08.net] (^^)
121 名前:あぼーん mailto:あぼーん [あぼーん.net] あぼーん
122 名前:名無しさん@お腹いっぱい。 [03/06/02 23:43.net] 判別だけの動作も出来て、utf8も扱えるフィルタきぼんぬ qkcをutf8対応にするか、nkfに判別機能を付けるかかなあ。
123 名前:クソスレあげんな! mailto:sage [03/06/02 23:56.net] 続きはこちらで THE他力本願 pc.2ch.net/test/read.cgi/unix/1030870657/l50 くだらない質問はここに書き込め!なんでもアリ24 pc.2ch.net/test/read.cgi/unix/1053748966/l50
124 名前:名無しさん@お腹いっぱい。 mailto:sage [03/06/03 00:17.net] nkfのソース覗いてみたら、--debugオプションハッケソ これで判別の用は足りそう。 somewhere% nkf --debug hoge.txt > /dev/null UTF-8 somewhere% まあこれに免じてageちったのは許してちょ
125 名前:あぼーん mailto:あぼーん [あぼーん.net] あぼーん
126 名前:名無しさん@お腹いっぱい。 mailto:sage [03/10/04 22:50.net] UNIX何でも相談室(無料) OI2O-69-OI96
127 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/15 23:01.net] test
128 名前:名無しさん@お腹いっぱい。 mailto:sage もん [04/06/20 19:59.net] すげえ、1年以上意味のあるカキコのないスレッドだよ
129 名前:名無しさん@お腹いっぱい。 mailto:sageよもん [04/06/20 21:17.net] 本当だ 珍しいスレだ
130 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/24 21:11.net] うん、記念ぱピコだ
131 名前:名無しさん@お腹いっぱい。 mailto:sage [04/06/28 13:01.net] UNIX板では, そんなスレぜんぜん珍しくないんだよもん. 過疎だよもん?
132 名前:名無しさん@お腹いっぱい。 [04/07/02 03:02.net] 底上げ
133 名前:名無しさん@お腹いっぱい。 mailto:sage [04/07/03 03:28.net] あーあ やっちゃったよこの人
134 名前:名無しさん@お腹いっぱい。 mailto:sage [04/07/03 04:10.net] 二歩ですけどね。
135 名前:名無しさん@お腹いっぱい。 [04/07/17 22:03.net] うまちょびれ〜っ!
136 名前:名無しさん@お腹いっぱい。 [04/07/20 00:00.net] ioscan -nkf これじゃないの?
137 名前:名無しさん@お腹いっぱい。 mailto:sage [04/09/08 16:22.net] kcc が最強なわけだが…
138 名前:愛・昆布 ◆qvkminQt6g [2005/03/28(月) 23:20:29 .net] ぼくわこんぶがだいすきですぼくがこんぶがすきなところわおいしいからこんぶはすきですおでんのこんぶはぜんぶたべてしまっておとおさんにおこらいましたもうしないようにしないとおとおさんがこわいのでしません。
139 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/03/29(火) 02:41:03 .net] そのままアルジャーノンで
140 名前:名無しさん@お腹いっぱい。 [2005/04/16(土) 07:42:34 .net] iconvやuconvがあるからもうnkfとかqkcとか日本ローカルなものはいらないね
141 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/16(土) 07:46:48 .net] すごいね.2001年からのスレかよ.
142 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/16(土) 08:12:36 .net] >>140 iconv や nkf, qkc を一緒くたに比較しちゃう時点でアレとかいうのは置いといて、 uconv ってなんじゃい?
143 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/16(土) 08:21:26 .net] ぐぐれば?
144 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/16(土) 10:23:43 .net] Non Korea Future
145 名前:名無しさん@お腹いっぱい。 mailto:δsage [2005/04/16(土) 12:19:02 .net] あがっちまったものはしょうがない、 文字コード変換総合スレということにでもしてみるか
146 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/16(土) 12:36:17 .net] iconv糞っていってるやつは、libiconvにパッチを当てるって事を 思いつかないんだろう。
147 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/16(土) 15:50:28 .net] どのOSでもパッチをあてられるというわけでもなく。
148 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/16(土) 17:26:19 .net] 自動認識の要求もそれなりにあるからなあ。 まあでもiconvに成功するまでいろんなencodingで試すというやりかたも なくもないか。gonzuiはそうやっているらしい。
149 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/16(土) 18:07:30 .net] >>146 パッチ当てなきゃ糞っていうなら十分糞だと思うが?
150 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/17(日) 18:19:22 .net] nkfのnってなんで?
151 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/17(日) 18:34:19 .net] nantonaku kayuitokorowo funsaishita
152 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/04/30(土) 13:09:03 .net] Cのライブラリとしてつかえるのって、iconvとwkf以外にはなにがあります?
153 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/06/11(土) 09:57:32 .net] 上書きしようとして -O をつけると無変換にならなくねが?おらがのバージョン2.04だども。
154 名前:名無しさん@お腹いっぱい。 [2005/06/12(日) 08:27:41 .net] age
155 名前:153 mailto:sage [2005/06/13(月) 09:09:31 .net] ヤバイ上書きは--overwriteらしい。今は反省している。
156 名前:名無しさん@お腹いっぱい。 [2005/12/31(土) 17:24:03 .net] > あいかわらず河野がかかわってるんじゃん。 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)
157 名前:名無しさん@お腹いっぱい。 mailto:sage [2005/12/31(土) 17:55:31 .net] fujitsu最大の成果物ということでよろしいでしょうか?
158 名前:名無しさん@お腹いっぱい。 [2005/12/31(土) 18:02:43 .net] でも河野さんはsonyでしょ。(当時)
159 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/13(金) 15:10:58 .net] --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
160 名前:naruse mailto:sage [2006/01/16(月) 19:58:38 .net] ごめんなさい、バグってます。 CVSでは nkf.c rev:1.71 治っておりますので、よろしければそちらをお使いください。 cvs.sourceforge.jp/cgi-bin/viewcvs.cgi/nkf/nkf-2/nkf-utf8/nkf.c?rev=1.89&view=log#rev1.71 なお、2.0.6は桜が咲くころには出す予定です。
161 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/01/16(月) 20:40:22 .net] >>160 ああ!思い出した。 ruby-dev に出てたのと同じ問題ですね。 桜が咲くのを待ちつつ、修正版を使いますです。どうもです。
162 名前:成瀬 ◆NBGqNARUSE [2006/03/11(土) 14:09:50 .net] えー、というわけで、そろそろ桜の花も咲きそうなので、 2.0.6を出したいなぁと思っているわけですが、迷っているのが一つ。 「nkf --overwrite が mtime を更新しない」 lists.sourceforge.jp/mailman/archives/nkf-dev/2006-March/000010.html って直した方がいいですか? 数行の修正でいいはずなのですが、どちらがお好みなのかなーと。 ついでに、nkf 2.0.6での文字コードのマッピングは以下の通りになりますので、ご意見のある方はお早めに。 nkf.sourceforge.jp/ucm/
163 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/11(土) 16:45:41 .net] modify したんだから更新しといた方がいいんじゃない? わりとどうでもいいけど。
164 名前:名無しさん@お腹いっぱい。 [2006/03/11(土) 16:48:26 .net] 過疎スレに書き込むなボケ
165 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/11(土) 18:41:13 .net] 迷ったときはオプションを追加して泥沼化
166 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/03/11(土) 19:04:33 .net] デフォルトでmtimeを更新するようにしたら、 cp -p を真似して、mtimeを更新しない -p オプションを追加する気ではいます。 >>164 わざわざageてくださってどうも、しかもツンデレで。
167 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/12(日) 20:21:51 .net] >>166 --overwrite が長いオプションなので、 (tar 風に) --preserve とかがいいかなあ。 一文字オプション文字空間はそれほど広くないでしょう。
168 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/03/12(日) 23:32:07 .net] 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]とかすると、既存のオプションにぶつかるのが悩み。
169 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/03/12(日) 23:42:37 .net] qkcの-jがくさってるってのは、具体的にどんな場合?
170 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/03/13(月) 00:08:33 .net] >>169 おそらく、デフォルトでエスケープシーケンスが ESC $B と ESC (J になっていることではないかと。 /Jでなく、/BJを指定すればいいのですけれどね。 hp.vector.co.jp/authors/VA000501/htmlhelp/jisesc.html hp.vector.co.jp/authors/VA000501/htmlhelp/cmdopt.html
171 名前:167 mailto:sage [2006/03/13(月) 00:35:36 .net] 意図してやってるなら仕方ないですね。 とりあえずそのままで、タイムスタンプ変えたい人が多く出てきたらオプション新設、 とかでもいいように思います。 そういえば先日 Subversion でファイルを nkf --overwrite してからコミットしようとしたら 一向にコミットできなくてはまってしまった。 --overwrite のタイムスタンプの件は man に書いてなかったですよね?
172 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/03/13(月) 00:54:34 .net] タイムスタンプの件はマニュアルには書いてありませんね。 とりあえずマニュアルは更新しておくことにします。
173 名前:167 mailto:sage [2006/03/13(月) 00:55:26 .net] すんません、お手数かけます。
174 名前:167 mailto:sage [2006/03/13(月) 10:10:02 .net] 思い出した。 今更なので、変えてくれという話ではなくて、素朴な疑問なのですが、 「--overwrite」って一般的なもんなんすかね? GNU sed だと --in-place だったり Perl や Ruby だと -i ですよね。
175 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/03/13(月) 15:01:02 .net] 別名の案を考えるのにフィルタ系のコマンドを一通り調べてみたのですが、 * 相当するコマンドが無い * デフォルトが上書き がそもそも大多数で、わたしが見つけられたのはPerl/Rubyの-i[=extension]くらいでした。 sedは見たのですが、GNU sedには-i/--in-placeがあるのですか。 --overwriteを用いているのはnkfくらいのようですね。 -iは既存のオプションと衝突しているため使えないとして、 --in-placeを更新するoverwriteにするというのはありだと思います。 というか、--in-place[=SUFFIX] の拡張子を指定してバックアップはわたしも欲しいので、 この方向で実装してみます。 上書きを行うロングオプションで--in-place以上に有名なものってありませんよね? なるべく長いものに巻かれておきたいのですけれど。
176 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/03/21(火) 22:55:47 .net] 2.0.6 beta1 を出しました。 sourceforge.jp/projects/nkf/ ところで、今 nkf は -m がデフォルトで有効になっています。 これを、デフォルトで -m0 にしたいと思っているのですが、どう思います? 一応、コンパイルオプションでデフォルト -m / -m0 を切り替えられるようにして、 お茶を濁しつつ変えてしまおうかとも思っているのですけれど。 ちなみに、同様に意図しない変換を引き起こしうる、デフォルトが -X な件は、 --ic / --oc ではデフォルトで -x を含むようにしています。
177 名前:名無しさん@お腹いっぱい。 [2006/06/03(土) 16:36:10 .net] SJISで全角'−'記号の0x817CをUTF-8Nの0xEFBC8Dに変換する オプションを教えて欲しい。 普通にC:\>nkf -S -w test.sjs > test.utf8nとかしても 0xE28892に変換され、他のソフトに読み込むときうまく 読み込まれず苦労しています。 TeraPadで読み込んでUTF-8Nで変換すると0xEFBC8Dに変換されます。 あと、全角の'¥'記号が半角の'\'記号になってしまうのも。
178 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/04(日) 01:42:56 .net] 人に聞くよりソース読んじゃった方が早くね?
179 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/04(日) 10:55:14 .net] >>177 nkfのversionは? iconv使った方がいいかもね。
180 名前:177 [2006/06/04(日) 17:35:32 .net] nkfのVersionはたしか2.07betaだと思う。 Vectorでダウンロードしたやつで、 色んなVersionが同梱されていました。 因みにiconvってWindowsで使えるの?
181 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/04(日) 20:39:13 .net] それだとあなたの言う動作になっているね。 2.0の頃は¥のままだったんだけど。 iconvはcygwinに入っているよ。
182 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/06/04(日) 22:30:08 .net] --cp932
183 名前:177 [2006/06/05(月) 08:47:49 .net] >>182 nkf -S -w --cp932 infile.sjis > outfile.utf で望の結果となりました。アリガトウゴザイマス。
184 名前:名無しさん@お腹いっぱい。 [2006/06/05(月) 09:15:25 .net] >>137 今更ながらだが、kccのコードを弄って簡易spamフィルタに使ってるぞ。 Subjectに、8ビット文字入れてくる汚物メールを検出するフィルタ。 nkfだとコードがでかすぎて弄れぬ。
185 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/06/16(金) 03:28:54 .net] 今更だけどフォロー >>177 >>183 現在の nkf はデフォルトでは ASCII の範囲はそのまま、 それ以外はJISのマッピングに準拠したマッピングにしています。 Windows の変換と同じ変換、すなわち CP932 互換の変換をしたい場合は、 --cp932 で行うことができます。 なお 2.0.6 では nkf --ic=CP932 --oc=UTF-8 と、iconv っぽく使えます。 >>179 >>180 行う変換がどのマッピングなのか把握しているならば iconv が適当です。 Windows なら香り屋さんのが楽 www.kaoriya.net/#LIBICONV >>184 *_getc -> kanji_convert -> *_iconv -> *_conv -> *_oconv -> *_putc という流れを把握すれば、多少はいじるのが楽になるかも。 グローバル変数の嵐ですけどね・・・。 > Subjectに、8ビット文字入れてくる汚物メールを検出するフィルタ。 ならば、*_getc の追加でいけるかな。 grep -E '[^[:cntrl:][:print:]]' で済みそうだけど。
186 名前:名無しさん@お腹いっぱい。 mailto:sage [2006/12/08(金) 02:57:52 .net] IDに注目。 なんかうれしい。
187 名前:186 mailto:sage [2006/12/08(金) 03:00:07 .net] 俺はバカだ。ここはUNIX板じゃないか(泣 (ちなみに俺の今の -> "nkf2PDI3")
188 名前:成瀬 ◆NBGqNARUSE mailto:sage [2006/12/09(土) 03:04:13 .net] おめw
189 名前:名無しさん@お腹いっぱい。 [2007/01/19(金) 11:03:37 .net] バグでしょか? 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=?=
190 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/19(金) 12:18:29 .net] MIMEのオプションも指定しなきゃだめだよ
191 名前:189 mailto:sage [2007/01/19(金) 13:37:09 .net] >>190 >>190 さんは MIME のオプション指定で再現しなくなりましたか? NKF 1.9以降は MIME のオプション (-m) はデフォルトで有効になっていると思います。 試しにそれぞれに -m オプションを付けてみましたが、同じ出力結果となりました。
192 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/20(土) 00:07:52 .net] nandedaro kizukebakokanni fuzisanga...
193 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/01/20(土) 00:26:24 .net] あいうえお =?iso-2022-jp?b?gqA=?=
194 名前:成瀬 ◆NBGqNARUSE mailto:sage [2007/01/21(日) 07:32:24 .net] とりあえず現状を。 1. エンコーディングの確定前にMIME文字列が出現した場合認識しない 2. 一部のエンコーディングでMIME encodeされたJISな文字列が文字化け の二つの問題と認識しています。 後者は手元で修正しました。 前者は現在ちとてこずっています。 回避方法としては、エンコーディングがわかる場合は明示的に指定する、になります。
195 名前:189 mailto:sage [2007/01/21(日) 14:59:59 .net] 前者の方ですが、確かに入力のエンコーディングを指定したらうまくいきました。 自動判定が絡んでくるとなると厄介そうなのはなんとなく想像つきますので、 あまり期待しないで期待しておきます(?)。 対応ありがとうございます。
196 名前:189 mailto:sage [2007/01/30(火) 16:59:22 .net] CVS 先端で後者の方が直っていました。ありがとうございました。
197 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/17(土) 12:16:02 .net] >>191 > NKF 1.9以降は MIME のオプション (-m) はデフォルトで有効になっていると思います。 まじかよ なんだよ、このウンコ仕様は。 さよなら、nkf。
198 名前:成瀬 ◆NBGqNARUSE mailto:sage [2007/11/18(日) 06:47:45 .net] >>197 わたしも微妙な仕様で正直変えたいと思っているのですが、 調べたところどうも1.7あたりから導入されているらしく、 いまさらそう簡単には変えられないというのが現状です。 っと思っていたのですが、Ruby1.9にあわせてnkfを2.1にし、 そこでこの手の変えづらかった仕様に手を入れてしまうのもありな気がしてきました。 少し検討してみます。
199 名前:197 mailto:sage [2007/11/18(日) 12:20:20 .net] 真面目なレスありがとう。 過去のnkf利用scriptが走馬灯のように思い浮かんで欝になりました。 -Xがdefaultである件も、前から何だかなーと思ってます。 出力がISO-2022-JPの場合は仕方ないんだけど。
200 名前:成瀬 ◆NBGqNARUSE mailto:sage [2007/11/19(月) 17:11:54 .net] >>199 とりあえずMIME decodeの方はconfig.hに #define MIME_DECODE_DEFAULT FALSE とでも書いてmakeすればデフォルト無効になります。 -Xの方はソース眺めていて-Iとの絡みが謎なので解読中。 似た方法でデフォルトを変えられるようにする方向です。 あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。
201 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/19(月) 22:12:40 .net] >>200 > あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。 あ、それあると嬉しい。 man あたりに "DEFAULT FLAGS" みたいなエントリ作れば良いのでは? --help やって気付いたけど、標準エラー出力に投げるんだね。 これはソース見てすぐにどこいじれば標準出力に変更できるか分かったけど。
202 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/20(火) 03:03:24 .net] >>201 >> あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。 >あ、それあると嬉しい。 >man あたりに "DEFAULT FLAGS" みたいなエントリ作れば良いのでは? コンパイルオプションは最終的にconfigureで設定できるようにする予定なのですが、 こっちはNKF.pmのコンパイルが微妙になることに気づいてどうしようかなとか。 ていうか、Encode.pmが標準添付なこの時代にNKF.pmとか使う人いるんだろうか。 # Encodeをたたくラッパーでいい気がするよね。 >--help やって気付いたけど、標準エラー出力に投げるんだね。 ですね、以前に微妙かと思って手元にあったコマンドがどこにヘルプ投げるか調べたら、 どっちもあったんですが、標準出力の方がいいですか?
203 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/21(水) 00:17:27 .net] >>202 >>--help やって気付いたけど、標準エラー出力に投げるんだね。 > ですね、以前に微妙かと思って手元にあったコマンドがどこにヘルプ投げるか調べたら、 > どっちもあったんですが、標準出力の方がいいですか? 量が多い時にページャに渡すときに一手間増えるかなと。 といっても 2>&1 を追加するだけなんで、あまり気にしなくておk。
204 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/21(水) 17:17:45 .net] デフォールト・オプション大変りな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で切り替え。
205 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/22(木) 14:10:01 .net] nkf3 って名前で install するのは .deb のパッケージシステムで (すまん俺 .rpm なシステムしか知らん)やる事じゃまいか? 問題になるようなら他のシステム(portsとか)でも多分そうすると思う。 コンフィグorメイクのオプションで設定可能にするのは構わないと 思うがデフォルトを nkf3 にするのはどうかと。
206 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/11/23(金) 01:00:12 .net] debianだと、たとえ本家がnkf-2.1だろうと、 メインテナが互換性上別にした方がいいと考えたらnkf3_2.1になる。 だから気にしないでいい。
207 名前:成瀬 ◆NBGqNARUSE mailto:sage [2007/12/07(金) 13:25:21 .net] とりあえず 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 では半角カタカナの入力に対して、半角カタカナを出力していましたが、 これからはゲタを返すようになります。
208 名前:201 mailto:sage [2007/12/16(日) 17:44:56 .net] >>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個)"
209 名前:成瀬 ◆NBGqNARUSE mailto:sage [2007/12/19(水) 03:47:07 .net] >>208 直しました、報告どうもです
210 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/30(日) 01:49:03 .net] 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です
211 名前:201 mailto:sage [2007/12/30(日) 02:00:38 .net] >>210 元ファイル名の文字コードが SJIS 固定と決まっているのなら nkf -Swu
212 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/12/30(日) 02:20:45 .net] ファイル名がutf8なんだろ。
213 名前:成瀬 ◆NBGqNARUSE mailto:sage [2007/12/30(日) 17:15:04 .net] nkf は行ごとに文字コードを判定することもあったようなその部分は壊したような、 とりあえず、ID3タグのみがShift_JIS (たぶんCP932)なのですから、そこだけ変換するべきでしょう。 mplayer | ruby -nrnkf -e'puts /^(Title|Artist)/=~$_ ? NKF.nkf("-w --ic=cp932",$_) : $_' これだとバッファ周りがだめそうですが
214 名前:210 mailto:sage [2007/12/31(月) 01:36:18 .net] ありがとうございます rubyさっぱりわからないですが試してみました ファイル名は変換されますがID3タグが化けます、 それよりも秒数がまとめて出力されてしまう Title: `CRtXL[ o Gg ネu Artist: gXJj[jw @mab ソ y Album: o Gg ネuュ鰡 鑞 `v ファイル名が"05.バレエ組曲「くるみ割り人形」 アラビアの踊り.mp3"なら -wu で認識してくれるのだけど
215 名前:成瀬 ◆NBGqNARUSE mailto:sage [2007/12/31(月) 17:59:12 .net] あー、秒数とかがダメか。 てっとり早い解決策は、ID3タグをID3v2 (Unicode)に変換することじゃないかなぁ。 一括変換できるソフトはSTEPくらいしか知りませんが。 hp.vector.co.jp/authors/VA012911/ それ以外だとファイル名が化けるのはあきらめて nkf -uwS とかかな。 結局のところ出力がUTF-8の行とShift_JISの行が混在しているのが問題なので、 そろえてしまわないと解決は面倒になります。
216 名前:210 mailto:sage [2008/01/06(日) 21:14:58 .net] ID3タグをUnicodeにすることも考えましたが そうすると他の機器で文字化けが、、、 mplayerでファイル名が化けることはそんなにないので 当面このままでいきます、ありがとう
217 名前:成瀬 ◆NBGqNARUSE mailto:sage [2008/01/21(月) 17:12:26 .net] 先日デフォルトの出力エンコーディングを指定できるようにしたわけですが、 よくよく考えればロケール見て決めてくれよと思いつく。。。
218 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/01/24(木) 02:29:18 .net] >>217 端末の locale 見て自動変換してくれると便利だよね。 Ruby でその機能が欲しくて NKF 使ってライブラリ作ったけど 1.9 で動くか試してないや。