I'm using: 06:32:45 root ~ # bash --version GNU bash, version 3.00.13(1)-release (i686-pc-linux-gnu) Copyright (C) 2004 Free Software Foundation, Inc. And XTerm(196) (with 80x25 geometry) 06:33:10 root ~ # With 'root' my promt is: PS1='\[\033[01;31m\]\h \[\033[01;34m\]\W \$ \[\033[00m\]' (as sourced from /etc/bash/bashrc) My user promt is (in one line of ~/.bashrc): export PS1="[\e[31m\$(pwd)\e[0m :: \e[32m\@\e[0m :: e[33m\l\e[0m]\n[\e[32m\u\e[0m@\e[34m\H\e[0m] \$ " So I checked shopt | grep 'winsize' checkwinsize on Now if I press for example the 'a' key and keep it pressing as 'root', the line wraps normally as it hits the lines end, and continues in the next line. But as a user if I do the same: after fourty 'a's the line wraps and continues in the same line's beginning (overwriting the prompt!), but if I keep pressing the key after this "second" line it wraps normally to the next line. I tried to recompile bash. Reproducible: Always Steps to Reproduce: 1. Use my user prompt and bash v3. 2. 3. Portage 2.0.51-r8 (default-linux/x86/2004.0, gcc-3.4.3, glibc-2.3.4.20041102-r0, 2.6.9-gentoo-r9 i686) ================================================================= System uname: 2.6.9-gentoo-r9 i686 Intel(R) Celeron(R) CPU 2.40GHz Gentoo Base System version 1.6.7 Python: dev-lang/python-2.3.4 [2.3.4 (#1, Sep 30 2004, 10:02:31)] ccache version 2.3 [enabled] dev-lang/python: 2.3.4 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.5, 1.9.3, 1.6.3, 1.7.9, 1.4_p6, 1.8.5-r2 sys-devel/binutils: 2.15.92.0.2-r1 sys-devel/libtool: 1.5.2-r7 virtual/os-headers: 2.6.8.1-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=pentium4 -funroll-loops -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -march=pentium4 -funroll-loops -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms" GENTOO_MIRRORS="http://intranet.online.hu/ http://gentoo.inode.at/ http://gentoo.mirror.icd.hu/ http://gentoo.math.bme.hu/" MAKEOPTS="-j2 -s" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X alsa apm avi berkdb bitmap-fonts bonobo cdr crypt cups directfb encode esd f77 fam flac foomaticdb fortran gdbm gif gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile hal imagemagick imlib java jikes jpeg libg++ libwww mad maildir mbox mikmod motif mozilla mpeg ncurses nls nptl nptlonly oggvorbis opengl oss pam pdflib perl png ppds python qt quicktime readline ruby samba sdl slang spell ssl svga tcltk tcpd tiff truetype unicode usb x86 xml xml2 xmms xv zlib linguas_en linguas_hu"
I'm glad you submitted this bug, because I've been meaning too. This bug has partially been fixed (see bug 65410), but it seems to only work if the color escapes are formatted a certain way.. For example, I am successfully running a multi line prompt in bash3 by using escape sequences like "\[\033[01;32m\]". It doesn't like your escape sequences nor ones like "\033[01;32m" however. Maybe it's overcompensating because of missing chars it thinks are there and thus going to the next line before 80 chars? base-system, wasn't sure whether to close this and reopen 65410 or keep it as is, so I'll let you guys decide.
Thanks Aaron for this fast answer, I tried to apply that patch, as I found it in bugzilla, but I wasn' successed - maybe I'm not that good at patching, 'cause I'm kinda' noob. Now trying to figure out which escape sequences to use...
if you guys re-emerge bash does the bug 'go away' ?
Re-emerged bash (yesterday), and from the same xterm I issued: 'bash' && set my prompt but still bed.
Botykai, didnt you read the comments of the other bug? According to agriffis, the patch was added for bash-3.0-r6 quite a while ago.
Sorry, then I didn't figured it out from the ebuild (and the 'files' dir' of the ebuild (there wern't any patch named like in 65410). So I rebuilt again my bash-3.0-r7 which should have been patched, logged out, logged in, and still no good.
this is unrelated to Bug 69407 too right ?
IMHO not because I tried the reproduce steps http://bugs.gentoo.org/show_bug.cgi?id=69407 with LANG=hu_HU.UTF-8 and it did work for me with characters like this: echo "ab
IMHO not because I tried the reproduce steps http://bugs.gentoo.org/show_bug.cgi?id=69407 with LANG=hu_HU.UTF-8 and it did work for me with characters like this: echo "ab÷פß$˘°ˇ˙őűúíc" ab÷פß$˘°ˇ˙őűúíc
In your report, you say: export PS1="[\e[31m\$(pwd)\e[0m :: \e[32m\@\e[0m :: e[33m\l\e[0m]\n[\e[32m\u\e[0m@\e[34m\H\e[0m] \$ " This is incorrect. The escape sequences that don't move the cursor need to be marked with \[ and \], as explained in the bash man-page under PROMPTING. If you don't do that, then bash (as you've found) gets confused regarding the width of the terminal. This appears to be pilot error.