Adam H. Kerman wrote:
> Andreas Prilop <
prilo...@trashmail.net> wrote:
>> On Tue, 20 Nov 2012, Adam H. Kerman wrote:
>>> X-Newsreader: trn 4.0-test76 (Apr 2, 2001)
>>>> --=20
>>>> Outgoing mail is certified free from defamation of Islam=99
>>>> and insult of the Prophet=99.
>>>
>>> I doubt that unconventional .sig delimiter shows up correctly anywhere.
>>
>> Using a newsreader that does not understand MIME (defined in 1993)
>> is worse than using a web browser that does not understand CSS.
>
> It understands that I want characters passed along to the terminal
> emulation just fine, thanks for your concern. […]
> I am displaying the codes of the characters which you so helpfully encoded
> using quoted-printable over this very fine 8-bit clean medium of
^^^^^^^^^^^
> communication,
How can you know that for sure? Maybe Andreas is – for some reason – still
on a 7-bit line? (See the bottom of this message.)
> which I then quoted in followup. With a different setup, I'd be decoding
> them.
It is possible to decode characters not found in US-ASCII into US-ASCII
forms that do not leave messages garbled and unreadable. For example, QP's
`=99' for the Windows-1252 `™' can be decoded as `(TM)'. There are tools
like iconv(1) which can automate that:
$ locale
LANG=de_CH.UTF-8
LANGUAGE=
LC_CTYPE="de_CH.UTF-8"
LC_NUMERIC="de_CH.UTF-8"
LC_TIME="de_CH.UTF-8"
LC_COLLATE="de_CH.UTF-8"
LC_MONETARY="de_CH.UTF-8"
LC_MESSAGES=en_US.UTF-8
LC_PAPER="de_CH.UTF-8"
LC_NAME="de_CH.UTF-8"
LC_ADDRESS="de_CH.UTF-8"
LC_TELEPHONE="de_CH.UTF-8"
LC_MEASUREMENT="de_CH.UTF-8"
LC_IDENTIFICATION="de_CH.UTF-8"
LC_ALL=
$ echo '™' | iconv -t 'US-ASCII//TRANSLIT'
(TM)
(Extra care must be taken with German umlauts, though, which iconv(1) does
not.)
That said, the default character encoding for newer (at least five-year old
and newer) Unices is UTF-8. You must be using a really old (or
configurationally aged) terminal emulation. Maybe you want to upgrade to
the 21st century?
> I don't think newsreaders expect an encoded space character in a
> delimiter, but perhaps you're right.
A trailing space such as required for a proper signature delimiter MUST be
encoded in the Quoted-Printable (QP) Content-Transfer-Encoding (CTE), and my
newsreaders (among them, KNode/4.4.11) decode that properly. See
<
http://en.wikipedia.org/wiki/Quoted-printable> and RFC 2045, section 6.7,
paragraph 3.
There are no "pages", there are (HTML, XHTML, XML, …) _documents_.
Google Groups is (for once, correctly) using UTF-8 by default for the
display of those messages because you should do that (in a Web application)
when the character encoding in the user's locale (thus, the typed and
submitted message) is unknown. (Of all the Unicode encodings, UTF-8 is the
most space-efficient and most widely supported.)
> You used two different Latin 1 character sets.
No, he used US-ASCII and Windows-1252; only the latter is what could be
called a "Latin 1 character set" (it is a character _encoding_, not a
character set).
It is useful (more efficient) that a newsreader would fall back to the
character encoding for the smallest character set necessary to transfer the
message without garbling its content. You will notice that Andreas used the
<“>, <”>, and <™> (trade mark) characters in some of his messages, but not
in others, which made it necessary in the former to encode them with
something other than US-ASCII, in this case Windows-1252.
KNode/4.4.11 has this feature as well. As a result, this message's body
will be encoded with UTF-8 and declared as UTF-8-encoded because I used the
Unicode representations of Windows-1252 characters here. Had I not done
that, it would probably have been US-ASCII.
So we do not need Google Groups to "screw up" anything here.
> Various people have caught mistranslation problems over the years. I'll
> have to check if the transformation is correct from these two character
> sets to UTF-8.
See above, but:
US-ASCII is a subset of UTF-8 (again, character _encodings_); Windows-1252
is not, but there are only a few code points that differ from the character
set of the ISO-8859-1 encoding and (by extension) from Unicode:
<
http://en.wikipedia.org/wiki/Windows-1252#Code_page_layout>
> One thing no one's ever said is that the things that Google screws up
> don't get screwed up with the use of quoted-printable.
ISTM that they find new things to screw up with regarding Internet messages
with each passing month, though. The quality of postings injected there is
not particularly high either, so I have UDP'd Google Groups in my newsreader
in April this year.
[If only there was a real UDP threat against Google as has been
(successfully) against others, things might change for the better. Without
that, it is evident to me that Google could not care less about Usenet that
enabled their Google Groups once, lack of newbie information and spam
*prevention* included. Their primary concern appears to be that the users
of *their* groups/mailing lists are happy.]
> Has that been your experience and is that why you're using it? Can you
> give me an example of non-encoded text that Google Groups would screw up?
That would be quite off-topic here. This thread has been drifting into
off-topicness since quite a few postings ago. (Do you remember that the
original posting was about *HTML tags* in plain-text messages?)
> I'm giving you the benefit of a doubt that you're doing this with purpose.
Andreas' reasons might be just historical, or due to his newsreader's
limitations. Certainly there is nothing wrong with using QP, or CTE in
general, even these days.
[Historically, CTE was introduced so that Internet messages with characters
that required more than 8 bits to encode (so everything beyond US-ASCII)
could be transferred safely over channels that would only allow 7 bits
(probably at first, from Europe to the US, whereas for the languages spoken
in the former you need more than US-ASCII). The then zero-valued MSB of the
octets would simply have been cut off without additional measures and loss
of information. (Therefore, `Content-Transfer-Encoding: 8 Bit' can be
omitted.)]
PointedEars
--
When all you know is jQuery, every problem looks $(olvable).