summaryrefslogtreecommitdiff
path: root/lisp/term/st.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/term/st.el')
-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)