GNU bug report logs -
#72426
29.2.50; comint-pager doesn't affect async-shell-command
Previous Next
Reported by: Spencer Baugh <sbaugh <at> janestreet.com>
Date: Fri, 2 Aug 2024 18:36:01 UTC
Severity: normal
Found in version 29.2.50
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Patch fixing this:
[0001-Respect-comint-pager-in-async-shell-command.patch (text/x-patch, inline)]
From 2af83cd922b34e1cde4ab4973e07fdb283acd26a Mon Sep 17 00:00:00 2001
From: Spencer Baugh <sbaugh <at> janestreet.com>
Date: Fri, 2 Aug 2024 14:39:08 -0400
Subject: [PATCH] Respect comint-pager in async-shell-command
comint-pager now also affects async-shell-command.
As a side benefit, this also allows it to be configured with
connection-local variables.
* lisp/comint.el (comint-exec-1): Remove check on comint-pager.
(comint-term-environment): Add check on comint-pager. (bug#72426)
---
lisp/comint.el | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
diff --git a/lisp/comint.el b/lisp/comint.el
index c7cd22d840a..4f28ddc3165 100644
--- a/lisp/comint.el
+++ b/lisp/comint.el
@@ -893,10 +893,6 @@ comint-exec-1
(nconc
(comint-term-environment)
(list (format "INSIDE_EMACS=%s,comint" emacs-version))
- (when comint-pager
- (if (stringp comint-pager)
- (list (format "PAGER=%s" comint-pager))
- (error "comint-pager should be a string: %s" comint-pager)))
process-environment))
(default-directory
(if (file-accessible-directory-p default-directory)
@@ -925,7 +921,9 @@ comint-exec-1
proc))
(defun comint-term-environment ()
- "Return an environment variable list for terminal configuration."
+ "Return an environment variable list for terminal configuration.
+
+Includes a value for PAGER based on `comint-pager'."
;; If using termcap, we specify `emacs' as the terminal type
;; because that lets us specify a width.
;; If using terminfo, we default to `dumb' because that is
@@ -934,12 +932,17 @@ comint-term-environment
;; Some programs that use terminfo get very confused
;; if TERM is not a valid terminal type.
(with-connection-local-variables
- (if system-uses-terminfo
- (list (format "TERM=%s" comint-terminfo-terminal)
- "TERMCAP="
- (format "COLUMNS=%d" (window-width)))
- (list "TERM=emacs"
- (format "TERMCAP=emacs:co#%d:tc=unknown:" (window-width))))))
+ (nconc
+ (when comint-pager
+ (if (stringp comint-pager)
+ (list (format "PAGER=%s" comint-pager))
+ (error "comint-pager should be a string: %s" comint-pager)))
+ (if system-uses-terminfo
+ (list (format "TERM=%s" comint-terminfo-terminal)
+ "TERMCAP="
+ (format "COLUMNS=%d" (window-width)))
+ (list "TERM=emacs"
+ (format "TERMCAP=emacs:co#%d:tc=unknown:" (window-width)))))))
(defun comint-nonblank-p (str)
"Return non-nil if STR contains non-whitespace syntax."
--
2.39.3
This bug report was last modified 246 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.