From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Jason Rumney Newsgroups: gmane.emacs.devel Subject: Re: [F.J.Wright@qmul.ac.uk: Re: Success using Windows NT] Date: 13 Jun 2002 00:40:11 +0100 Sender: emacs-devel-admin@gnu.org Message-ID: References: <200206111926.g5BJQIh03709@aztec.santafe.edu> NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1023993762 3071 127.0.0.1 (13 Jun 2002 18:42:42 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Thu, 13 Jun 2002 18:42:42 +0000 (UTC) Cc: emacs-devel@gnu.org, F.J.Wright@qmul.ac.uk Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 17IZYQ-0000nQ-00 for ; Thu, 13 Jun 2002 20:42:42 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17IZwp-0004F9-00 for ; Thu, 13 Jun 2002 21:07:55 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 17IZXt-0003Uq-00; Thu, 13 Jun 2002 14:42:09 -0400 Original-Received: from gadolinium.btinternet.com ([194.73.73.111]) by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian)) id 17IZTI-0002xQ-00; Thu, 13 Jun 2002 14:37:24 -0400 Original-Received: from host62-6-81-98.in-addr.btopenworld.com ([62.6.81.98] helo=nyaumo.btinternet.com) by gadolinium.btinternet.com with esmtp (Exim 3.22 #8) id 17IZTE-00006F-00; Thu, 13 Jun 2002 19:37:21 +0100 Original-Received: from nyaumo.btinternet.com (nyaumo.btinternet.com [127.0.0.1]) by nyaumo.btinternet.com (Postfix) with ESMTP id 0EA364B113; Thu, 13 Jun 2002 00:40:12 +0100 (BST) Original-To: rms@gnu.org In-Reply-To: <200206111926.g5BJQIh03709@aztec.santafe.edu> Original-Lines: 124 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50 Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.9 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:4837 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:4837 Richard Stallman writes: > Could you propose changes to the manual to DTRT? OK, here are my proposed changes to the Environment Variables section of cmdargs.texi. An MS-Windows section containing details of all the MS-Windows specific issues will take some time, as I have to look through the FAQ and my previous notes about what should go in such a section to determine exactly what needs to be written. > Should the build process still run addpm? It seems no longer to be > necessary. It is necessary if the user is upgrading from an older version of Emacs that did not use emacs_dir, and it does not do any harm for other users. *** cmdargs.texi.~1.63.~ Thu May 30 20:17:49 2002 --- cmdargs.texi Thu Jun 13 00:28:35 2002 *************** *** 347,359 **** setenv ORGANIZATION "not very much" @end example ! When Emacs is uses the X Window System, it inherits the use of a large number of environment variables from the X libraries. See the X documentation for more information. @menu * General Variables:: Environment variables that all versions of Emacs use. * Misc Variables:: Certain system-specific variables. @end menu @node General Variables --- 347,360 ---- setenv ORGANIZATION "not very much" @end example ! When Emacs uses the X Window System, it inherits the use of a large number of environment variables from the X libraries. See the X documentation for more information. @menu * General Variables:: Environment variables that all versions of Emacs use. * Misc Variables:: Certain system-specific variables. + * MS-Windows Registry:: An alternative to the environment on MS-Windows. @end menu @node General Variables *************** *** 430,435 **** --- 431,441 ---- @env{LANG} is not set. But if @env{LC_ALL} is specified, it overrides the settings of all the other locale environment variables. + On MS-Windows, if LANG is not already set in the environment when + Emacs starts, it will be set by Emacs based on the system-wide default + language, which can be set in the `Regional Settings' Control Panel on + some versions of MS-Windows. + The value of the LC_CTYPE category is matched against entries in @code{locale-language-names}, @code{locale-charset-language-names}, and *************** *** 540,546 **** --- 546,600 ---- @item WINDOW_GFX Used when initializing the Sun windows system. + + @item PRELOAD_WINSOCK + On MS-Windows, if this variable is set, the network library will be + loaded and initialized at startup instead of waiting until the first + time it is required. + + @item emacs_dir + On MS-Windows, @env{emacs_dir} is a special environment variable that + is calculated by Emacs at startup to be the full path of the directory + in which Emacs is installed, provided it is installed in the standard + directory structure. It is not much use setting this variable + yourself unless your installation is non-standard, since unlike other + environment variables, it will be overridden by Emacs at startup. + When setting other environment variables, such as @env{EMACSLOADPATH}, + you may find it useful to use @env{emacs_dir} rather than hard-coding + an absolute path. This allows multiple versions of Emacs to be used + on a Windows machine with the same environment variable settings, and + the Emacs installation directory to be moved without changing any + environment or registry settings. @end table + + @node MS-Windows Registry + @appendixsubsec The MS-Windows System Registry + @cindex addpm, MS-Windows installation program + @cindex registry, environment variables on MS-Windows + + On MS-Windows, the installation program @code{addpm.exe} adds values + for @env{emacs_dir}, @env{EMACSLOADPATH}, @env{EMACSDATA}, + @env{EMACSPATH}, @env{EMACSDOC}, @env{SHELL} and @env{TERM} to the + @file{HKEY_LOCAL_MACHINE} section of the system registry, under + @file{/Software/GNU/Emacs}. It does this because there is no standard + place to set environment variables across different versions of + Windows. While running @code{addpm.exe} is no longer strictly + neccesary in recent versions of Emacs, if you are upgrading from an + older version, running addpm.exe ensures that you do not have older + registry entries from a previous installation, which may not be + compatible with the latest version of Emacs. + + When Emacs starts, as well as checking the environment, it also checks + the System Registry for those variables and for @env{HOME}, @env{LANG} + and @env{PRELOAD_WINSOCK}. + + To determine the value of those variables, Emacs goes through the + following procedure. First, the environment is checked. If the + variable is not found there, Emacs looks for registry keys by that + name under @file{/Software/GNU/Emacs}; first in the + @file{HKEY_CURRENT_USER} section of the registry, and if not found + there, in the @file{HKEY_LOCAL_MACHINE} section. Finally, if the + values are still not determined, the compiled in defaults are used. @node Display X @appendixsec Specifying the Display Name