emacs-pretest-bug
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problems with ANSI colors in shell mode in Emacs 21.2.95.


From: Lute Kamstra
Subject: Re: Problems with ANSI colors in shell mode in Emacs 21.2.95.
Date: 11 Feb 2003 12:31:23 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Richard Stallman <address@hidden> writes:

>     I tested a few old pretests and found out that the problem first
>     occurred in Emacs 21.2.91.  In Emacs 21.2.90, the shell prompt looks
>     fine.
> 
> Can you identify the Emacs change that did it?

Yes.  The change in shell.el is causing the change in behavior.  With
Emacs 21.2.91, a new user option is introduced in Emacs.  Here's the
changelog entry:

,----
| 2002-07-30  Andreas Schwab  <address@hidden>
| 
|       * shell.el (explicit-bash-args): New user option.
`----

The user option looks like this:

,----[ shell.el; lines 278-284 ]
| (defcustom explicit-bash-args
|     ;; Tell bash not to use readline.
|     '("--noediting" "-i")
|   "*Args passed to inferior shell by M-x shell, if the shell is bash.
| Value is a list of strings, which may be nil."
|   :type '(repeat (string :tag "Argument"))
|   :group 'shell)
`----

With my setup, this causes bash to be started with the "--noediting"
option (in Emacs 21.2.91), while this was not the case before (in
Emacs 21.2.90).  The bash man pages say:

,----[ man bash ]
|        --noediting
|               Do not use the GNU readline library to read command
|               lines when the shell is interactive.
|  
`----

I'm not sure what Andreas Schwab's idea behind this change was.  If I
revert the change, by changing the above part of shell.el into this:

,----[ shell.el; lines 278-284 ]
| (defcustom explicit-bash-args
|     ;; Tell bash not to use readline.
|     '("-i")
|   "*Args passed to inferior shell by M-x shell, if the shell is bash.
| Value is a list of strings, which may be nil."
|   :type '(repeat (string :tag "Argument"))
|   :group 'shell)
`----

then the ^A and ^B characters don't appear anymore and things work
fine again as they did in Emacs 21.2.90.

I also tried "bash --noediting" in an xterm and a gnome-terminal.  An
xterm (XFree86 4.0.1h(149)) shows the same behavior as Emacs does, in
the sense that it prints extra control characters.  The gnome-terminal
(1.2.4) work fine, however.  Apparently, it looks for the ^A and ^B
characters and strips them.

Regards,

  Lute.

-- 
Lute Kamstra  <address@hidden>
CWI  department PNA4
Room M233  phone (+31) 20 592 4214
[Echelon material: LABLINK Noriega RSA]




reply via email to

[Prev in Thread] Current Thread [Next in Thread]