GNU bug report logs -
#6085
Eshell doesn't handle ANSI escapes/colors well
Previous Next
Reported by: Ken Hori <fplemma <at> gmail.com>
Date: Mon, 3 May 2010 03:55:02 UTC
Severity: normal
Done: Chong Yidong <cyd <at> stupidchicken.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Sat, 29 May 2010 14:29:22 -0400
with message-id <87d3wer27x.fsf <at> stupidchicken.com>
and subject line Re: Eshell doesn't handle ANSI escapes/colors well
has caused the GNU bug report #6085,
regarding Eshell doesn't handle ANSI escapes/colors well
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
6085: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=6085
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From Emacs bzr HEAD:
Eshell doesn't handle a terminal escape code like ^[.
My eshell-output-filter-functions:
'(eshell-output-filter-functions (quote (eshell-handle-ansi-color
eshell-handle-control-codes eshell-watch-for-password-prompt
eshell-postoutput-scroll-to-bottom)))
Example:
[~/emacs.20100501/lisp/eshell]$ export TERM=xterm-256color
[~/emacs.20100501/lisp/eshell]$ *grep --color=auto ansi esh-*
^[[Kesh-mode.el^[[K^[[K:^[[K eshell-handle-^[[Kansi^[[K-color
^[[Kesh-mode.el^[[K^[[K:^[[K(autoload
'^[[Kansi^[[K-color-apply-on-region "^[[Kansi^[[K-color")
^[[Kesh-mode.el^[[K^[[K:^[[K(defun eshell-handle-^[[Kansi^[[K-color ()
^[[Kesh-mode.el^[[K^[[K:^[[K (^[[Kansi^[[K-color-apply-on-region
eshell-last-output-start
^[[Kesh-mode.el^[[K^[[K:^[[K 'eshell-handle-^[[Kansi^[[K-color)
^[[Kesh-var.el^[[K^[[K:^[[K;; is identical to just saying (lisp); but
with the variable exp^[[Kansi^[[Kon
`term-handle-ansi-escape' from term.el seems to be be handling
ansi escapes very well. Maybe we can integrate a modified
version of it into Eshell.
[Message part 3 (message/rfc822, inline)]
>> Eshell doesn't handle a terminal escape code like ^[.
>>
>> [~/emacs.20100501/lisp/eshell]$ export TERM=xterm-256color
>> [~/emacs.20100501/lisp/eshell]$ *grep --color=auto ansi esh-*
>> ^[[Kesh-mode.el^[[K^[[K:^[[K eshell-handle-^[[Kansi^[[K-color
>
> This was working some time ago so maybe looking at what have changed and
> reenable this feature should be good.
No, this is not a regression. The mess here is due to the ^[[K ("erase
line") sequence that colorized grep emits. (I don't know why it needs
this control sequence.)
There is no sane way for the ansi-color package to handle this. Unlike
term.el, it is not intended to be a terminal emulator. The best we can
do is to delete such sequences from the output, and I've committed a
change to do that.
This bug report was last modified 15 years and 56 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.