summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Ingebrigtsen <larsi@gnus.org>2021-08-19 14:18:27 +0200
committerLars Ingebrigtsen <larsi@gnus.org>2021-08-19 14:18:32 +0200
commit6276f73115a0e976ea1e1cfdec231ca6c2396c88 (patch)
tree1519282261672da1d6ccb9a128e9abf4c9765227
parent37f0ea99f8dc967f506b70f0d9ccb2a8fe76ca22 (diff)
downloademacs-6276f73115a0e976ea1e1cfdec231ca6c2396c88.tar.gz
stterm doesn't understand all codes that xterm does
* lisp/term/st.el (xterm-st-extra-capabilities): New user option (bug#50119). (terminal-init-st): Use it to avoid a two-second timeout.
-rw-r--r--lisp/term/st.el13
1 files changed, 12 insertions, 1 deletions
diff --git a/lisp/term/st.el b/lisp/term/st.el
index 9a1c0646f89..e1db450b3e7 100644
--- a/lisp/term/st.el
+++ b/lisp/term/st.el
@@ -11,9 +11,20 @@
(require 'term/xterm)
+(defcustom xterm-st-extra-capabilities '( modifyOtherKeys getSelection
+ setSelection)
+ "Extra capabilities supported under \"stterm\".
+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."
+ :version "28.1"
+ :type xterm--extra-capabilities-type
+ :group 'xterm)
+
(defun terminal-init-st ()
"Terminal initialization function for st."
- (tty-run-terminal-initialization (selected-frame) "xterm"))
+ ;; Using `check' leads to a two-second timeout.
+ (let ((xterm-extra-capabilities xterm-st-extra-capabilities))
+ (tty-run-terminal-initialization (selected-frame) "xterm")))
(provide 'term/st)