2008年8月2日土曜日

Gmailの空白の行頭が消えてしまう件について

Gmailは非常に便利で、有意義に使わせてもらっている。
WEBメールなのに高速な応答。
7GB近い容量。
スパム対策。
他のメールサーバからも受信可能。
…etc
こんな便利なサービスが無料なのだから、大変ありがたい。

そんなGmailを使っていて、一つ腑に落ちない点がある。
タイトルに書いた行頭の空白についてだ。
自分はテキストメールでは、空白でインデントを使っている。
でも、確かに手元の送信メールで入っている空白が、Gmail上では消えている or 少なくなっている

Googleグループに質問している人もいたが、答えは無いようだ。
おそらく仕様なのだろう。

ところで、行頭空白が「完全に消えている」こともあるが「少なくなって表示されている」こともあるみたいなので、やり方によってはインデントが可能なのかどうかを調べて見た。

手元で以下のようなデータを作成して見た。
元データは大きく分けて4種類。

1.先頭が全角空白のもの+空白後最初の文字が全角のもの
2.先頭が半角空白のもの+空白後最初の文字が全角のもの
3.先頭が全角空白のもの+空白後最初の文字が半角のもの
4.先頭が半角空白のもの+空白後最初の文字が半角のもの

各行の数字は、行頭に入れた全角/半角空白の数。


---作成データ------------------------------begin
【全角空白+全角文字】
A空白0
 A空白1
  A空白2
   A空白3
    A空白4
     A空白5
      A空白6
       A空白7
        A空白8
         A空白9
          A空白10
           A空白11
            A空白12

【半角空白+全角文字】
A空白0
 A空白1
  A空白2
   A空白3
    A空白4
     A空白5
      A空白6
       A空白7
        A空白8
         A空白9
          A空白10
           A空白11
            A空白12

【全角空白+半角文字】
Akuhaku0
 Akuhaku1
  Akuhaku2
   Akuhaku3
    Akuhaku4
     Akuhaku5
      Akuhaku6
       Akuhaku7
        Akuhaku8
         Akuhaku9
          Akuhaku10
           Akuhaku11
            Akuhaku12

【半角空白+半角文字】
Akuhaku0
 Akuhaku1
  Akuhaku2
   Akuhaku3
    Akuhaku4
     Akuhaku5
      Akuhaku6
       Akuhaku7
        Akuhaku8
         Akuhaku9
          Akuhaku10
           Akuhaku11
            Akuhaku12
---作成データ------------------------------end



結果、Gmailでは以下のように表示された。

---Gmail表示データ------------------------------begin
【全角空白+全角文字】
A空白0
A空白1
A空白2
A空白3
A空白4
A空白5
A空白6
A空白7
A空白8
A空白9
A空白10
A空白11
A空白12

【半角空白+全角文字】
A空白0
 A空白1
 A空白2
  A空白3
   A空白4
    A空白5
     A空白6
      A空白7
       A空白8
        A空白9
         A空白10
          A空白11
           A空白12

【全角空白+半角文字】
Akuhaku0
Akuhaku1
Akuhaku2
Akuhaku3
Akuhaku4
Akuhaku5
Akuhaku6
Akuhaku7
Akuhaku8
Akuhaku9
Akuhaku10
Akuhaku11
Akuhaku12

【半角空白+半角文字】
Akuhaku0
 Akuhaku1
 Akuhaku2
  Akuhaku3
   Akuhaku4
    Akuhaku5
     Akuhaku6
      Akuhaku7
       Akuhaku8
        Akuhaku9
         Akuhaku10
          Akuhaku11
           Akuhaku12
---Gmail表示データ------------------------------end

結果として、以下のことが分かった。

1.行頭の全角空白は完全に削除される。
2.行頭の半角空白は1個のときはそのまま、2個以上で「半角空白個数-1」になる。
3.空白後、最初の文字は全角でも半角でも違いは無い。

とりあえず、半角でインデントすればある程度意図したとおりに表示できるようだ。
理由は分からず、釈然としないが、とりあえずはこのルールで使おうと思う。

0 件のコメント: