--- Begin Message ---
Subject: |
term.el regression when dealing with long lines under bash |
Date: |
Tue, 02 Dec 2008 14:35:17 +0100 |
User-agent: |
Thunderbird 2.0.0.18 (X11/20081125) |
term-mode is no longer able to handle long lines correctly with bash
under emacs-snapshot as it used to work under emacs22.
When a line wider than $COLUMNS+2 is displayed on the terminal, the
cursor is locked on the current line and does not move anymore until
/usr/bin/reset is ran.
I've been able to reproduce this bug when running bash, psql or csh
but not with zsh nor ksh.
I haven't been able to reproduce it under emacs22 at all.
Here's a short procedure to reproduce the bug:
- Start Emacs: emacs-snapshot -Q
- Start bash under term-mode: `M-: (term "/bin/bash") RET'
- Display a long line under bash:
width=$(($COLUMNS+2))
for a in $(seq $width); do echo -n X; done; echo
- Try to type any command on the terminal and you'll see the strange
cursor behaviour
Long lines typically happen on a daily basis when your are reading
logfiles, running SQL queries, etc.
I hope I provided you with enough information.
In GNU Emacs 23.0.60.1 (x86_64-pc-linux-gnu, GTK+ Version 2.12.11)
of 2008-11-29 on elegiac, modified by Debian
(emacs-snapshot package, version 1:20081129-1)
Windowing system distributor `The X.Org Foundation', version 11.0.10502000
configured using `configure '--build' 'x86_64-linux-gnu' '--host'
'x86_64-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib'
'--libexecdir=/usr/lib' '--localstatedir=/var'
'--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes'
'--enable-locallisppath=/etc/emacs-snapshot:/etc/emacs:/usr/local/share/emacs/23.0.60/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/23.0.60/site-lisp:/usr/share/emacs/site-lisp'
'--with-x=yes' '--with-x-toolkit=gtk' 'build_alias=x86_64-linux-gnu'
'host_alias=x86_64-linux-gnu' 'CFLAGS=-DDEBIAN
-DSITELOAD_PURESIZE_EXTRA=5000 -g -O2' 'LDFLAGS=-g -Wl,--as-needed'
'CPPFLAGS=''
Important settings:
value of $LC_ALL: en_US.UTF-8
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: en_US.UTF-8
value of $XMODIFIERS: nil
locale-coding-system: utf-8-unix
default-enable-multibyte-characters: t
Major mode: Term
Minor modes in effect:
tooltip-mode: t
tool-bar-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
global-auto-composition-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Recent input:
<return> <return> <up> <return> <return> <return> <return>
<return> <S-return> <return> C-d M-x <up> t e r m <return>
<up> <M-backspace> b a s h <M-backspace> t c s <M-backspace>
c s h <return> <return> <return> <return> <return>
/ b i <backspace> <backspace> <backspace> . / b u <tab>
<tab> <backspace> <backspace> g / l o n g - l i n e
s . s h <return> <return> <return> <return> <return>
C-d M-x <up> <return> <up> <down> <up> C-g C-d M-x
b u <backspace> <backspace> r e p o r t - e m a c s
<tab> <return>
Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Quit
#<buffer *terminal*>
--
Cyril Bouthors
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#1469: patch for term.el regression when dealing with long lines under bash |
Date: |
Sat, 27 Dec 2008 09:24:40 -0800 (PST) |
Nicholas Maniscalco <nicholas@maniscalco.com> writes:
> (I sent this to the wrong list earlier. Resending to, hopefully, the
> right place this time.)
>
> Here's a patch for bug#1469 (term.el regression when dealing with long
> lines under bash).
>
> * term.el (term-emulate-terminal): Decode substring just prior to
> inserting it. (Bug#1469)
>
> bug#1469 was introduced while fixing bug#1006. I verified this patch
> against the repro steps in bug#1006 to make sure I haven't made a
> regression.
>
> Can someone please review? I'd appreciate any feedback.
Thanks, I checked this in.
--- End Message ---