From: Rudolf Adamkovič Date: Fri, 28 Feb 2025 13:54:14 +0000 (+0100) Subject: Make sure Comint minibuffer password prompts end with space X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=10387fb76ff53597c8f3c109561010df2bf6f74a;p=emacs.git Make sure Comint minibuffer password prompts end with space * lisp/comint.el (comint-watch-for-password-prompt): Add a trailing space character to the minibuffer password prompt, if it does not contain one already, per the minibuffer UI conventions. Bug#76604 (cherry picked from commit 41c1c6ffac3bc3db9818ed8e0cc857c72b06d806) --- diff --git a/lisp/comint.el b/lisp/comint.el index 4d60849c248..0b434462ffc 100644 --- a/lisp/comint.el +++ b/lisp/comint.el @@ -2593,8 +2593,14 @@ This function could be in the list `comint-output-filter-functions'." prompt) (when (let ((case-fold-search t)) (string-match comint-password-prompt-regexp string)) - (setq prompt (string-trim (match-string 0 string) - "[ \n\r\t\v\f\b\a]+" "\n+")) + (setq prompt + (let ((content (string-trim (match-string 0 string) + "[ \n\r\t\v\f\b\a]+" "\n+")) + (suffix " ")) + (concat content + (and (not (string-empty-p content)) + (not (string-suffix-p suffix content)) + suffix)))) ;; Use `run-at-time' in order not to pause execution of the ;; process filter with a minibuffer (run-at-time