ダウンロード
Magazine
開発
アカウント
ダウンロード
Magazine
開発
ログイン
アカウント/パスワードを忘れた
アカウント作成
言語
ヘルプ
言語
ヘルプ
×
ログイン
ログイン名
パスワード
×
アカウント/パスワードを忘れた
日本語の翻訳状況
カテゴリ:
ソフトウェア
人物
PersonalForge
Magazine
Wiki
検索
OSDN
>
ソフトウェアを探す
>
テキストエディタ
>
テキスト処理
>
nkf Network Kanji Filter
>
チケット一覧/検索
>
チケット #11239
nkf Network Kanji Filter
Fork
概要
プロジェクト概要
開発ダッシュボード
Webページ
開発メンバー
画像ギャラリー
公開フィード一覧
活動
統計情報
活動履歴
ダウンロード
リリース一覧
統計
ソースコード
コードリポジトリリスト
Git
nkf
CVS
リポジトリ閲覧
チケット
チケット一覧
マイルストーン一覧
チケットの種類一覧
コンポーネント一覧
よく使われるチケット一覧のリスト/RSS
新規チケット登録
コミュニケーション
フォーラム
フォーラム一覧
公開討議 (218)
メーリングリスト
MLの一覧
nkf-dev
ニュース
チケット #11239
チケット一覧/検索
新規チケット登録
RSS
MIME encode で、長大な ASCII 単語を与えたときの処理が変
登録:
2007-10-30 23:04
最終更新:
2008-05-28 23:52
モニタ
ON
OFF
報告者:
efialtes
担当者:
(未割り当て)
チケットの種類:
バグ
状況:
完了
コンポーネント:
(未割り当て)
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
5 - 中
解決法:
受領
ファイル:
5
詳細
返信
CVS 先頭でもほぼ同じく駄目です。正直言って処理がメチャ
メチャレベルですが、以下は確認しました。
(1) 指定したエンコーディングとは無関係に、ASCII-Q
(2.0.7 では EUC) が使われる。ついでに、この動作について
は現在の man は誤り。
(2) Q-encoding が正しく動かない。エスケープすべき文字が
筒抜けになる。
(3) 74 文字の wordwrap 処理が無視される。
見た感じだと相当直さなければ、って感触ですけど、いちお
う修正パッチを検討中。
チケットの履歴 (17 件中 3 件表示)
古い履歴を表示
2007-11-01 01:33
更新者:
naruse
コメント
返信
Logged In: YES
user_id=3487
もともとあったコードに空白が来た時の処理等を加えたらカオスに
なってしまったのですよね・・・。全部捨てて、他から頂いてくる
かスクラッチから書き直すかを検討しつつ今に至っています。
1と2は容易に直せそうなのですが、手元で再現できないので再現コ
ードいただけませんか。
2007-11-01 22:24
更新者:
efialtes
コメント
返信
Logged In: YES
user_id=3309
とりあえず。
ちなみに 2, 3 は単純な処理抜けっぽいですけど、1 と、現在検出
している改行コードと無関係に LF を吐く、ってのは修正が結構大
変なような。後者はなんか闇試合っぽくてよくわかりません。
2007-11-01 22:24
更新者:
efialtes
添付ファイル
2073: longascii.txt
が付加されました
2007-11-02 10:37
更新者:
efialtes
添付ファイル
2074: diff0.txt
が付加されました
コメント
返信
Logged In: YES
user_id=3309
とりあえずパッチ。LF の件には何も手をつけていません。
2007-11-02 13:26
更新者:
efialtes
添付ファイル
2075: diff1.txt
が付加されました
コメント
返信
Logged In: YES
user_id=3309
あー、MIME-B の方も駄目ですね。diff1 の方を使ってください。
#これでいいのかどうかはちょっと微妙ですけど。
2007-11-02 14:30
更新者:
efialtes
添付ファイル
2076: diff1.txt
が付加されました
2007-11-02 14:32
更新者:
efialtes
添付ファイル
2077: diff1.txt
が付加されました
2007-11-03 07:14
更新者:
naruse
コメント
返信
Logged In: YES
user_id=3487
ありがとうございます、一部マージしました。
(1)ですが、これは意図した挙動です。ASCIIのみの文字列の場合は
ASCII-Qにするようにした・・・ような記憶があります。たぶんそ
のほうが容量が少なくて済むからでしょう。マニュアルのJISに変
換云々は非ASCII文字列についてという解釈です。これでも特に問
題ないですよね。
LF云々というのが理解できていないのですが何のことでしょう。
2007-11-03 17:04
更新者:
naruse
コメント
返信
Logged In: YES
user_id=3487
nkf.c rev:1.147で件のlongascii.txtはまともになった気がしま
す。
2007-11-04 23:10
更新者:
efialtes
コメント
返信
Logged In: YES
user_id=3309
UTF-8 のときも ASCII/ISO8859-1 になるのは変だと思いますけ
ど、JISについては現状でも趣味の範囲と思います。ただ、マニュ
アルの件はそういう話ではなく、EUC 出力だと EUC-JP, UTF-8 だ
と UTF-8 の MIME になっていますから、JIS ではないでしょうと
いうことです。man は直す必要あると思う。
LF絡みに関しては、現在 MIME 用の folding は必ず LF 改行に
なってません? これは私の錯覚かも。
2007-11-04 23:11
更新者:
efialtes
コメント
返信
Logged In: YES
user_id=3309
UTF-8 のときも ASCII/ISO8859-1 になるのは変だと思いますけ
ど、JISについては現状でも趣味の範囲と思います。ただ、マニュ
アルの件はそういう話ではなく、EUC 出力だと EUC-JP, UTF-8 だ
と UTF-8 の MIME になっていますから、JIS ではないでしょうと
いうことです。man は直す必要あると思う。
LF絡みに関しては、現在 MIME 用の folding は必ず LF 改行に
なってません? これは私の錯覚かも。
2007-11-05 01:14
更新者:
naruse
コメント
返信
Logged In: YES
user_id=3487
UTF-8でISO-8859-1は確かに微妙ですね、これは直します。ASCIIは
そのままにしとこうかな。
あー、言われてみればそうですね。JISに変換の記述は削除してお
きます。
LFは確かにそうですね。これも直します。
2007-11-05 22:58
更新者:
efialtes
コメント
返信
Logged In: YES
user_id=3309
ごめんなさい。() の二文字も Q-encode のエスケープ対象に含め
てください。
# 知ってはいたんですけど、パッチでの修正からファイルの出し入
れの都合で漏れていたため。
2007-11-06 21:28
更新者:
naruse
コメント
返信
Logged In: YES
user_id=3487
* UTF-8出力の場合のISO-8859-1
* JISに変換の記述
* nkf_noescape_mime()に()を追加
* 多少の調整
を行いました。
改行の検出を実装したのでいけるかと思ったのですが、
一行目から折り返しが必要な場合どうするか考え中。
2007-11-06 22:50
更新者:
efialtes
コメント
返信
Logged In: YES
user_id=3309
folding と一緒で、あちらは確定していない場合既定値の改行コー
ドを吐いていたはずなので、MIME だけ頑張っても仕方がないと思う。
# ちなみに、skf は文字コード判定論理内で改行コードの検出をす
る処理を含ませていますが、perl/ruby を考えるとあまり意味がな
かったかなという気はしています。
2007-12-26 18:18
更新者:
naruse
コメント
返信
Logged In: YES
user_id=3487
デフォルトの改行コードを決めて、それを出力することにしまし
た。
2008-05-28 23:52
更新者:
efialtes
チケット完了時刻
が
2008-05-28 23:52
に更新されました
状況
が
オープン
から
完了
に更新されました
解決法
が
なし
から
受領
に更新されました
添付ファイルリスト (
5
)
添付ファイルリスト
longascii.txt
(506バイト)
diff0.txt
(6KB)
diff1.txt
(6KB)
diff1.txt
(7KB)
diff1.txt
(7KB)
編集
コメントの追加
ログインしていません。
ログインしていない状態では、コメントに記載者の記録が残りません。 »
ログインする
コメントの追加
プレビュー
適用
メチャレベルですが、以下は確認しました。
(1) 指定したエンコーディングとは無関係に、ASCII-Q
(2.0.7 では EUC) が使われる。ついでに、この動作について
は現在の man は誤り。
(2) Q-encoding が正しく動かない。エスケープすべき文字が
筒抜けになる。
(3) 74 文字の wordwrap 処理が無視される。
見た感じだと相当直さなければ、って感触ですけど、いちお
う修正パッチを検討中。