IPython - Enhanced Interactive Python

Text display bug on longer lines in OS X Terminal

Reported by Lawrence Johnston on 2008-12-02
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
IPython
Invalid
Low
Brian Granger

Bug Description

Using IPython 0.9.1 on OS X 10.5.5 (installed using easy_install readline; easy_install ipython), The display of any line beyond a certain length seems to be messed up.

For example (using an 80x50 Terminal window), if I type:

In [22]: one two three four five six sevel eight

and then press control-A to jump to the beginning of the line, the curser jumps up to the end of the previous line. If I then press control-F repeatedly to move forward through the text, the text I wrote overwrites the above (basically everything is transposed backwards that many characters (8-10ish) as such:

partway through, with the curser at the end of two:

                                                                               o
ne two]: one two three four five six sevel eight

all the way through:
                                                                               o
ne two three four five six seven eighseven eight

at which point it even wraps again ending in this:

                                           one two three four five six sevel eig
ht two three four five six sevel eighsevel eight

With no In[#] prompt whatsoever.

This also occurs when using the history to pull back a long enough line, e.g. (Using the previous line):

ht [23]: one two three four five six sevel eig

I completely wiped my hard drive and reinstalled everything from scratch (for other reasons) and this bug is still entirely present. It is not present when using bash or anything along those lines, I've never seen it except in IPython.

I'll attach a zipped folder with a sequence of screen shots recreating this same sequence as well.

When I enquired on the mailing list several other people had encountered this same behavior as well.

Let me know if you need any additional information.

Lawrence Johnston (unussum) wrote :
Brian Granger (ellisonbg) wrote :

This is the type of thing that I used to see if I didn't have readline installed and was instead using Apple's libedit. Are you sure you are using readline? I have your same setup, but I don't see this. Can you provide more info on exactly how I might reproduce it.

Changed in ipython:
assignee: nobody → ellisonbg
importance: Undecided → Low
status: New → Incomplete
Lawrence Johnston (unussum) wrote :

The issue was indeed that I did not have readline installed properly.

As a side note, if your setuptools install is not up to date your readline install will fail with the following message:

Searching for readline
Reading http://pypi.python.org/simple/readline/
Reading http://www.python.org/
Best match: readline 2.5.1
Downloading http://pypi.python.org/packages/source/r/readline/readline-2.5.1.tar.gz#md5=1bc37e7c184bee00c2c2230630fae1d2
Processing readline-2.5.1.tar.gz
Running readline-2.5.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-pHXIGx/readline-2.5.1/egg-dist-tmp-XvdCMV
No eggs found in /tmp/easy_install-pHXIGx/readline-2.5.1/egg-dist-tmp-XvdCMV (setup script problem?)

As discussed in this thread http://bugs.python.org/setuptools/issue4

I wonder if this should be mentioned somewhere in the documentation.

Lawrence Johnston (unussum) wrote :

Issue was due to not having readline installed.

Changed in ipython:
status: Incomplete → Invalid

Thanks glad you got it solved.

On Sun, Apr 19, 2009 at 3:22 PM, Lawrence Johnston <email address hidden> wrote:
> Issue was due to not having readline installed.
>
> ** Changed in: ipython
>       Status: Incomplete => Invalid
>
> --
> Text display bug on longer lines in OS X Terminal
> https://bugs.launchpad.net/bugs/304263
> You received this bug notification because you are a member of IPython
> Developers, which is subscribed to IPython.
>
> Status in IPython - Enhanced Interactive Python: Invalid
>
> Bug description:
> Using IPython 0.9.1 on OS X 10.5.5 (installed using easy_install readline; easy_install ipython), The display of any line beyond a certain length seems to be messed up.
>
> For example (using an 80x50 Terminal window), if I type:
>
> In [22]: one two three four five six sevel eight
>
> and then press control-A to jump to the beginning of the line, the curser jumps up to the end of the previous line. If I then press control-F repeatedly to move forward through the text, the text I wrote overwrites the above (basically everything is transposed backwards that many characters (8-10ish) as such:
>
> partway through, with the curser at the end of two:
>
>                                                                               o
> ne two]: one two three four five six sevel eight
>
>
> all the way through:
>                                                                               o
> ne two three four five six seven eighseven eight
>
>
> at which point it even wraps again ending in this:
>
>                                           one two three four five six sevel eig
> ht two three four five six sevel eighsevel eight
>
>
> With no In[#] prompt whatsoever.
>
>
> This also occurs when using the history to pull back a long enough line, e.g. (Using the previous line):
>
> ht [23]: one two three four five six sevel eig
>
>
> I completely wiped my hard drive and reinstalled everything from scratch (for other reasons) and this bug is still entirely present. It is not present when using bash or anything along those lines, I've never seen it except in IPython.
>
> I'll attach a zipped folder with a sequence of screen shots recreating this same sequence as well.
>
> When I enquired on the mailing list several other people had encountered this same behavior as well.
>
> Let me know if you need any additional information.
>

--
Brian E. Granger, Ph.D.
Assistant Professor of Physics
Cal Poly State University, San Luis Obispo
<email address hidden>
<email address hidden>

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.