[#10553] base64.rb — Sinichiro Dezawa <dezawa@...>

出沢です

92 messages 1998/11/01
[#10565] Re: base64.rb — Shin-ichiro Hara <sinara@...> 1998/11/01

原です。

[#10583] Re: base64.rb — matz@... (Yukihiro Matsumoto) 1998/11/02

まつもと ゆきひろです

[#10595] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/02

出沢です

[#10611] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/04

出沢です

[#10613] Re: base64.rb — matz@... (Yukihiro Matsumoto) 1998/11/04

まつもと ゆきひろです

[#10614] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/04

matz> kconvにかけるってのは反則ですか? 今のkconvはB-encodingをデ

[#10615] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/04

>あー、そんなのがあったのか。反則だ。

[#10616] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/04

dezawa> >あー、そんなのがあったのか。反則だ。

[#10617] Re: base64.rb — WATANABE Hirofumi <watanabe@...> 1998/11/04

わたなべです.

[#10618] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/04

watanabe> 何も指定しなくていいです. もともとは nkf で

[#10621] Re: base64.rb — matz@... (Yukihiro Matsumoto) 1998/11/04

まつもと ゆきひろです

[#10623] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/04

matz> エンコードにはpack("m")がお勧めなのかなあ.

[#10635] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/04

dezawa> 手を付け兼ねてるのは、

[#10642] Re: base64.rb — WATANABE Hirofumi <watanabe@...> 1998/11/05

わたなべです.

[#10648] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/05

watanabe> エスケープとか全部含めて encode する必要があります.

[#10654] Re: base64.rb — WATANABE Hirofumi <watanabe@...> 1998/11/05

わたなべです.

[#10659] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/05

watanabe> といろいろ問題はあるけど pack("m") は encode した結果が長く

[#10663] Re: base64.rb — WATANABE Hirofumi <watanabe@...> 1998/11/05

わたなべです.

[#10664] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/05

watanabe> 自前で細切れに処理しないとだめかな?

[#10672] Re: base64.rb — aamine@... 1998/11/05

あおきです。

[#10673] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/05

aamine> さらに難しくしてしまうのもなんなんですが

[#10702] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/07

出沢@フジフイルム です

[#10737] Re: base64.rb — aamine@... 1998/11/09

あおきです。

[#10741] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/09

すばやい

[#10796] Re: base64.rb — Sinichiro Dezawa <dezawa@...> 1998/11/13

出沢です

[#10800] Re: base64.rb — Shun-ichi GOTO <gotoh@...> 1998/11/13

後藤@太陽計測です

[#10801] Re: base64.rb — Toru Hoshina <toru@...> 1998/11/13

保科です。

[#10802] Re: base64.rb — Shun-ichi GOTO <gotoh@...> 1998/11/13

後藤@太陽計測です

[#10804] Re: base64.rb — Toru Hoshina <toru@...> 1998/11/13

保科です。

[#10806] Re: base64.rb — Shun-ichi GOTO <gotoh@...> 1998/11/13

後藤@太陽計測です

[#10676] 11/10 tokyo offline meeting — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

19 messages 1998/11/06

[#10697] Re: 11/10 tokyo offline meeting — KIMURA Koichi <kkimura@...>

35 messages 1998/11/07
[#10721] Re: 11/10 tokyo offline meeting — keiju@... (石塚圭樹 ) 1998/11/08

けいじゅ@日本ラショナルソフトウェアです.

[#10729] Re: 11/10 tokyo offline meeting — matz@... (Yukihiro Matsumoto) 1998/11/09

まつもと ゆきひろです

[#10738] Re: 11/10 tokyo offline meeting — keiju@... (石塚圭樹 ) 1998/11/09

けいじゅ@日本ラショナルソフトウェアです.

[#10743] Re: 11/10 tokyo offline meeting — ARIMA Yasuhiro <fit0298@...> 1998/11/09

Regard to "[ruby-list:10738] Re: 11/10 tokyo offline meeting"

[#10708] Re: 11/10 tokyo offline meeting — TEI meiki <tei@...> 1998/11/07

鄭です。

[#10709] Re: 11/10 tokyo offline meeting — Sinichiro Dezawa <dezawa@...> 1998/11/07

では 「やぐら茶屋」NSビル店 で一応決まりということで?

[#10713] Re: 11/10 tokyo offline meeting — TEI meiki <tei@...> 1998/11/07

鄭です。

[#10747] ruby 1.1c7 released — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

23 messages 1998/11/09

[#10904] ruby 1.1c8 released — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

16 messages 1998/11/17

[#10910] require error (tkutil.so -> tk.so) — ttate@...

立石です。

17 messages 1998/11/17
[#10924] Re: require error (tkutil.so -> tk.so) — matz@... (Yukihiro Matsumoto) 1998/11/18

まつもと ゆきひろです

[#10926] Re: require error (tkutil.so -> tk.so) — WATANABE Hirofumi <watanabe@...> 1998/11/18

わたなべです.

[#11054] ruby-list offline meeting at 11/27 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

36 messages 1998/11/26
[#11056] Re: ruby-list offline meeting at 11/27 — Sinichiro Dezawa <dezawa@...> 1998/11/26

残念なのですが、出沢は無理そうです。

[#11057] Re: ruby-list offline meeting at 11/27 — matz@... (Yukihiro Matsumoto) 1998/11/26

まつもと ゆきひろです

[#11061] Re: ruby-list offline meeting at 11/27 — IWAMURO Motonori <iwa@...> 1998/11/26

岩室@富士通です。

[#11062] Re: ruby-list offline meeting at 11/27 — keiju@... (石塚圭樹 ) 1998/11/26

けいじゅ@日本ラショナルソフトウェアです.

[#11067] Re: ruby-list offline meeting at 11/27 — "D.Kanda" <MAP2303@...> 1998/11/26

[#11072] Re: ruby-list offline meeting at 11/27 — keiju@... (石塚圭樹 ) 1998/11/26

けいじゅ@日本ラショナルソフトウェアです.

[ruby-list:10814] Re: base64.rb

From: Shun-ichi GOTO <gotoh@...>
Date: 1998-11-13 14:45:22 UTC
List: ruby-list #10814
後藤@太陽計測です

base64.rbのためにも、続けちゃいます (._.)>

#私自身はRFC2047は「欠陥がある」というよりは「十分でない」というくらい
#に感じてるです。(間違った解釈している可能性も大ではありますが)


>>>>> at Fri, 13 Nov 1998 21:56:01 +0900
>>>>> dezawa <dezawa@miya.fujifilm.co.jp> said,

dezawa> 1 ○1行の文字長の最大は、エンコードのみ、エンコードなしのみ、
dezawa>      そのごちゃまぜ含め、行頭の空白を含めて 76Byte。
dezawa>    ×1行76Byteではなくて、1行中のエンコード文字列長(合計)が76Byte

これは先のメールに書いたとおりかと。


dezawa> 2 ?"漢字file" は空白が無いから、全体をまとめて エンコードすべし。
dezawa>       英数字をスルーしないで一緒くたにencodeするのが正しい解釈

これが「空白保存の問題」かと思います。

Section 5 の (1)で

>    Ordinary ASCII text and 'encoded-word's may appear together in the
>    same header field.  However, an 'encoded-word' that appears in a
>    header field defined as '*text' MUST be separated from any adjacent
>    'encoded-word' or 'text' by 'linear-white-space'.

とあるため、encoded-word と それ以外のテキストとの間には liner-white-space
がMUSTなので。逆に、"漢字" と "file"に分けて前者のみをエンコードすると、
間にliner-white-spaceを入れねばならず、とすると、decode時に空白が取り除け
ない以上、原文と同じにならないじゃないか。じゃぁ、いっしょにエンコード
しなければならないじゃないか。という結論が導かれるわけです。

RFC2047には「分けてはいけない」とか、われわれが知りたいケースについて
は書いてありません。そういう明確な例がありませんし、分割のアルゴリズム
も提示していません。そこいらへんを考慮してくれてるのかいな? と、疑っ
てしてしまいたくもなります。

#そのあたりが、「word間にスペースはフツーあるでしょ」的な雰囲気を
#感じる点です。


dezawa>    ?いっしょにエンコードするのは、必要最小限にすべき

「最小限にすべき」というのはちょっと言い過ぎでしたね。これは後述。
そうあって欲しいし、そうあってくれないとMLなどで困るし、という
一般的意識があるため、そう書いてしまいました。


dezawa> 3 ?"漢字 file" をデコードすると
dezawa>      "漢字 file" と間に空白が入る。

rfc2047には削除して良いとは書いてありませんから、そういうことになるで
しょう。ただし、encoded-wordの並びの間のliner-white-spaceに関しては削
除(無視)されると書かれています。これはコンコードされた文字列に長さ制限
を設けているため、長いエンコードの分割を許すために必要だからだというこ
とです。

section 6.2 
>6.2. Display of 'encoded-word's
...snip...
>   When displaying a particular header field that contains multiple
>   'encoded-word's, any 'linear-white-space' that separates a pair of
>   adjacent 'encoded-word's is ignored.  (This is to allow the use of
>   multiple 'encoded-word's to represent long strings of unencoded text,
>   without having to separate 'encoded-word's where spaces occur in the
>   unencoded text.)


dezawa> じつは、1は英語を読み違えてた様で、rfcを読み直す前の方が合っていた。
dezawa>   読む直前に、mew でどうなるかみたら、ずらーーっと長ーくエンコード
dezawa>   してたので、あれ?って思ってたんです。で、英語読む時に間違えた、、

ちなみにMewでは 76 char width をまじめに考慮してエンコードしているわけ
ではなく、オーバーしたらば元テキストを半分ずつにしてエンコード、を繰り
返して実現してます。

先のメールで挙げたFLIMは、結構まじめに、76を超えない最大となるように
がんばってます。


dezawa> 2 はどちらが正しいのでしょう。後藤さん「最小限にすべき」というのは
dezawa> どのあたりからそのようになったのでしょうか。

人間的にも「極力可読であってほしい」という一般的思いもあるため「すべき」
などと書きましたが、rfc2047でははっきり書いてあったかなぁ。このあたりかな?
ニュアンスがよく理解できないので違うかも。

section 5 の最後の、"Use of ..., but discouraged."

>5. Use of encoded-words in message headers
...snip...
>   Use of these methods to encode non-textual data (e.g., pictures or
>   sounds) is not defined by this memo.  Use of 'encoded-word's to
>   represent strings of purely ASCII characters is allowed, but
>   discouraged.  In rare cases it may be necessary to encode ordinary
>   text that looks like an 'encoded-word'.

(「その他の注意」の一部になるかな。。。)
訳: これらの非テキストデータ(例えば絵や音)のエンコード方法は
     本書では定義されません。 ピュアなASCII文字列を表すのにencoded-word
     を試用することは許されていますが、考え直してください。極まれに
     encoded-wordのよう(に解釈され得てしまう)な通常のテキストを
     エンコードする必要があるかもしれません。



dezawa> 3 ですが、(2とも絡むのですが、)これは正しいのでしょうか。

dezawa>    (a b)                      (a b)

dezawa>            Within a 'comment', white space MUST appear between an
dezawa>            'encoded-word' and surrounding text.  [Section 5,

dezawa> という記述があります。一見では "漢字 file"を支持するのですが、
dezawa> "Within a 'comment'" という断りが気になります。
dezawa> commentではない、すなわち( ) で囲まれない場合はどうなの?って
dezawa> 探してるんですが、未だ見付からず。

上記は確かに "Within a 'comment'"なので、そのまま全体には適用できない
ですよね。

では、comment以外の場合はどうかというと、明確に空白が保存されるとも書
いていませんが、先に挙げたように、text中でencoded-wordは単なるwordなの
で、当然空白を削除する根拠がありません。なので、空白が入る、と理解して
います。


ということで、どーでしょーか

--- Regards,
 Shun-ichi Goto  <gotoh@taiyo.co.jp>
   R&D Group, TAIYO Corp., Tokyo, JAPAN

In This Thread