Mercurial > emacs
diff lisp/frame.el @ 83529:0d9e16eab053
Rework environment variable support. (Reported by Kalle Olavi Niemitalo and Noah Friedman.)
* src/callproc.c (Vglobal_environment, Vlocal_environment_variables): Remove.
(getenv_internal, child_setup): Don't look at global-environment or
local-environment-variables.
(Fgetenv_internal): Update docs.
(set_initial_environment): Rename from set_global_environment. Store
Emacs environment in initial frame parameter.
(syms_of_callproc): Remove obsolete defvars. Update docs.
* lisp/env.el (read-envvar-name): Remove reference to global-environment.
(setenv-internal): New function.
(setenv): Use it. Always set process-environment. Update docs.
(getenv): Update docs.
(environment): Rewrite for the new environment design. Update docs.
* lisp/frame.el (frame-initialize): Copy the environment from the initial frame.
* src/emacs.c (main): Call set_initial_environment, not set_global_environment.
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-569
author | Karoly Lorentey <lorentey@elte.hu> |
---|---|
date | Fri, 26 May 2006 17:37:25 +0000 |
parents | f271076dab2d |
children | 02e39decdc84 |
line wrap: on
line diff
--- a/lisp/frame.el Wed May 24 12:14:26 2006 +0000 +++ b/lisp/frame.el Fri May 26 17:37:25 2006 +0000 @@ -238,6 +238,9 @@ ;; because that would override explicit user resizing. (setq initial-frame-alist (frame-remove-geometry-params initial-frame-alist)))) + ;; Copy the environment of the Emacs process into the new frame. + (set-frame-parameter frame-initial-frame 'environment + (frame-parameter terminal-frame 'environment)) ;; At this point, we know that we have a frame open, so we ;; can delete the terminal frame. (delete-frame terminal-frame)