# HG changeset patch # User Glenn Morris # Date 1188272021 0 # Node ID 812b5f8cbb778f8ae251a54f7d56656500cfe5f5 # Parent f694736eda776505ecc55d6f6798d18c0f52111f Further simplification pending merge to trunk. diff -r f694736eda77 -r 812b5f8cbb77 lisp/ChangeLog.multi-tty --- a/lisp/ChangeLog.multi-tty Tue Aug 28 03:06:57 2007 +0000 +++ b/lisp/ChangeLog.multi-tty Tue Aug 28 03:33:41 2007 +0000 @@ -9,7 +9,7 @@ * term/mac-win.el: Provide mac-win. (mac-initialized): New variable. - (mac-initialize-window-system): New function. Move global setup + (mac-initialize-window-system): New function. Move global setup here. (handle-args-function-alist, frame-creation-function-alist): (window-system-initialization-alist): Add mac entries. @@ -18,13 +18,25 @@ * term/x-win.el (x-menu-bar-open): Use accelerate-menu. + * env.el (read-envvar-name): Don't consider the environment frame + param. + (setenv): Set display-environment-variable and + term-environment-variable. + + * frame.el (frame-initialize, make-frame): Likewise. + + * faces.el (tty-set-up-initial-frame-faces): Likewise. + + * server.el (server-process-filter): Likewise. Also set COLORFGBG and + COLORTERM. + 0000-00-00 Jason Rumney * loadup.el: Only load term/x-win when X is compiled in. Load term/w32-win and dependencies on windows-nt. * term/w32-win.el: Reorder to match x-win.el more closely. - Provide w32-win. Don't throw error when global window-system not + Provide w32-win. Don't throw error when global window-system not w32. (internal-face-interactive): Remove obsolete function. (x-setup-function-keys): Use local-function-key-map. @@ -39,67 +51,89 @@ (handle-args-function-alist, frame-creation-function-alist): (window-system-initialization-alist): Add w32 entries. +0000-00-00 David Kastrup + + * env.el (getenv): Pass frame to getenv-internal. + 0000-00-00 Karoly Lorentey * loadup.el: Delay loading env; mule-conf gets confused by cl during bootstrap. Also load termdev and term/x-win. + * bindings.el (mode-line-client): New variable. + (help-echo): Add it to the default mode-line format. + + * cus-start.el: Remove bogus window-system reference from GTK test. + + * double.el (double-setup): Add note. + + * ebrowse.el (ebrowse-electric-list-mode-map) + (ebrowse-electric-position-mode-map): + * ebuff-menu.el (electric-buffer-menu-mode-map): + * echistory.el (electric-history-map): Bind C-z to + `suspend-frame', not `suspend-emacs'. + + * ediff-wind.el (ediff-setup-windows-automatic): New function. + (ediff-window-setup-function): Use it as default. + + * files.el (save-buffers-kill-terminal): New function. + (ctl-x-map): Change binding of C-x C-c to save-buffers-kill-terminal. + + * font-lock.el (lisp-font-lock-keywords-2): Add `let-environment' + and `with-selected-frame'. + + * help-fns.el (describe-variable): Describe frame-local variables + correctly. + + * simple.el (normal-erase-is-backspace-mode): Rewrite for multiple + display support. + (normal-erase-is-backspace-setup-frame): New function. + + * subr.el (with-selected-frame): New function. + (read-quoted-char): Use terminal-local binding of + local-function-key-map instead of function-key-map. + * talk.el (talk): New function. (talk-handle-delete-frame): New function. (talk-add-display): Open a new frame only if FRAME was not a frame. - * ediff-wind.el (ediff-setup-windows-automatic): New function. - (ediff-window-setup-function): Use it as default. + * termdev.el: New file. - * help-fns.el (describe-variable): Describe frame-local variables - correctly. - - * menu-bar.el (menu-bar-open): New function. - Bind it to f10. + * menu-bar.el (menu-bar-open): New function. Bind it to f10. * term/x-win.el: Don't bind f10. * tmm.el: Remove autoload binding for f10. - * termdev.el: New file. - * Makefile.in (lisp, shortlisp): Add termdev.elc. - * makefile.MPW (shortlisp): Ditto. + * international/encoded-kb.el (encoded-kbd-setup-display): Use + `set-input-meta-mode'. Fix broken condition before set-input-mode. + Store the saved input method as a terminal parameter. Add keymap + parameter. Use it instead of changing key-translation-map + directly. + (saved-key-translation-map, encoded-kbd-mode, saved-input-mode): + Remove. + (encoded-kbd-setup-display): New function. * international/mule-cmds.el (set-locale-environment): Fix getenv - call. Use save-buffers-kill-terminal. Ignore window-system; always - set the keyboard coding system. - + call. Use save-buffers-kill-terminal. Ignore window-system; always + set the keyboard coding system. Add DISPLAY parameter. (set-display-table-and-terminal-coding-system): Add DISPLAY parameter. Pass it to set-terminal-coding-system. - (set-locale-environment): Add DISPLAY parameter. - - * international/encoded-kb.el (encoded-kbd-setup-display): Use - `set-input-meta-mode'. Fix broken condition before set-input-mode. - (saved-key-translation-map): Remove. - (encoded-kbd-mode): Remove. - (encoded-kbd-setup-display): New function. - - * international/encoded-kb.el (saved-input-mode): Delete variable. - (encoded-kbd-setup-display): Store the saved input method as a terminal - parameter. Add keymap parameter. Use it instead of changing - key-translation-map directly. * international/mule.el (keyboard-coding-system): Test for encoded-kbd-setup-display, not encoded-kbd-mode. (set-terminal-coding-system, set-keyboard-coding-system): Add DISPLAY parameter. - - * international/mule.el (set-keyboard-coding-system): Use - encoded-kbd-setup-display. - - * double.el (double-setup): Add note. + (set-keyboard-coding-system): Use encoded-kbd-setup-display. * term/README: Update. + * term/linux.el (terminal-init-linux): Use `set-input-meta-mode'. + * term/x-win.el (x-setup-function-keys): New function. Move - function-key-map tweaks here. Protect against multiple calls on - the same terminal. Use terminal-local binding of + function-key-map tweaks here. Protect against multiple calls on + the same terminal. Use terminal-local binding of local-function-key-map instead of function-key-map. - (x-initialize-window-system): Make a copy of pure list. Pass a + (x-initialize-window-system): Make a copy of pure list. Pass a frame getenv. * term/vt200.el, term/vt201.el, term/vt220.el, term/vt240.el: @@ -111,55 +145,16 @@ * term/rxvt.el, term/xterm.el: Speed up load time by protecting `substitute-key-definition' and `define-key' calls against - multiple execution. Use terminal-local binding of - local-function-key-map instead of function-key-map. Pass a frame + multiple execution. Use terminal-local binding of + local-function-key-map instead of function-key-map. Pass a frame to getenv. - * subr.el (with-selected-frame): New function. - (read-quoted-char): Use terminal-local binding of - local-function-key-map instead of function-key-map. - * edmacro.el (edmacro-format-keys): Use terminal-local binding of local-function-key-map instead of function-key-map. * emulation/cua-base.el (cua--pre-command-handler): Ditto. * isearch.el (isearch-other-meta-char): Ditto. * xt-mouse.el: Ditto. - * simple.el (normal-erase-is-backspace-mode): Rewrite for multiple - display support. - (normal-erase-is-backspace-setup-frame): New function. - -0000-00-00 Dan Nicolaescu - - * env.el (read-envvar-name): Don't consider the environment frame - param. - (setenv): Set display-environment-variable and - term-environment-variable. - - * frame.el (frame-initialize, make-frame): Likewise. - - * faces.el (tty-set-up-initial-frame-faces): Likewise. - - * server.el (server-process-filter): Likewise. - (server-process-filter): Likewise. Also set COLORFGBG and - COLORTERM. - -0000-00-00 Karoly Lorentey - - * term/linux.el (terminal-init-linux): Use `set-input-meta-mode'. - -0000-00-00 David Kastrup - - * env.el (getenv): Pass frame to getenv-internal. - -0000-00-00 Karoly Lorentey - - * cus-start.el: Remove bogus window-system reference from GTK test. - - * files.el (save-buffers-kill-terminal): New function. - (ctl-x-map): Change binding of C-x C-c to - save-buffers-kill-terminal. - * fringe.el (set-fringe-mode): Simplify and fix using `modify-all-frames-parameters'. * scroll-bar.el (set-scroll-bar-mode): Ditto. @@ -175,11 +170,20 @@ (menu-bar-showhide-menu): Use toggle-menu-bar-mode-from-frame and toggle-tool-bar-mode-from-frame to change "Menu-bar" and "Tool-bar" toggles to reflect the state of the current frame. - (menu-bar-mode): Simplify and fix using - `modify-all-frames-parameters'. + (menu-bar-mode): Simplify and fix using `modify-all-frames-parameters'. + + * env.el Require cl for byte compilation (for `block' and `return'). + (environment, setenv-internal): New functions. + (let-environment): New macro. + (setenv, getenv): Add optional terminal parameter. Update docs. + (setenv): Use setenv-internal. Always set process-environment. + Handle `local-environment-variables'. + (read-envvar-name, setenv, getenv): Use frame parameters + to store the local environment, not terminal parameters. Include + `process-environment' as well. * faces.el (tty-run-terminal-initialization): New function. - (tty-create-frame-with-faces): Use it. Set up faces and + (tty-create-frame-with-faces): Use it. Set up faces and background mode only after the terminal has been initialized. Call terminal-init-*. Don't load the initialization file more than once. Call set-locale-environment. @@ -191,26 +195,10 @@ until we are done setting up all its parameters. Call x-setup-function-keys. - * bindings.el (mode-line-client): New variable. - (help-echo): Add it to the default mode-line format. - - * env.el Require cl for byte compilation (for `block' and - `return'). - (environment): New function. - (let-environment): New macro. - (setenv, getenv): Add optional terminal parameter. Update docs. - (setenv-internal): New function. - (setenv): Use it. Always set process-environment. Update docs. - (getenv): Update docs. - (read-envvar-name, setenv, getenv): Use frame parameters - to store the local environment, not terminal parameters. Include - `process-environment' as well. - (setenv): Handle `local-environment-variables'. - * frame.el (make-frame): Always inherit 'environment and 'client - parameters. Set up the 'environment frame parameter, when needed. + parameters. Set up the 'environment frame parameter, when needed. Also inherit 'client parameter. Don't override explicitly - specified values with inherited ones. Add 'terminal frame + specified values with inherited ones. Add 'terminal frame parameter. Append window-system-default-frame-alist to parameters before calling frame-creation-function. (frame-initialize): Copy the environment from the initial frame. @@ -240,73 +228,35 @@ (suspend-frame): Use display-name, not frame-tty-name. (selected-terminal): New function. - * startup.el (display-startup-echo-area-message): Handle - `inhibit-startup-echo-area-message' here. - (command-line-1): Moved from here. - (fancy-splash-screens): Use `overriding-local-map' instead of - `overriding-terminal-local-map' for now; the latter doesn't work - right, it looses keypresses to another terminal. Use - `overriding-terminal-local-map' to set up keymap. Install a - `delete-frame-functions' hook to catch `delete-frame' events. - Ignore `select-window' events to cope better with - `focus-follows-mouse'. Don't switch back to the original buffer - if the splash frame has been killed. Restore previous buffer, even - if it's *scratch*. - (normal-splash-screen): Don't let-bind `mode-line-format'; it - changes the global binding---setq it instead. Use - `save-buffers-kill-terminal'. - (display-splash-screen): Don't do anything if the splash screen is - already displayed elsewhere. - (fancy-splash-exit, fancy-splash-delete-frame): New functions. - (command-line): Replace duplicated code with a call to - tty-run-terminal-initialization. Don't load the terminal - initialization file more than once. Remove call to nonexistent - function `set-locale-translation-file-name'. - - * xt-mouse.el (xterm-mouse-x, xterm-mouse-y): Convert to terminal - parameters. - (xterm-mouse-position-function, xterm-mouse-event): Update. - (xterm-mouse-mode): Don't depend on current value of - window-system. - (turn-on-xterm-mouse-tracking, turn-off-xterm-mouse-tracking): - Update for multi-tty. - (turn-on-xterm-mouse-tracking-on-terminal) - (turn-off-xterm-mouse-tracking-on-terminal) - (xterm-mouse-handle-delete-frame): New functions. - (delete-frame-functions, after-make-frame-functions) - (suspend-tty-functions, resume-tty-functions): Install extra hooks - for multi-tty. - * server.el: Use `device' instead of `display' or `display-id' in variable and client parameter names. (server-select-display): Remove (unused). (server-tty-live-p, server-handle-delete-tty): Remove. - (server-unquote-arg, server-quote-arg,server-buffer-clients): + (server-unquote-arg, server-quote-arg, server-buffer-clients): Update docs. - (server-getenv-from, server-with-environment,server-send-string) + (server-getenv-from, server-with-environment, server-send-string) (server-save-buffers-kill-terminal): New functions. (server-delete-client): Handle quits in kill-buffer. Don't kill - modified buffers. Add extra logging. + modified buffers. Add extra logging. Delete frames after + deleting the tty. Clear 'client parameter before deleting a frame. + Use delete-display, not delete-tty. (server-visit-files): Don't set `server-existing-buffer' if the buffer already has other clients. Return list of buffers created. Update doc. Don't set client-record when nowait. - (server-delete-client): Delete frames after deleting the tty. - Clear 'client parameter before deleting a frame. Use - delete-display, not delete-tty. (server-handle-delete-frame): Delete the client if this was its - last frame. Check that the frame is alive. Remove bogus comment. + last frame. Check that the frame is alive. Remove bogus comment. Add note on possible race condition. Delete tty clients, if needed. - (server-handle-suspend-tty): Use server-send-string. + (server-handle-suspend-tty): Use server-send-string. Kill the + client in case of errors from process-send-string. Use the display + parameter. (server-unload-hook): Remove obsolete delete-tty hook. (server-start): Ask before restarting if the old server still has - clients. Add feedback messages. Remove obsolete delete-tty + clients. Add feedback messages. Remove obsolete delete-tty hook. - (server-handle-suspend-tty): Kill the client in case of errors - from process-send-string. Use the display parameter. - (server-process-filter): Use server-send-string. Accept `-dir' - command. Switch to *scratch* immediately after creating the frame, + (server-process-filter): Use server-send-string. Accept `-dir' + command. Switch to *scratch* immediately after creating the frame, before evaluating any -evals. Protect `display-splash-screen' call in a condition-case. Explain why. Call `display-startup-echo-area-message' before @@ -332,15 +282,42 @@ them buried under others. Set the display parameter, and use it when appropriate. - * ebrowse.el (ebrowse-electric-list-mode-map) - (ebrowse-electric-position-mode-map): - * ebuff-menu.el (electric-buffer-menu-mode-map): - * echistory.el (electric-history-map): Bind C-z to - `suspend-frame', not `suspend-emacs'. + * startup.el (display-startup-echo-area-message): Handle + `inhibit-startup-echo-area-message' here. + (command-line-1): Moved from here. + (fancy-splash-screens): Use `overriding-local-map' instead of + `overriding-terminal-local-map' for now; the latter doesn't work + right, it looses keypresses to another terminal. Use + `overriding-terminal-local-map' to set up keymap. Install a + `delete-frame-functions' hook to catch `delete-frame' events. + Ignore `select-window' events to cope better with + `focus-follows-mouse'. Don't switch back to the original buffer + if the splash frame has been killed. Restore previous buffer, even + if it's *scratch*. + (normal-splash-screen): Don't let-bind `mode-line-format'; it + changes the global binding - setq it instead. Use + `save-buffers-kill-terminal'. + (display-splash-screen): Don't do anything if the splash screen is + already displayed elsewhere. + (fancy-splash-exit, fancy-splash-delete-frame): New functions. + (command-line): Replace duplicated code with a call to + tty-run-terminal-initialization. Don't load the terminal + initialization file more than once. Remove call to nonexistent + function `set-locale-translation-file-name'. - * font-lock.el (lisp-font-lock-keywords-2): Add `let-environment' - and `with-selected-frame'. - + * xt-mouse.el (xterm-mouse-x, xterm-mouse-y): Convert to terminal + parameters. + (xterm-mouse-position-function, xterm-mouse-event): Update. + (xterm-mouse-mode): Don't depend on current value of + window-system. + (turn-on-xterm-mouse-tracking, turn-off-xterm-mouse-tracking): + Update for multi-tty. + (turn-on-xterm-mouse-tracking-on-terminal) + (turn-off-xterm-mouse-tracking-on-terminal) + (xterm-mouse-handle-delete-frame): New functions. + (delete-frame-functions, after-make-frame-functions) + (suspend-tty-functions, resume-tty-functions): Install extra hooks + for multi-tty. ;; Local Variables: ;; coding: iso-2022-7bit