[kde-linux] Re: Request for multiple monitor xorg.conf files? - "jed.monitors.conf" (001/001)
Duncan
1i5t5.duncan at cox.net
Tue Jun 28 08:01:58 UTC 2011
Pascal Bernhard posted on Tue, 28 Jun 2011 07:32:58 +0200 as excerpted:
> Hey Duncan,
> does yenc have any advntages over traditional, 'old-school' stuff like
> UTF8?
They're orthogonal concepts, so your question doesn't have a direct
answer, but the (if I may) implied question, why the bother, is none-the-
less rather interesting in itself.
The basic problem is that the original email standards were designed with
7-bit ASCII text data (and a restricted set of that) in mind, and aren't
directly compatible with normal 8-bit binary files, which must thus be
"encoded" using some scheme or another into some form that can be
reliably transmitted thru the mail system and then decoded on the other
end, without loss or damage to the binary data, which could after all be
an executable or something else sensitive to bit-flipping or similar
damage.
One of the first such encodings ('80s, perhaps earlier) was called unix-
to-unix encoding, aka uuencode or simply uue. There's of course a
wikipedia entry for it if you want the details. A somewhat better and
more standardized solution introduced with MIME (multipurpose internet
mail extensions, developed early-to-mid-90s... wikipedia...)
standardization was base64.
The problem with both uuencoding and mime/base64 encoding, however, was
that they used a subset of 64 (reliably transferable) printable ASCII
characters to encode 6 bits per printable character, but these printable
characters themselves were normally encoded in 8-bit ASCII both "on the
wire" and as stored in the files containing the messages at each end.
Thus, it took 8 bits to encode 6 bits worth of data, and the resulting
space and bandwidth required was normally 4/3 (or more, due to other
overhead, 33-40% overhead) that of the actual binary file size.
In 2001 J Helbing introduced yEnc, sometimes called yyencoding in
reference to the original uuencoding. yEnc was designed and very quickly
became *EXTREMELY* popular on USENET, because it cut the overhead to a
much more manageable 5% or so by taking advantage of the fact that nearly
all of USENET was operating on 8-bit safe connections by that time. The
cut to ~5% overhead *MATTERED* to people generally on sub-megabit
connections or even still on <56k dialup at the time, so yEnc very
quickly became the de facto standard on binary newsgroups. In fact, it
became SO popular SO fast, that the format really had no time to evolve
into a proper standard. As a result, some of the weaknesses of the
original uue that had already been corrected in mime/base64 were
reintroduced.
While there has been talk of formalizing the standard, by the turn of the
century USENET was already in some decline, and the various political
realities that had such an effect on P2P further discouraged formal
standardization, so it never really happened, and yEnc support remains
even today somewhat hit or miss, especially for mail clients, tho a
binary news client that doesn't include yEnc support really can't be
considered a serious binary news client at all, these days.
Meanwhile, alternate charsets have had their own problems and history
with the originally ASCII internet message standards, but the solution
for them has evolved somewhat differently, including the UTF-* family of
standards (UTF-7, UTF-8, UTF-16...). However, to some degree at least,
the UTF-8 and UTF-16 variants often end up mime/base64 encoded, because
official Internet message standards are still MIME based, despite the
33-40% overhead this normally causes.
yenc itself has some UTF-8 issues as well, but UTF-8 seems to be driving
the process of standardizing the bit-space forward now, taking the place
ASCII originally had, and should USENET and email not fall toward the
irrelevance of say the old gopher protocol, eventually an updated MIME
standard will likely emerge that will address the bit-space problems both
binary file attaching and UTF-8 text encoding have.
There however does remain one loose end within the current context.
Standard ASCII text files don't normally /have/ to be attached as binary
encoded tho they often are simply because the client seldom makes the
distinction between binary and text file. Instead, they can be "identity
encoded", which more or less means simply cut-and-pasted as the text they
are. In a strictly MIME context, they can be attached as another text-
type MIME message-part, or they can simply be either directly pasted into
the message itself or appended to it, forming part of the main message
body text.
That of course is what I've not decided, whether I'll simply (re)send
those files appended as text to the message, or uue attach them. (FWIW,
due to the limitations of pan and the tools I'll be using to manually
attach the files since the new toy only does yenc binary attachments,
MIME/base64 attachment isn't an option at this end. I can now auto-
attach as yenc, or I can use a script I designed myself to attach as UUE
or identity-encoded-text in what without the script would otherwise be an
entirely manual process, but I don't have the MIME/base64 option.)
--
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman
More information about the kde-linux
mailing list