1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-15 10:30:25 -08:00

* lisp/term/screen.el (xterm-screen-extra-capabilities): New custom

(terminal-init-screen): Use it (bug#20356).
* lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
(xterm--extra-capabilities-type): New const.
(xterm-extra-capabilities): Use it.
(xterm--version-handler): Lower the pseudo-version for `screen'.
This commit is contained in:
Stefan Monnier 2015-05-03 22:24:20 -04:00
parent b7bb71c801
commit 4183482f4d
3 changed files with 38 additions and 13 deletions

View file

@ -1,9 +1,22 @@
;;; screen.el --- terminal initialization for screen and tmux -*- lexical-binding: t -*-
;; Copyright (C) 1995, 2001-2015 Free Software Foundation, Inc.
(require 'term/xterm)
(defcustom xterm-screen-extra-capabilities '(modifyOtherKeys)
"Extra capabilities supported under \"screen\".
Some features of screen depend on the terminal emulator in which
it runs, which can change when the screen session is moved to another tty."
:type xterm--extra-capabilities-type
:group 'xterm)
(defun terminal-init-screen ()
"Terminal initialization function for screen."
;; Treat a screen terminal similar to an xterm.
(tty-run-terminal-initialization (selected-frame) "xterm"))
;; Treat a screen terminal similar to an xterm, but don't use
;; xterm-extra-capabilities's `check' setting since that doesn't seem
;; to work so well (it depends too much on the surrounding terminal
;; emulator, which can change during the session, bug#20356).
(let ((xterm-extra-capabilities xterm-screen-extra-capabilities))
(tty-run-terminal-initialization (selected-frame) "xterm")))
;; screen.el ends here