# HG changeset patch # User Richard M. Stallman # Date 892761877 0 # Node ID 139e449079a7a11e073042ac43d6a38f742795a5 # Parent 18ee24ba7921c459c912a366102b29c2b066eee6 (standard_args): Add --no-unibyte. (main): Recognize --no-unibyte to inhibit EMACS_UNIBYTE. (main): Fix typo, add --multibyte and --no-multibyte. (standard_args): Add --multibyte and --no-multibyte. diff -r 18ee24ba7921 -r 139e449079a7 src/emacs.c --- a/src/emacs.c Thu Apr 16 18:49:41 1998 +0000 +++ b/src/emacs.c Thu Apr 16 21:24:37 1998 +0000 @@ -738,18 +738,28 @@ inhibit_window_system = 0; - /* --unibyte requests that we set up to do everything with single-byte - buffers and strings. We need to handle this before calling - init_lread, init_editfns and other places that generate Lisp strings - from text in the environment. */ - if ((argmatch (argv, argc, "-unibyte", "--unibyte", 4, NULL, &skip_args)) - || getenv ("EMACS_UNIBYTE")) - { - Lisp_Object symbol; - symbol = intern ("default-enable-multibyte-characters"); - Fset (symbol, Qnil); - Fset_default (symbol, Qnil); - } + { + int inhibit_unibyte = 0; + + /* --multibyte overrides EMACS_UNIBYTE. */ + if (argmatch (argv, argc, "-no-unibyte", "--no-unibyte", 4, NULL, &skip_args) + || argmatch (argv, argc, "-multibyte", "--multibyte", 4, NULL, &skip_args)) + inhibit_unibyte = 1; + + /* --unibyte requests that we set up to do everything with single-byte + buffers and strings. We need to handle this before calling + init_lread, init_editfns and other places that generate Lisp strings + from text in the environment. */ + if (argmatch (argv, argc, "-unibyte", "--unibyte", 4, NULL, &skip_args) + || argmatch (argv, argc, "-no-multibyte", "--no-multibyte", 4, NULL, &skip_args) + || (getenv ("EMACS_UNIBYTE") && !inhibit_unibyte)) + { + Lisp_Object symbol; + symbol = intern ("default-enable-multibyte-characters"); + Fset (symbol, Qnil); + Fset_default (symbol, Qnil); + } + } /* Handle the -t switch, which specifies filename to use as terminal */ { @@ -1252,7 +1262,10 @@ #ifdef VMS { "-map", "--map-data", 100, 0 }, #endif + { "-no-unibyte", "--no-unibyte", 96, 0 }, + { "-multibyte", "--multibyte", 96, 0 }, { "-unibyte", "--unibyte", 95, 0 }, + { "-no-multibyte", "--no-multibyte", 95, 0 }, { "-t", "--terminal", 90, 1 }, { "-d", "--display", 80, 1 }, { "-display", 0, 80, 1 },