From: Richard M. Stallman Date: Thu, 16 Apr 1998 21:24:37 +0000 (+0000) Subject: (standard_args): Add --no-unibyte. X-Git-Tag: emacs-20.3~1490 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=002ae4f99cb9a08a92da5d38d4f5d7f1c8d989a4;p=emacs.git (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 --git a/src/emacs.c b/src/emacs.c index 5f57f10c393..8d402f0fb75 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -738,18 +738,28 @@ main (argc, argv, envp) 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 @@ struct standard_args standard_args[] = #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 },