# HG changeset patch # User Stefan Monnier # Date 1190325491 0 # Node ID 257ddf42b5cb27ba57e0c3483303b362182505d8 # Parent e3787b1a7e846dcfacb94925c9e676e8e6cd64b8 Remove. diff -r e3787b1a7e84 -r 257ddf42b5cb lisp/ChangeLog --- a/lisp/ChangeLog Thu Sep 20 21:57:23 2007 +0000 +++ b/lisp/ChangeLog Thu Sep 20 21:58:11 2007 +0000 @@ -1,5 +1,12 @@ 2007-09-20 Stefan Monnier + * termdev.el: Remove. + + * frame.el (get-device-terminal): New function. Moved from termdev.el. + (frames-on-display-list): Use it. + + * bindings.el: Bind C-z to suspend-frame instead of suspend-emacs. + * termdev.el (terminal-id): Ask terminal-live-p before giving up. 2007-09-20 Richard Stallman diff -r e3787b1a7e84 -r 257ddf42b5cb lisp/termdev.el --- a/lisp/termdev.el Thu Sep 20 21:57:23 2007 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,196 +0,0 @@ -;;; termdev.el --- functions for dealing with terminals - -;; Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc. - -;; Author: Karoly Lorentey -;; Created: 2005-12-22 -;; Keywords: internal - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software; you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation; either version 3, or (at your option) -;; any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. - -(substitute-key-definition 'suspend-emacs 'suspend-frame global-map) - -(defun terminal-id (&optional terminal) - "Return the numerical id of terminal TERMINAL. - -TERMINAL can be a terminal id (an integer), a frame, or -nil (meaning the selected frame's terminal). Alternatively, -TERMINAL may be the name of an X display -device (HOST.SERVER.SCREEN) or a tty device file." - (cond - ((integerp terminal) - (if (terminal-live-p terminal) - terminal - (signal 'wrong-type-argument (list 'terminal-live-p terminal)))) - ((or (null terminal) (framep terminal)) - (frame-terminal terminal)) - ((stringp terminal) - (let ((f (car (filtered-frame-list (lambda (frame) - (or (equal (frame-parameter frame 'display) terminal) - (equal (frame-parameter frame 'tty) terminal))))))) - (or f (error "Display %s does not exist" terminal)) - (frame-terminal f))) - ((terminal-live-p terminal) terminal) - (t - (error "Invalid argument %s in `terminal-id'" terminal)))) - -;; (defun terminal-getenv (variable &optional terminal global-ok) -;; "Get the value of VARIABLE in the client environment of TERMINAL. -;; VARIABLE should be a string. Value is nil if VARIABLE is undefined in -;; the environment. Otherwise, value is a string. - -;; If TERMINAL has an associated emacsclient process, then -;; `terminal-getenv' looks up VARIABLE in the environment of that -;; process; otherwise the function consults the global environment, -;; i.e., the environment of the Emacs process itself. - -;; If GLOBAL-OK is non-nil, and VARIABLE is not defined in the -;; terminal-local environment, then `terminal-getenv' will return -;; its value in the global environment instead. - -;; TERMINAL can be a terminal id, a frame, or nil (meaning the -;; selected frame's terminal)." -;; (setq terminal (terminal-id terminal)) -;; (if (null (terminal-parameter terminal 'environment)) -;; (getenv variable) -;; (if (multibyte-string-p variable) -;; (setq variable (encode-coding-string variable locale-coding-system))) -;; (let ((env (terminal-parameter terminal 'environment)) -;; result entry) -;; (while (and env (null result)) -;; (setq entry (car env) -;; env (cdr env)) -;; (if (and (> (length entry) (length variable)) -;; (eq ?= (aref entry (length variable))) -;; (equal variable (substring entry 0 (length variable)))) -;; (setq result (substring entry (+ (length variable) 1))))) -;; (if (and global-ok (null result)) -;; (getenv variable) -;; (and result (decode-coding-string result locale-coding-system)))))) - -;; (defun terminal-setenv (variable &optional value terminal) -;; "Set the value of VARIABLE in the environment of TERMINAL. -;; VARIABLE should be string. VALUE is optional; if not provided or -;; nil, the environment variable VARIABLE is removed. Returned -;; value is the new value of VARIABLE, or nil if it was removed from -;; the environment. - -;; If TERMINAL was created by an emacsclient invocation, then the -;; variable is set in the environment of the emacsclient process; -;; otherwise the function changes the environment of the Emacs -;; process itself. - -;; TERMINAL can be a terminal id, a frame, or nil (meaning the -;; selected frame's terminal)." -;; (if (null (terminal-parameter terminal 'environment)) -;; (setenv variable value) -;; (with-terminal-environment terminal variable -;; (setenv variable value)))) - -;; (defun terminal-setenv-internal (variable value terminal) -;; "Set the value of VARIABLE in the environment of TERMINAL. -;; The caller is responsible to ensure that both VARIABLE and VALUE -;; are usable in environment variables and that TERMINAL is a -;; remote terminal." -;; (if (multibyte-string-p variable) -;; (setq variable (encode-coding-string variable locale-coding-system))) -;; (if (and value (multibyte-string-p value)) -;; (setq value (encode-coding-string value locale-coding-system))) -;; (let ((env (terminal-parameter terminal 'environment)) -;; found) -;; (while (and env (not found)) -;; (if (and (> (length (car env)) (length variable)) -;; (eq ?= (aref (car env) (length variable))) -;; (equal variable (substring (car env) 0 (length variable)))) -;; (progn -;; (if value -;; (setcar env (concat variable "=" value)) -;; (set-terminal-parameter terminal 'environment -;; (delq (car env) -;; (terminal-parameter terminal -;; 'environment)))) -;; (setq found t)) -;; (setq env (cdr env)))) -;; (cond -;; ((and value found) -;; (setcar env (concat variable "=" value))) -;; ((and value (not found)) -;; (set-terminal-parameter terminal 'environment -;; (cons (concat variable "=" value) -;; (terminal-parameter terminal -;; 'environment)))) -;; ((and (not value) found) -;; (set-terminal-parameter terminal 'environment -;; (delq (car env) -;; (terminal-parameter terminal -;; 'environment))))))) - -;; (defmacro with-terminal-environment (terminal vars &rest body) -;; "Evaluate BODY with environment variables VARS set to those of TERMINAL. -;; The environment variables are then restored to their previous values. - -;; VARS should be a single string, a list of strings, or t for all -;; environment variables. - -;; TERMINAL can be a terminal id, a frame, or nil (meaning the -;; selected frame's terminal). - -;; If BODY uses `setenv' to change environment variables in VARS, -;; then the new variable values will be remembered for TERMINAL, and -;; `terminal-getenv' will return them even outside BODY." -;; (declare (indent 2)) -;; (let ((var (make-symbol "var")) -;; (term (make-symbol "term")) -;; (v (make-symbol "v")) -;; (old-env (make-symbol "old-env"))) -;; `(let ((,term ,terminal) ; Evaluate arguments only once. -;; (,v ,vars)) -;; (if (stringp ,v) -;; (setq ,v (list ,v))) -;; (cond -;; ((null (terminal-parameter ,term 'environment)) -;; ;; Not a remote terminal; nothing to do. -;; (progn ,@body)) -;; ((eq ,v t) -;; ;; Switch the entire process-environment. -;; (let (,old-env process-environment) -;; (setq process-environment (terminal-parameter ,term 'environment)) -;; (unwind-protect -;; (progn ,@body) -;; (set-terminal-parameter ,term 'environment process-environment) -;; (setq process-environment ,old-env)))) -;; (t -;; ;; Do only a set of variables. -;; (let (,old-env) -;; (dolist (,var ,v) -;; (setq ,old-env (cons (cons ,var (getenv ,var)) ,old-env)) -;; (setenv ,var (terminal-getenv ,var ,term))) -;; (unwind-protect -;; (progn ,@body) -;; ;; Split storing new values and restoring old ones so -;; ;; that we DTRT even if a variable is specified twice in -;; ;; VARS. -;; (dolist (,var ,v) -;; (terminal-setenv-internal ,var (getenv ,var) ,term)) -;; (dolist (,var ,old-env) -;; (setenv (car ,var) (cdr ,var)))))))))) - -(provide 'termdev) - -;; arch-tag: 4c4df277-1ec1-4f56-bfde-7f156fe62fb2 -;;; termdev.el ends here