# [tex-live] cp227.tcx default mapping

Karl Berry karl at freefriends.org
Sat Jul 31 01:51:43 CEST 2004

After discussions with Olaf, Hans, and Thomas (Sebastian was included,
but appears to be busy with other things), we reached a consensus of
using a new file cp227.tcx as the -translate-file for all formats except
ConTeXt (which remains using -8bit).

This new tcx makes codes 128 and above printable, as just (the misnamed)
cp8bit.tcx does that we used last year.  In addition, it makes tab
(0x9), vertical tab (0xa), and form feed (0xb) printable.  All other
codes <=31 remain unprintable and will appear in ^^ notation.

As originally noted by Paul Vojta, this has the downside that certain
diagnostics to tty will be difficult to understand, for example:
\showhyphens{$\Psi} writes this to the terminal: Underfull \hbox (badness 10000) detected at line 0 []$\tenrm 	\$
(that's a real tab character after the \tenrm)
This is because \Psi is \mathchardef to "..09.  Similarly for \Omega and
\alpha.

But the advantage is that now real tabs and form feeds in the input will
*not* be translated to ^^I and ^^L when TeX writes error messages.
These are probably the most common codes below 32 which appear in input
files, thus the idea of translating only them.

Furthermore, writing other codes can confuse the linux terminal type (at
least), which would be perhaps the worst possible outcome.

I'm sure many people will be confused and/or upset by this, but it seems
the best we can do this year.  There are various improvements possible,
but they all require changing quite a bit of code, and if we still hope
to make a release in 2004, we need to stabilize.

I've checked in cp227.tcx and new versions of fmtutil.in and fmtutil.cnf
to implement this (change #5593).  Hope there is no horrible outcry ...

Thanks,
k