[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 6cea3233a12: Align term-mode control character handling
From: |
Daniel Colascione |
Subject: |
master 6cea3233a12: Align term-mode control character handling |
Date: |
Sat, 11 Jan 2025 17:36:58 -0500 (EST) |
branch: master
commit 6cea3233a12f3964c46bffb0b6215e9c8cd92962
Author: Daniel Colascione <dancol@dancol.org>
Commit: Daniel Colascione <dancol@dancol.org>
Align term-mode control character handling
Terminal emulators generally ignore exotic ASCII control
characters like SOH and STX. Make term-mode do the same.
* lisp/term.el (term-emulate-terminal): ignore ASCII control
characters like other terminal emulators do
---
lisp/term.el | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/lisp/term.el b/lisp/term.el
index b343e395eca..2258da8fe37 100644
--- a/lisp/term.el
+++ b/lisp/term.el
@@ -3015,8 +3015,8 @@ See `term-prompt-regexp'."
(defconst term-control-seq-regexp
(concat
- ;; A control character,
- "\\(?:[\r\n\000\007\t\b\016\017]\\|"
+ ;; A control character not matched in a longer sequence below,
+ "\\(?:[\x00-\x19\x1C-\x1F\r\n\t\b]\\|"
;; some Emacs specific control sequences, implemented by
;; `term-command-hook',
"\032[^\n]+\n\\|"
@@ -3271,8 +3271,9 @@ See `term-prompt-regexp'."
(?A ;; An \eAnSiT sequence (Emacs specific).
(term-handle-ansi-terminal-messages
(substring str i ctl-end)))))
- ;; Ignore NUL, Shift Out, Shift In.
- ((or ?\0 #xE #xF 'nil) nil))
+ ;; Ignore any control character not already recognized.
+ ((or 'nil
+ (and (pred characterp) (pred (lambda (c) (<= c
?\x1F))))) nil))
;; Leave line-wrapping state if point was moved.
(unless (eq term-do-line-wrapping (point))
(setq term-do-line-wrapping nil))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master 6cea3233a12: Align term-mode control character handling,
Daniel Colascione <=