探検
nkfってなんだ
1名無しさん@お腹いっぱい。
NGNG 初心者です。ご指導おねがいします。
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
2009/01/22(木) 04:32:00
というわけで nkf 2.0.9 を出しました。
Perl モジュール部分が壊れていたので、Perl で使い方は Git から最新版を落としてくださいまし
Perl モジュール部分が壊れていたので、Perl で使い方は Git から最新版を落としてくださいまし
2009/01/22(木) 09:17:01
いやがらせですねw
2009/02/02(月) 12:20:33
2.0.10マダー
2009/02/05(木) 00:19:53
入力がUTF-16の時にASCIIって判定されるね
-W16とか付けても効かないし
-W16とか付けても効かないし
2009/02/21(土) 15:20:23
2009/03/18(水) 18:53:38
DLL だと、判定は UTF-16 になるのに lpBytesReturned に 0 が返ってきます。。。
HINSTANCE dll = ::LoadLibrary("nkf32.dll");
funcSetNkfOption *setopt = (funcSetNkfOption *) ::GetProcAddress(dll, "SetNkfOption");
funcNkfConvertSafe *conv = (funcNkfConvertSafe *) ::GetProcAddress(dll, "NkfConvertSafe");
funcNkfGetKanjiCode *getkc = (funcNkfGetKanjiCode *) ::GetProcAddress(dll, "NkfGetKanjiCode");
setopt("-xs");
conv(out, sizeof(out), &bytesReturned, in, sizeof(in));
int charcode = getkc();
::FreeLibrary(dll);
printf("%d %d %s\n", charcode, bytesReturned, out);
2.0.8 だと「4 6 UTF-16」みたいになるのに、2.0.9 だと「4 0」。
git は確認してないけど、>>241 で解決してるのかなぁ
HINSTANCE dll = ::LoadLibrary("nkf32.dll");
funcSetNkfOption *setopt = (funcSetNkfOption *) ::GetProcAddress(dll, "SetNkfOption");
funcNkfConvertSafe *conv = (funcNkfConvertSafe *) ::GetProcAddress(dll, "NkfConvertSafe");
funcNkfGetKanjiCode *getkc = (funcNkfGetKanjiCode *) ::GetProcAddress(dll, "NkfGetKanjiCode");
setopt("-xs");
conv(out, sizeof(out), &bytesReturned, in, sizeof(in));
int charcode = getkc();
::FreeLibrary(dll);
printf("%d %d %s\n", charcode, bytesReturned, out);
2.0.8 だと「4 6 UTF-16」みたいになるのに、2.0.9 だと「4 0」。
git は確認してないけど、>>241 で解決してるのかなぁ
2009/07/09(木) 15:58:30
マイナーな要望かもしれないけど UTF-7 や Modified UTF-7 の変換機能が欲しいなあ。
2009/08/21(金) 12:01:49
NKF 2.0.9 のマニュアルの --ic, --oc の CP932 の説明には、
「-x が暗黙のうちに指定される」と書かれていますが、
これが実際には効いていないように思います。
nkf コマンドの 2.0.8 が手元に無くなっちゃったので Ruby での比較になりますが、
2.0.8 → 2.0.9 で挙動が変わってしまっており、
2.0.8 ではマニュアルの通りに動作していたように見えます。
% ruby -rnkf -e 'puts NKF::VERSION; puts NKF.nkf("--ic=CP932 --oc=UTF-8", File.read("hello"))'
2.0.8 (2008-11-08)
コンニチハ
% ruby_trunk -rnkf -e 'puts NKF::VERSION; puts NKF.nkf("--ic=CP932 --oc=UTF-8", File.read("hello"))'
2.0.9 (2009-01-20)
コンニチハ
「-x が暗黙のうちに指定される」と書かれていますが、
これが実際には効いていないように思います。
nkf コマンドの 2.0.8 が手元に無くなっちゃったので Ruby での比較になりますが、
2.0.8 → 2.0.9 で挙動が変わってしまっており、
2.0.8 ではマニュアルの通りに動作していたように見えます。
% ruby -rnkf -e 'puts NKF::VERSION; puts NKF.nkf("--ic=CP932 --oc=UTF-8", File.read("hello"))'
2.0.8 (2008-11-08)
コンニチハ
% ruby_trunk -rnkf -e 'puts NKF::VERSION; puts NKF.nkf("--ic=CP932 --oc=UTF-8", File.read("hello"))'
2.0.9 (2009-01-20)
コンニチハ
2009/09/02(水) 20:15:12
2009/09/03(木) 00:23:30
そうですね、 Ruby/transcode にも要る
(現状だと net/imap などは自前で実装してますね) と思いますが、
nkf にも欲しいところです。
(現状だと net/imap などは自前で実装してますね) と思いますが、
nkf にも欲しいところです。
2009/11/17(火) 12:24:05
# nkf -v
Network Kanji Filter Version 2.1.0 (2009-11-17)
Network Kanji Filter Version 2.1.0 (2009-11-17)
2009/11/17(火) 12:35:27
おぉ!!
2009/11/27(金) 17:33:39
win板のバイナリ来ない (T-T
250名無しさん@お腹いっぱい。
2009/12/29(火) 17:24:35 64bit版てあるのかな?
2010/01/05(火) 13:38:40
環境変数LANGで設定した文字コードへ変換するオプションが欲しいです。
2010/02/12(金) 23:33:02
skfを使え
253efialtes
2010/02/14(日) 21:37:04 skf にそういう機能はないです。nkf の方は対応したことになっているらしいんですけど、もともとロカールからエンコーディングを抽出するのは POSIX 仕様上困難なので、なにか上手い方法が見つかったら考えます。
254名無しさん@お腹いっぱい。
2010/05/23(日) 12:34:07 nkfで2ch内のスレタイ検索してここに来ました。(ここだけでした)
ウインドウズ環境でnkf32.exeを使ってみた(nkf32.exe -w16L --overwrite)の
ですが、全角の―(ダッシュ)がハイフンだかマイナスだかに変わってしまいます!
これは滅茶苦茶困ります。もう泣きそうです。
誰に言えばいいのか分からないからここに書きます、何とかしてください!!
ウインドウズ環境でnkf32.exeを使ってみた(nkf32.exe -w16L --overwrite)の
ですが、全角の―(ダッシュ)がハイフンだかマイナスだかに変わってしまいます!
これは滅茶苦茶困ります。もう泣きそうです。
誰に言えばいいのか分からないからここに書きます、何とかしてください!!
2010/05/23(日) 14:55:05
>>254
--cp932 オプションを付けてみると?
--cp932 オプションを付けてみると?
2010/05/23(日) 15:18:36
2010/06/02(水) 02:21:14
manが化けるのって嫌がらせ?
2010/06/02(水) 19:19:21
うん。
2010/06/03(木) 02:11:37
manコマンド
2010/06/03(木) 05:28:05
manドマンコ
2010/06/10(木) 11:55:58
> echo 60_byte_ijou_no_ascii_dake_no_mojiretsu_de_-M_shitemiru_test_ | nkf -M
=?EUC-JP?B?60_byte_ijou_no_ascii_dake_no_mojiretsu_de_-M_shitemiru_test_?=
=?EUC-JP?B?60_byte_ijou_no_ascii_dake_no_mojiretsu_de_-M_shitemiru_test_?=
2010/06/10(木) 19:01:08
>>261
バージョン上げるよろし
バージョン上げるよろし
2010/06/28(月) 22:38:56
nkf.exeの64bitOSに対応したバージョンって、ないでしょうか?
XP-32bitからWin7-64bitに移行したところ、
[サポートされていない16ビットアプリケーション]
と出て、とまってしまいます。バッチで組み込んで使っているnkf.exeが唯一、
起動しないアプリになってしまいました。
コマンドラインから
c:\>コマンド名.exe 入力ファイル 出力ファイル
という手順(順番やオプションは不問)で呼び出しができて、
変換さえできれば、別のソフトでも全くかまいません。
なにか打開策ないでしょうか。
XP-32bitからWin7-64bitに移行したところ、
[サポートされていない16ビットアプリケーション]
と出て、とまってしまいます。バッチで組み込んで使っているnkf.exeが唯一、
起動しないアプリになってしまいました。
コマンドラインから
c:\>コマンド名.exe 入力ファイル 出力ファイル
という手順(順番やオプションは不問)で呼び出しができて、
変換さえできれば、別のソフトでも全くかまいません。
なにか打開策ないでしょうか。
2010/06/29(火) 02:11:49
2010/06/29(火) 02:34:01
2010/06/29(火) 11:09:36
>>257
歴史的経緯です。
nkfで変換して適当なところに突っ込んでください。
>>263
とりあえず 32bit 版の nkf.exe を使えば動くと思います。
http://www.geocities.jp/va007219/index.html#win95utilnkf
歴史的経緯です。
nkfで変換して適当なところに突っ込んでください。
>>263
とりあえず 32bit 版の nkf.exe を使えば動くと思います。
http://www.geocities.jp/va007219/index.html#win95utilnkf
2010/06/29(火) 14:44:25
Windowsの文字コードだと、変換できないことが多々あるな・・・。
ファイル名とか。
仕方ないので、find -inum -exec mvで変更してるけど
なんか別の方法はないんだろうか。
ファイル名とか。
仕方ないので、find -inum -exec mvで変更してるけど
なんか別の方法はないんだろうか。
2010/07/07(水) 22:11:55
mimeエンコードすると、行末の方だけ US-ASCII に成るのは、こういう仕様なんですかね。
$ echo 'aiueo kakikukeko さしすせそたちつてと naninuneno' | nkf -Mj
aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIg?=
=?US-ASCII?Q?naninuneno?=
$ nkf --version
Network Kanji Filter Version 2.1.0 (2009-11-17)
ちなみにもう少し古い 2.0.9 とかも同様。
$ echo 'aiueo kakikukeko さしすせそたちつてと naninuneno' | nkf -Mj
aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIg?=
=?US-ASCII?Q?naninuneno?=
$ nkf --version
Network Kanji Filter Version 2.1.0 (2009-11-17)
ちなみにもう少し古い 2.0.9 とかも同様。
2010/07/10(土) 14:16:26
>>267
--ic=CP932 って話?
--ic=CP932 って話?
2010/07/10(土) 14:18:31
>>268
折り返し対策で仕様です
折り返し対策で仕様です
2010/07/10(土) 23:29:25
>>270
お返事ありがとうございます。
改行を入れると、改行を除去されたり、増えるのも同様にこういう仕様でしょうか。
$ echo -e 'aiueo kakikukeko\n さしすせそたちつてと\n naninuneno' | nkf -Mj
aiueo kakikukeko
=?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIK?= naninuneno
$ echo -e 'aiueo kakikukeko さしすせそたちつてと\n naninuneno' | nkf -Mj
aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEI=?=
naninuneno
$
お返事ありがとうございます。
改行を入れると、改行を除去されたり、増えるのも同様にこういう仕様でしょうか。
$ echo -e 'aiueo kakikukeko\n さしすせそたちつてと\n naninuneno' | nkf -Mj
aiueo kakikukeko
=?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIK?= naninuneno
$ echo -e 'aiueo kakikukeko さしすせそたちつてと\n naninuneno' | nkf -Mj
aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEI=?=
naninuneno
$
2010/07/13(火) 13:52:44
>>271
% echo -e 'aiueo kakikukeko\n さしすせそたちつてと\n naninuneno' | ./nkf -Mj
aiueo kakikukeko
=?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIK?= naninuneno
% echo -e 'aiueo kakikukeko さしすせそたちつてと\n naninuneno' | ./nkf -Mj
aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIK?= naninuneno
HEAD だと再現しないので、昔あったバグだと思います。
なお、改行が消えてるように見えますが、encoded-word の中にちゃんと入っています。
こうしないと「\n SP」は保存できないのです。
% echo -e 'aiueo kakikukeko\n さしすせそたちつてと\n naninuneno' | ./nkf -Mj
aiueo kakikukeko
=?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIK?= naninuneno
% echo -e 'aiueo kakikukeko さしすせそたちつてと\n naninuneno' | ./nkf -Mj
aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIK?= naninuneno
HEAD だと再現しないので、昔あったバグだと思います。
なお、改行が消えてるように見えますが、encoded-word の中にちゃんと入っています。
こうしないと「\n SP」は保存できないのです。
2010/07/14(水) 23:50:28
>>272
お返事ありがとうございます。
$ echo -e 'aiueo kakikukeko さしすせそたちつてと\n naninuneno' | nkf -Mj
の例がVersion 2.1.1 (2010-04-28) で以下となることを確認しました。
> aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIK?= naninuneno
が、個人的には下を想像していたので、改行のエンコードが意外でした。
> aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEI=?=
> naninuneno
nkf-2.1.0.tar.gzが最新と思っていましたが、リポジトリの方は2.1.1に改版されていたんですね。
お返事ありがとうございます。
$ echo -e 'aiueo kakikukeko さしすせそたちつてと\n naninuneno' | nkf -Mj
の例がVersion 2.1.1 (2010-04-28) で以下となることを確認しました。
> aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEIK?= naninuneno
が、個人的には下を想像していたので、改行のエンコードが意外でした。
> aiueo kakikukeko =?ISO-2022-JP?B?GyRCJDUkNyQ5JDskPSQ/JEEkRCRGJEgbKEI=?=
> naninuneno
nkf-2.1.0.tar.gzが最新と思っていましたが、リポジトリの方は2.1.1に改版されていたんですね。
2010/07/19(月) 15:38:09
下をデコードしてみるとダメな理由がわかるかと思います。
このあたり MIME encode って難しいんですよねぇ。
リポジトリ内のバージョンはリリース後の次のコミットで上がります。
ちなみに、2.1.1 は Ruby 1.9.2 がリリースされるころに出ます。
このあたり MIME encode って難しいんですよねぇ。
リポジトリ内のバージョンはリリース後の次のコミットで上がります。
ちなみに、2.1.1 は Ruby 1.9.2 がリリースされるころに出ます。
2010/07/19(月) 18:33:50
8月初旬か・・
2010/09/13(月) 21:14:57
nkf-2.1.1.tar.gz 日付: 2010-09-13, サイズ: 153.8 KB
2010/09/13(月) 23:24:00
あらま。
19:30にsourceforgeを覗いたときはまだ2.1.0が最新だったのに、生き馬の目を抜くような。
19:30にsourceforgeを覗いたときはまだ2.1.0が最新だったのに、生き馬の目を抜くような。
2010/09/22(水) 08:50:07
make testでtest_data/ruby-dev:39722がFailになるよ
2010/09/22(水) 10:29:42
それ、もう報告されて直ってるよ
280278
2010/09/22(水) 13:23:20 ありがとう。解決しました。
2010/12/21(火) 21:31:44
nkfは、linux用に nkf.dll を導入すべき。
2010/12/22(水) 08:01:59
他のプログラムから利用できるライブラリがあるといいね。
2010/12/22(水) 21:22:41
nkf はもう、Ruby のためだけにメンテされてるのではなかろうか。
2011/04/02(土) 20:06:05.51
DOSでUTF-8 -> SJIS変換に役立っています。(^^)/
2011/04/02(土) 22:17:57.57
そういえば、デフォルト出力コードがsjisになったことなかったけ。
2011/05/22(日) 09:15:15.72
いつになったら'%EF%BC%AE%EF%BC%AB%EF%BC%A6'を小細工なしでデコードできるようになるの?
2011/05/22(日) 09:45:16.35
echo '%EF%BC%AE%EF%BC%AB%EF%BC%A6' | nkf --url-input
じゃだめなん?
じゃだめなん?
2011/07/10(日) 22:36:45.24
いつになったら'%EF%BC%AE%EF%BC%AB%EF%BC%A6'へ小細工なしでエンコードできるようになるの?
2011/07/11(月) 07:35:15.20
スクリプト言語使えよ
2011/07/11(月) 10:30:27.07
291名無しさん@お腹いっぱい。
2011/07/27(水) 20:05:47.10 全角ハイフン「―」(EUC-JPで a1 bd)のUTF-8って
nkf -Ew で変換すると e2 80 94
iconvで変換すると e2 80 95
どちらが正しいの?
UTF-8の e2 80 94をiconvでEUC-JPとに変換すると
iconv: illegal input sequence
ってエラーで中断。
nkf -We なら e2 80 94も e2 80 95も a1 bd に変換される。
nkf -Ew で変換すると e2 80 94
iconvで変換すると e2 80 95
どちらが正しいの?
UTF-8の e2 80 94をiconvでEUC-JPとに変換すると
iconv: illegal input sequence
ってエラーで中断。
nkf -We なら e2 80 94も e2 80 95も a1 bd に変換される。
2011/07/27(水) 20:52:24.85
291です。自己解決しました。スレ汚しスマソ
2011/07/27(水) 22:39:32.22
どう解決したのよ。
2011/07/28(木) 19:01:59.52
>>292
どう解決したのよ。
どう解決したのよ。
2011/07/28(木) 20:03:31.55
> nkf -Ew で変換すると e2 80 94
EM DASHか
> iconvで変換すると e2 80 95
HORIZONTAL BARかって違いだよね。
EM DASHか
> iconvで変換すると e2 80 95
HORIZONTAL BARかって違いだよね。
2011/09/08(木) 22:06:27.11
新版来たけど、まだ>>288には対応してくれないよー。
2011/09/08(木) 22:50:40.67
perl -ane 's/([^\000-\040a-zA-Z0-9$-_.+])/sprintf("%%%X", ord($1))/ge; print $_'
これで我慢しとけ
これで我慢しとけ
298アンネ
2011/12/10(土) 00:00:22.89 やぁ(笑)
2011/12/27(火) 00:45:53.12
test
2012/03/04(日) 17:13:02.30
300
レスを投稿する
ニュース
- 【速報】トランプ大統領、中国の習近平国家主席を「国賓」として招待することに ★2 [ニョキニョキ★]
- 日本と中国を結ぶ12航空路線で全便欠航 中国人に最も人気の海外旅行先は日本から韓国に [ぐれ★]
- 米中電話会談、トランプ氏は「米国側は中国にとっての台湾問題の重要性を理解する」 [1ゲットロボ★]
- 【東京・足立の車暴走】赤信号無視か 危険運転致死傷疑いも視野に捜査 逮捕された職業不詳の男性(37)は精神疾患で通院歴も ★3 [ぐれ★]
- 【音楽】「なんでこんなバカが国のトップなの?」 若者に人気のバンド「GEZAN」のマヒトゥ・ザ・ピーポーが高市総理に苦言 [シャチ★]
- 【国際】トランプ氏、来年4月に中国を訪問する招待を受け入れる 習氏も国賓で訪米へ 電話会談 [ぐれ★]
- 【高市悲報】来年、習近平主席がアメリカに「国賓」として訪米。どうするんだよ高市・・・アメリカも敵に回すのか? [483862913]
- 【悲報】有名配信者さん、公式大会で小学生の前で奇行して炎上して逆ギレwwwwwwwwwwwwwwwwww [856698234]
- フィフィ「外国人だろうが日本人だろうが反日は要らんのよ、この国に…自分にとって住みやすい国に行け。」 [856698234]
- 猟友会ハンター「警察や自衛隊の力を借りてのクマ駆除は大歓迎。肉の加工など 駆除の後についてもしっかりと話を進めてほしい」 [932029429]
- 【高市悲報】トランプおやびん「偉大な指導者である習近平首席、米国は中国にとっての台湾問題の重要性を理解しています」 [115996789]
- 4Kって綺麗か?
