From 2264b29ed709babf3f22668ea25ebde431845be7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miha=20Rihtar=C5=A1i=C4=8D?= Date: Thu, 6 Oct 2022 20:22:39 +0200 Subject: [PATCH 2/2] comint-fontify-input: Don't fontify output as input, different approach * lisp/comint.el (comint-output-filter): Propertize process output with field=output before inserting it into buffer to prevent comint-fontify-input from fontifying it (bug#58169). --- lisp/comint.el | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lisp/comint.el b/lisp/comint.el index e3eee8411c..07ced8d321 100644 --- a/lisp/comint.el +++ b/lisp/comint.el @@ -2147,6 +2147,12 @@ comint-output-filter (goto-char (process-mark process)) (set-marker comint-last-output-start (point)) + ;; Before we call `comint--mark-as-output' later, + ;; redisplay can be called. We mark the inserted text as + ;; output early, to prevent redisplay from fontifying it + ;; as input in case of `comint-fontify-input-mode'. + (put-text-property 0 (length string) 'field 'output string) + ;; insert-before-markers is a bad thing. XXX ;; Luckily we don't have to use it any more, we use ;; window-point-insertion-type instead. -- 2.37.2