ok nicm
The no_error argument to icharset() is now unused and could go too.
On Fri, Nov 06, 2015 at 11:47:46AM -0500, Ted Unangst wrote:
> Ted Unangst wrote:
> > Having to define LESSCHARSET to print the special characters doesn't seem
> > that
> > useful. It doesn't do translation. So setting it to ebcdic isn't going to
> > magically make such files appear correctly in my xterm.
> >
> > There seem to be two possibilities:
> > 1. You have LESSCHARSET and LC_CTYPE set to the same thing. Things work.
> > 2. They are different. Things will not work.
> >
> > Removing the possibility that they are different would seem to be an
> > improvement.
>
> Oops, that was the big bomb diff. We want to keep the nl_langinfo and some
> charset support. Just remove the environment variable and pare down some of
> the stranger charsets.
>
> Index: charset.c
> ===================================================================
> RCS file: /cvs/src/usr.bin/less/charset.c,v
> retrieving revision 1.14
> diff -u -p -r1.14 charset.c
> --- charset.c 6 Nov 2015 16:20:37 -0000 1.14
> +++ charset.c 6 Nov 2015 16:37:42 -0000
> @@ -35,24 +35,6 @@ struct charset {
> /* BEGIN CSTYLED */
> { "ascii", NULL, "8bcccbcc18b95.b" },
> { "utf-8", &utf_mode, "8bcccbcc18b95.b126.bb" },
> - { "iso8859", NULL, "8bcccbcc18b95.33b." },
> - { "latin3", NULL,
> "8bcccbcc18b95.33b5.b8.b15.b4.b12.b18.b12.b." },
> - { "arabic", NULL,
> "8bcccbcc18b95.33b.3b.7b2.13b.3b.b26.5b19.b" },
> - { "greek", NULL, "8bcccbcc18b95.33b4.2b4.b3.b35.b44.b" },
> - { "greek2005", NULL, "8bcccbcc18b95.33b14.b35.b44.b" },
> - { "hebrew", NULL, "8bcccbcc18b95.33b.b29.32b28.2b2.b" },
> - { "koi8-r", NULL, "8bcccbcc18b95.b." },
> - { "KOI8-T", NULL,
> "8bcccbcc18b95.b8.b6.b8.b.b.5b7.3b4.b4.b3.b.b.3b." },
> - { "georgianps", NULL, "8bcccbcc18b95.3b11.4b12.2b." },
> - { "tcvn", NULL, "b..b...bcccbccbbb7.8b95.b48.5b." },
> - { "TIS-620", NULL, "8bcccbcc18b95.b.4b.11b7.8b." },
> - { "next", NULL, "8bcccbcc18b95.bb125.bb" },
> - { "dos", NULL, "8bcccbcc12bc5b95.b." },
> - { "windows-1251", NULL, "8bcccbcc12bc5b95.b24.b." },
> - { "windows-1252", NULL, "8bcccbcc12bc5b95.b.b11.b.2b12.b." },
> - { "windows-1255", NULL, "8bcccbcc12bc5b95.b.b8.b.5b9.b.4b." },
> - { "ebcdic", NULL,
> "5bc6bcc7bcc41b.9b7.9b5.b..8b6.10b6.b9.7b9.8b8.17b3.3b9.7b9.8b8.6b10.b.b.b."
> },
> - { "IBM-1047", NULL,
> "4cbcbc3b9cbccbccbb4c6bcc5b3cbbc4bc4bccbc191.b" },
> { NULL, NULL, NULL }
> /* END CSTYLED */
> };
> @@ -69,43 +51,6 @@ struct cs_alias {
> { "US-ASCII", "ascii" },
> { "646", "ascii" },
> { "C", "ascii" },
> - { "latin1", "iso8859" },
> - { "ISO-8859-1", "iso8859" },
> - { "latin9", "iso8859" },
> - { "ISO-8859-15", "iso8859" },
> - { "latin2", "iso8859" },
> - { "ISO-8859-2", "iso8859" },
> - { "ISO-8859-3", "latin3" },
> - { "latin4", "iso8859" },
> - { "ISO-8859-4", "iso8859" },
> - { "cyrillic", "iso8859" },
> - { "ISO-8859-5", "iso8859" },
> - { "ISO-8859-6", "arabic" },
> - { "ISO-8859-7", "greek" },
> - { "IBM9005", "greek2005" },
> - { "ISO-8859-8", "hebrew" },
> - { "latin5", "iso8859" },
> - { "ISO-8859-9", "iso8859" },
> - { "latin6", "iso8859" },
> - { "ISO-8859-10", "iso8859" },
> - { "latin7", "iso8859" },
> - { "ISO-8859-13", "iso8859" },
> - { "latin8", "iso8859" },
> - { "ISO-8859-14", "iso8859" },
> - { "latin10", "iso8859" },
> - { "ISO-8859-16", "iso8859" },
> - { "IBM437", "dos" },
> - { "EBCDIC-US", "ebcdic" },
> - { "IBM1047", "IBM-1047" },
> - { "KOI8-R", "koi8-r" },
> - { "KOI8-U", "koi8-r" },
> - { "GEORGIAN-PS", "georgianps" },
> - { "TCVN5712-1", "tcvn" },
> - { "NEXTSTEP", "next" },
> - { "windows", "windows-1252" }, /* backward compatibility */
> - { "CP1251", "windows-1251" },
> - { "CP1252", "windows-1252" },
> - { "CP1255", "windows-1255" },
> { NULL, NULL }
> };
>
> @@ -341,13 +286,6 @@ static void
> set_charset(void)
> {
> char *s;
> -
> - /*
> - * See if environment variable LESSCHARSET is defined.
> - */
> - s = lgetenv("LESSCHARSET");
> - if (icharset(s, 0))
> - return;
>
> /*
> * Try using the codeset name as the charset name.
>