aboutsummaryrefslogtreecommitdiffstats
path: root/README.multi-tty
diff options
context:
space:
mode:
authorKaroly Lorentey <[email protected]>2005-12-29 04:31:04 +0000
committerKaroly Lorentey <[email protected]>2005-12-29 04:31:04 +0000
commitda8e8fc14f3166ec596e34f43fbfea866d1176df (patch)
tree9c31affcb4b837cac4793f10acbafc562bfd08e4 /README.multi-tty
parent86f5ca04d94ad551d3aa726e15281e75ef0189ed (diff)
Store local environment in frame (not terminal) parameters.
* src/callproc.c (child_setup, getenv_internal, Fgetenv_internal): Store the local environment in a frame (not terminal) parameter. Update doc strings. (syms_of_callproc): Update doc strings. (Qenvironment): Moved to frame.c. * lisp/env.el (read-envvar-name, setenv, getenv, environment): Use frame parameters to store the local environment, not terminal parameters. * server.el (server-process-filter): Store the local environment in a frame (not terminal) parameter. Do not try to decode environment strings. * lisp/frame.el (make-frame): Set up the 'environment frame parameter, when needed. * src/frame.c (Qenvironment): Move here from callproc.c. (Fdelete_frame): Don't allow other frames to refer to a deleted frame in their 'environment parameter. (Fframe_with_environment): New function. (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment. * frame.h (Qenvironment): Declare. * lisp.h (Fframe_with_environment): EXFUN it. git-archimport-id: [email protected]/emacs--multi-tty--0--patch-467
Diffstat (limited to 'README.multi-tty')
-rw-r--r--README.multi-tty16
1 files changed, 15 insertions, 1 deletions
diff --git a/README.multi-tty b/README.multi-tty
index 9f3e048e2e..346d27102b 100644
--- a/README.multi-tty
+++ b/README.multi-tty
@@ -412,7 +412,10 @@ THINGS TO DO
make_terminal_frame
create_tty_output
-
+
+** Decide whether to keep the C implementation of terminal parameters,
+ or revert to the previous, purely Lisp code. It turned out that
+ local environments do not need terminal parameters after all.
** Move Fsend_string_to_terminal to term.c, and declare get_named_tty
as static, removing it from dispextern.h.
@@ -1362,5 +1365,16 @@ DIARY OF CHANGES
`getenv' and `setenv', and the new `local-environment-variables'
facility. Yay!)
+ (Updated in patch-465 to fix the semantics of let-binding
+ `process-environment'. `process-environment' was changed to
+ override all local/global environment variables, and a new variable
+ `global-environment' was introduced to have `process-environment's
+ old meaning.)
+
+ (Updated in patch-466 to fix the case when two emacsclient sessions
+ share the same terminal, but have different environment. The local
+ environment lists are now stored as frame parameters, so the
+ C-level terminal parameters are not strictly necessary any more.)
+
;;; arch-tag: 8da1619e-2e79-41a8-9ac9-a0485daad17d