nkfってなんだ (337レス)
nkfってなんだ http://mevius.5ch.net/test/read.cgi/unix/1005206241/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
138: 愛・昆布 ◆qvkminQt6g [] 2005/03/28(月) 23:20:29 ぼくわこんぶがだいすきですぼくがこんぶがすきなところわおいしいからこんぶはすきですおでんのこんぶはぜんぶたべてしまっておとおさんにおこらいましたもうしないようにしないとおとおさんがこわいのでしません。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/138
139: 名無しさん@お腹いっぱい。 [sage] 2005/03/29(火) 02:41:03 そのままアルジャーノンで http://mevius.5ch.net/test/read.cgi/unix/1005206241/139
140: 名無しさん@お腹いっぱい。 [] 2005/04/16(土) 07:42:34 iconvやuconvがあるからもうnkfとかqkcとか日本ローカルなものはいらないね http://mevius.5ch.net/test/read.cgi/unix/1005206241/140
141: 名無しさん@お腹いっぱい。 [sage] 2005/04/16(土) 07:46:48 すごいね.2001年からのスレかよ. http://mevius.5ch.net/test/read.cgi/unix/1005206241/141
142: 名無しさん@お腹いっぱい。 [sage] 2005/04/16(土) 08:12:36 >>140 iconv や nkf, qkc を一緒くたに比較しちゃう時点でアレとかいうのは置いといて、 uconv ってなんじゃい? http://mevius.5ch.net/test/read.cgi/unix/1005206241/142
143: 名無しさん@お腹いっぱい。 [sage] 2005/04/16(土) 08:21:26 ぐぐれば? http://mevius.5ch.net/test/read.cgi/unix/1005206241/143
144: 名無しさん@お腹いっぱい。 [sage] 2005/04/16(土) 10:23:43 Non Korea Future http://mevius.5ch.net/test/read.cgi/unix/1005206241/144
145: 名無しさん@お腹いっぱい。 [δsage] 2005/04/16(土) 12:19:02 あがっちまったものはしょうがない、 文字コード変換総合スレということにでもしてみるか http://mevius.5ch.net/test/read.cgi/unix/1005206241/145
146: 名無しさん@お腹いっぱい。 [sage] 2005/04/16(土) 12:36:17 iconv糞っていってるやつは、libiconvにパッチを当てるって事を 思いつかないんだろう。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/146
147: 名無しさん@お腹いっぱい。 [sage] 2005/04/16(土) 15:50:28 どのOSでもパッチをあてられるというわけでもなく。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/147
148: 名無しさん@お腹いっぱい。 [sage] 2005/04/16(土) 17:26:19 自動認識の要求もそれなりにあるからなあ。 まあでもiconvに成功するまでいろんなencodingで試すというやりかたも なくもないか。gonzuiはそうやっているらしい。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/148
149: 名無しさん@お腹いっぱい。 [sage] 2005/04/16(土) 18:07:30 >>146 パッチ当てなきゃ糞っていうなら十分糞だと思うが? http://mevius.5ch.net/test/read.cgi/unix/1005206241/149
150: 名無しさん@お腹いっぱい。 [sage] 2005/04/17(日) 18:19:22 nkfのnってなんで? http://mevius.5ch.net/test/read.cgi/unix/1005206241/150
151: 名無しさん@お腹いっぱい。 [sage] 2005/04/17(日) 18:34:19 nantonaku kayuitokorowo funsaishita http://mevius.5ch.net/test/read.cgi/unix/1005206241/151
152: 名無しさん@お腹いっぱい。 [sage] 2005/04/30(土) 13:09:03 Cのライブラリとしてつかえるのって、iconvとwkf以外にはなにがあります? http://mevius.5ch.net/test/read.cgi/unix/1005206241/152
153: 名無しさん@お腹いっぱい。 [sage] 2005/06/11(土) 09:57:32 上書きしようとして -O をつけると無変換にならなくねが?おらがのバージョン2.04だども。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/153
154: 名無しさん@お腹いっぱい。 [] 2005/06/12(日) 08:27:41 age http://mevius.5ch.net/test/read.cgi/unix/1005206241/154
155: 153 [sage] 2005/06/13(月) 09:09:31 ヤバイ上書きは--overwriteらしい。今は反省している。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/155
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) http://mevius.5ch.net/test/read.cgi/unix/1005206241/156
157: 名無しさん@お腹いっぱい。 [sage] 2005/12/31(土) 17:55:31 fujitsu最大の成果物ということでよろしいでしょうか? http://mevius.5ch.net/test/read.cgi/unix/1005206241/157
158: 名無しさん@お腹いっぱい。 [] 2005/12/31(土) 18:02:43 でも河野さんはsonyでしょ。(当時) http://mevius.5ch.net/test/read.cgi/unix/1005206241/158
159: 名無しさん@お腹いっぱい。 [sage] 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 http://mevius.5ch.net/test/read.cgi/unix/1005206241/159
160: naruse [sage] 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は桜が咲くころには出す予定です。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/160
161: 名無しさん@お腹いっぱい。 [sage] 2006/01/16(月) 20:40:22 >>160 ああ!思い出した。 ruby-dev に出てたのと同じ問題ですね。 桜が咲くのを待ちつつ、修正版を使いますです。どうもです。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/161
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/ http://mevius.5ch.net/test/read.cgi/unix/1005206241/162
163: 名無しさん@お腹いっぱい。 [sage] 2006/03/11(土) 16:45:41 modify したんだから更新しといた方がいいんじゃない? わりとどうでもいいけど。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/163
164: 名無しさん@お腹いっぱい。 [] 2006/03/11(土) 16:48:26 過疎スレに書き込むなボケ http://mevius.5ch.net/test/read.cgi/unix/1005206241/164
165: 名無しさん@お腹いっぱい。 [sage] 2006/03/11(土) 18:41:13 迷ったときはオプションを追加して泥沼化 http://mevius.5ch.net/test/read.cgi/unix/1005206241/165
166: 成瀬 ◆NBGqNARUSE [sage] 2006/03/11(土) 19:04:33 デフォルトでmtimeを更新するようにしたら、 cp -p を真似して、mtimeを更新しない -p オプションを追加する気ではいます。 >>164 わざわざageてくださってどうも、しかもツンデレで。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/166
167: 名無しさん@お腹いっぱい。 [sage] 2006/03/12(日) 20:21:51 >>166 --overwrite が長いオプションなので、 (tar 風に) --preserve とかがいいかなあ。 一文字オプション文字空間はそれほど広くないでしょう。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/167
168: 成瀬 ◆NBGqNARUSE [sage] 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]とかすると、既存のオプションにぶつかるのが悩み。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/168
169: 名無しさん@お腹いっぱい。 [sage] 2006/03/12(日) 23:42:37 qkcの-jがくさってるってのは、具体的にどんな場合? http://mevius.5ch.net/test/read.cgi/unix/1005206241/169
170: 成瀬 ◆NBGqNARUSE [sage] 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 http://mevius.5ch.net/test/read.cgi/unix/1005206241/170
171: 167 [sage] 2006/03/13(月) 00:35:36 意図してやってるなら仕方ないですね。 とりあえずそのままで、タイムスタンプ変えたい人が多く出てきたらオプション新設、 とかでもいいように思います。 そういえば先日 Subversion でファイルを nkf --overwrite してからコミットしようとしたら 一向にコミットできなくてはまってしまった。 --overwrite のタイムスタンプの件は man に書いてなかったですよね? http://mevius.5ch.net/test/read.cgi/unix/1005206241/171
172: 成瀬 ◆NBGqNARUSE [sage] 2006/03/13(月) 00:54:34 タイムスタンプの件はマニュアルには書いてありませんね。 とりあえずマニュアルは更新しておくことにします。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/172
173: 167 [sage] 2006/03/13(月) 00:55:26 すんません、お手数かけます。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/173
174: 167 [sage] 2006/03/13(月) 10:10:02 思い出した。 今更なので、変えてくれという話ではなくて、素朴な疑問なのですが、 「--overwrite」って一般的なもんなんすかね? GNU sed だと --in-place だったり Perl や Ruby だと -i ですよね。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/174
175: 成瀬 ◆NBGqNARUSE [sage] 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以上に有名なものってありませんよね? なるべく長いものに巻かれておきたいのですけれど。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/175
176: 成瀬 ◆NBGqNARUSE [sage] 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://mevius.5ch.net/test/read.cgi/unix/1005206241/176
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に変換されます。 あと、全角の'¥'記号が半角の'\'記号になってしまうのも。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/177
178: 名無しさん@お腹いっぱい。 [sage] 2006/06/04(日) 01:42:56 人に聞くよりソース読んじゃった方が早くね? http://mevius.5ch.net/test/read.cgi/unix/1005206241/178
179: 名無しさん@お腹いっぱい。 [sage] 2006/06/04(日) 10:55:14 >>177 nkfのversionは? iconv使った方がいいかもね。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/179
180: 177 [] 2006/06/04(日) 17:35:32 nkfのVersionはたしか2.07betaだと思う。 Vectorでダウンロードしたやつで、 色んなVersionが同梱されていました。 因みにiconvってWindowsで使えるの? http://mevius.5ch.net/test/read.cgi/unix/1005206241/180
181: 名無しさん@お腹いっぱい。 [sage] 2006/06/04(日) 20:39:13 それだとあなたの言う動作になっているね。 2.0の頃は¥のままだったんだけど。 iconvはcygwinに入っているよ。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/181
182: 名無しさん@お腹いっぱい。 [sage] 2006/06/04(日) 22:30:08 --cp932 http://mevius.5ch.net/test/read.cgi/unix/1005206241/182
183: 177 [] 2006/06/05(月) 08:47:49 >>182 nkf -S -w --cp932 infile.sjis > outfile.utf で望の結果となりました。アリガトウゴザイマス。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/183
184: 名無しさん@お腹いっぱい。 [] 2006/06/05(月) 09:15:25 >>137 今更ながらだが、kccのコードを弄って簡易spamフィルタに使ってるぞ。 Subjectに、8ビット文字入れてくる汚物メールを検出するフィルタ。 nkfだとコードがでかすぎて弄れぬ。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/184
185: 成瀬 ◆NBGqNARUSE [sage] 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:]]' で済みそうだけど。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/185
186: 名無しさん@お腹いっぱい。 [sage] 2006/12/08(金) 02:57:52 IDに注目。 なんかうれしい。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/186
187: 186 [sage] 2006/12/08(金) 03:00:07 俺はバカだ。ここはUNIX板じゃないか(泣 (ちなみに俺の今の -> "nkf2PDI3") http://mevius.5ch.net/test/read.cgi/unix/1005206241/187
188: 成瀬 ◆NBGqNARUSE [sage] 2006/12/09(土) 03:04:13 おめw http://mevius.5ch.net/test/read.cgi/unix/1005206241/188
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=?= http://mevius.5ch.net/test/read.cgi/unix/1005206241/189
190: 名無しさん@お腹いっぱい。 [sage] 2007/01/19(金) 12:18:29 MIMEのオプションも指定しなきゃだめだよ http://mevius.5ch.net/test/read.cgi/unix/1005206241/190
191: 189 [sage] 2007/01/19(金) 13:37:09 >>190 >>190 さんは MIME のオプション指定で再現しなくなりましたか? NKF 1.9以降は MIME のオプション (-m) はデフォルトで有効になっていると思います。 試しにそれぞれに -m オプションを付けてみましたが、同じ出力結果となりました。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/191
192: 名無しさん@お腹いっぱい。 [sage] 2007/01/20(土) 00:07:52 nandedaro kizukebakokanni fuzisanga... http://mevius.5ch.net/test/read.cgi/unix/1005206241/192
193: 名無しさん@お腹いっぱい。 [sage] 2007/01/20(土) 00:26:24 あいうえお =?iso-2022-jp?b?gqA=?= http://mevius.5ch.net/test/read.cgi/unix/1005206241/193
194: 成瀬 ◆NBGqNARUSE [sage] 2007/01/21(日) 07:32:24 とりあえず現状を。 1. エンコーディングの確定前にMIME文字列が出現した場合認識しない 2. 一部のエンコーディングでMIME encodeされたJISな文字列が文字化け の二つの問題と認識しています。 後者は手元で修正しました。 前者は現在ちとてこずっています。 回避方法としては、エンコーディングがわかる場合は明示的に指定する、になります。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/194
195: 189 [sage] 2007/01/21(日) 14:59:59 前者の方ですが、確かに入力のエンコーディングを指定したらうまくいきました。 自動判定が絡んでくるとなると厄介そうなのはなんとなく想像つきますので、 あまり期待しないで期待しておきます(?)。 対応ありがとうございます。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/195
196: 189 [sage] 2007/01/30(火) 16:59:22 CVS 先端で後者の方が直っていました。ありがとうございました。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/196
197: 名無しさん@お腹いっぱい。 [sage] 2007/11/17(土) 12:16:02 >>191 > NKF 1.9以降は MIME のオプション (-m) はデフォルトで有効になっていると思います。 まじかよ なんだよ、このウンコ仕様は。 さよなら、nkf。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/197
198: 成瀬 ◆NBGqNARUSE [sage] 2007/11/18(日) 06:47:45 >>197 わたしも微妙な仕様で正直変えたいと思っているのですが、 調べたところどうも1.7あたりから導入されているらしく、 いまさらそう簡単には変えられないというのが現状です。 っと思っていたのですが、Ruby1.9にあわせてnkfを2.1にし、 そこでこの手の変えづらかった仕様に手を入れてしまうのもありな気がしてきました。 少し検討してみます。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/198
199: 197 [sage] 2007/11/18(日) 12:20:20 真面目なレスありがとう。 過去のnkf利用scriptが走馬灯のように思い浮かんで欝になりました。 -Xがdefaultである件も、前から何だかなーと思ってます。 出力がISO-2022-JPの場合は仕方ないんだけど。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/199
200: 成瀬 ◆NBGqNARUSE [sage] 2007/11/19(月) 17:11:54 >>199 とりあえずMIME decodeの方はconfig.hに #define MIME_DECODE_DEFAULT FALSE とでも書いてmakeすればデフォルト無効になります。 -Xの方はソース眺めていて-Iとの絡みが謎なので解読中。 似た方法でデフォルトを変えられるようにする方向です。 あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/200
201: 名無しさん@お腹いっぱい。 [sage] 2007/11/19(月) 22:12:40 >>200 > あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。 あ、それあると嬉しい。 man あたりに "DEFAULT FLAGS" みたいなエントリ作れば良いのでは? --help やって気付いたけど、標準エラー出力に投げるんだね。 これはソース見てすぐにどこいじれば標準出力に変更できるか分かったけど。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/201
202: 名無しさん@お腹いっぱい。 [sage] 2007/11/20(火) 03:03:24 >>201 >> あー、バージョン情報かヘルプにデフォルトの設定出すようにした方がいいかな。 >あ、それあると嬉しい。 >man あたりに "DEFAULT FLAGS" みたいなエントリ作れば良いのでは? コンパイルオプションは最終的にconfigureで設定できるようにする予定なのですが、 こっちはNKF.pmのコンパイルが微妙になることに気づいてどうしようかなとか。 ていうか、Encode.pmが標準添付なこの時代にNKF.pmとか使う人いるんだろうか。 # Encodeをたたくラッパーでいい気がするよね。 >--help やって気付いたけど、標準エラー出力に投げるんだね。 ですね、以前に微妙かと思って手元にあったコマンドがどこにヘルプ投げるか調べたら、 どっちもあったんですが、標準出力の方がいいですか? http://mevius.5ch.net/test/read.cgi/unix/1005206241/202
203: 名無しさん@お腹いっぱい。 [sage] 2007/11/21(水) 00:17:27 >>202 >>--help やって気付いたけど、標準エラー出力に投げるんだね。 > ですね、以前に微妙かと思って手元にあったコマンドがどこにヘルプ投げるか調べたら、 > どっちもあったんですが、標準出力の方がいいですか? 量が多い時にページャに渡すときに一手間増えるかなと。 といっても 2>&1 を追加するだけなんで、あまり気にしなくておk。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/203
204: 名無しさん@お腹いっぱい。 [sage] 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で切り替え。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/204
205: 名無しさん@お腹いっぱい。 [sage] 2007/11/22(木) 14:10:01 nkf3 って名前で install するのは .deb のパッケージシステムで (すまん俺 .rpm なシステムしか知らん)やる事じゃまいか? 問題になるようなら他のシステム(portsとか)でも多分そうすると思う。 コンフィグorメイクのオプションで設定可能にするのは構わないと 思うがデフォルトを nkf3 にするのはどうかと。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/205
206: 名無しさん@お腹いっぱい。 [sage] 2007/11/23(金) 01:00:12 debianだと、たとえ本家がnkf-2.1だろうと、 メインテナが互換性上別にした方がいいと考えたらnkf3_2.1になる。 だから気にしないでいい。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/206
207: 成瀬 ◆NBGqNARUSE [sage] 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 では半角カタカナの入力に対して、半角カタカナを出力していましたが、 これからはゲタを返すようになります。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/207
208: 201 [sage] 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個)" http://mevius.5ch.net/test/read.cgi/unix/1005206241/208
209: 成瀬 ◆NBGqNARUSE [sage] 2007/12/19(水) 03:47:07 >>208 直しました、報告どうもです http://mevius.5ch.net/test/read.cgi/unix/1005206241/209
210: 名無しさん@お腹いっぱい。 [sage] 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です http://mevius.5ch.net/test/read.cgi/unix/1005206241/210
211: 201 [sage] 2007/12/30(日) 02:00:38 >>210 元ファイル名の文字コードが SJIS 固定と決まっているのなら nkf -Swu http://mevius.5ch.net/test/read.cgi/unix/1005206241/211
212: 名無しさん@お腹いっぱい。 [sage] 2007/12/30(日) 02:20:45 ファイル名がutf8なんだろ。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/212
213: 成瀬 ◆NBGqNARUSE [sage] 2007/12/30(日) 17:15:04 nkf は行ごとに文字コードを判定することもあったようなその部分は壊したような、 とりあえず、ID3タグのみがShift_JIS (たぶんCP932)なのですから、そこだけ変換するべきでしょう。 mplayer | ruby -nrnkf -e'puts /^(Title|Artist)/=~$_ ? NKF.nkf("-w --ic=cp932",$_) : $_' これだとバッファ周りがだめそうですが http://mevius.5ch.net/test/read.cgi/unix/1005206241/213
214: 210 [sage] 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 で認識してくれるのだけど http://mevius.5ch.net/test/read.cgi/unix/1005206241/214
215: 成瀬 ◆NBGqNARUSE [sage] 2007/12/31(月) 17:59:12 あー、秒数とかがダメか。 てっとり早い解決策は、ID3タグをID3v2 (Unicode)に変換することじゃないかなぁ。 一括変換できるソフトはSTEPくらいしか知りませんが。 http://hp.vector.co.jp/authors/VA012911/ それ以外だとファイル名が化けるのはあきらめて nkf -uwS とかかな。 結局のところ出力がUTF-8の行とShift_JISの行が混在しているのが問題なので、 そろえてしまわないと解決は面倒になります。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/215
216: 210 [sage] 2008/01/06(日) 21:14:58 ID3タグをUnicodeにすることも考えましたが そうすると他の機器で文字化けが、、、 mplayerでファイル名が化けることはそんなにないので 当面このままでいきます、ありがとう http://mevius.5ch.net/test/read.cgi/unix/1005206241/216
217: 成瀬 ◆NBGqNARUSE [sage] 2008/01/21(月) 17:12:26 先日デフォルトの出力エンコーディングを指定できるようにしたわけですが、 よくよく考えればロケール見て決めてくれよと思いつく。。。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/217
218: 名無しさん@お腹いっぱい。 [sage] 2008/01/24(木) 02:29:18 >>217 端末の locale 見て自動変換してくれると便利だよね。 Ruby でその機能が欲しくて NKF 使ってライブラリ作ったけど 1.9 で動くか試してないや。 http://mevius.5ch.net/test/read.cgi/unix/1005206241/218
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 119 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.007s