aboutsummaryrefslogtreecommitdiffstats
path: root/README.multi-tty
diff options
context:
space:
mode:
authorKaroly Lorentey2005-12-29 04:31:04 +0000
committerKaroly Lorentey2005-12-29 04:31:04 +0000
commitda8e8fc14f3166ec596e34f43fbfea866d1176df (patch)
tree9c31affcb4b837cac4793f10acbafc562bfd08e4 /README.multi-tty
parent86f5ca04d94ad551d3aa726e15281e75ef0189ed (diff)
downloademacs-da8e8fc14f3166ec596e34f43fbfea866d1176df.tar.gz
emacs-da8e8fc14f3166ec596e34f43fbfea866d1176df.zip
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: lorentey@elte.hu--2004/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 9f3e048e2e2..346d27102bf 100644
--- a/README.multi-tty
+++ b/README.multi-tty
@@ -412,7 +412,10 @@ THINGS TO DO
412 412
413 make_terminal_frame 413 make_terminal_frame
414 create_tty_output 414 create_tty_output
415 415
416** Decide whether to keep the C implementation of terminal parameters,
417 or revert to the previous, purely Lisp code. It turned out that
418 local environments do not need terminal parameters after all.
416 419
417** Move Fsend_string_to_terminal to term.c, and declare get_named_tty 420** Move Fsend_string_to_terminal to term.c, and declare get_named_tty
418 as static, removing it from dispextern.h. 421 as static, removing it from dispextern.h.
@@ -1362,5 +1365,16 @@ DIARY OF CHANGES
1362 `getenv' and `setenv', and the new `local-environment-variables' 1365 `getenv' and `setenv', and the new `local-environment-variables'
1363 facility. Yay!) 1366 facility. Yay!)
1364 1367
1368 (Updated in patch-465 to fix the semantics of let-binding
1369 `process-environment'. `process-environment' was changed to
1370 override all local/global environment variables, and a new variable
1371 `global-environment' was introduced to have `process-environment's
1372 old meaning.)
1373
1374 (Updated in patch-466 to fix the case when two emacsclient sessions
1375 share the same terminal, but have different environment. The local
1376 environment lists are now stored as frame parameters, so the
1377 C-level terminal parameters are not strictly necessary any more.)
1378
1365;;; arch-tag: 8da1619e-2e79-41a8-9ac9-a0485daad17d 1379;;; arch-tag: 8da1619e-2e79-41a8-9ac9-a0485daad17d
1366 1380