This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project. See the Cygwin home page for more information.
Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: rxvt win32 port updated


Charles Wilson wrote:

> I'm having a few problems getting the native port of rxvt to work
> "correctly" with bash.
>
> >From a shortcut, the target is:
>
> E:\WINNT\Profiles\cwilson\Desktop\rxvt.exe -fn "Lucida Console-14" -fg
> #ffffbf -bg #000040 -sl 2000 -title bash
>
> this works okay - it's pale yellow on dark blue, uses the right font,
> has the right title, and implements a scrollback buffer, but it doesn't
> run my profile and setup dotfiles. I can enter commands, bash knows that
> ~ = /e/users/cwilson, etc. etc.
>
> So, add "-e bash --login" to the end of the target. If I do that, the
> rxvt window pops up, and immediately disappears. I tried many
> permutations of "-e [full DOS path | full cygwin path | executable name
> only] [with .exe suffix | without .exe suffix] [--login | -login] [-i]"
> but in every case the rxvt window immediately went away.
>
> The following shortcut, which points to an rxvt-2.6PRE2 built with X,
> works fine (assuming my Xserver is running <g>):
>
> F:\cygnus\cygwin-b20\usr\local\bin\rxvt.exe -fn sabvga -bg "rgbi:0/0/0"
> -fg "rgbi:1/1/1" -sl 2000 -e bash --login
>
> What am I doing wrong?
>
> --Chuck

I figured out the problem - I'm using colored prompt strings from the
bashprompt package. After editing my dotfiles so that I got the plain-jane
prompt, everything worked fine. Just to prove that I had identified the
problem, I did the following:

<double-click my new shortcut>
    E:\WINNT\Profiles\cwilson\Desktop\runrxvt.exe -fn "Lucida Console-14"
-fg #ffffbf -bg #000040 -sl 2000 -title bash -e bash -login
    (runrxvt is run, renamed so that it launches rxvt. Rxvt is the
distribution from http://www.io.com/~bub/rxvt.html, not the recompiled
version with -Wl,etc.

I get a nice rxvt window with bash:

cwilson : belgarion : ~ > ls
Art                Misc               Pubs               bin
Business           Music              Research           log
C0011              Other              VeryOldStuff
Christmas Letters  Politics           XFiles
Financial          Programming        autosave
cwilson : belgarion : ~ > callbashprompt default
    (COMMENT: reassert plainjane prompt, works okay)
cwilson : belgarion : ~ > callbashprompt fire
    (COMMENT: assert colored prompt --> rxvt crashes)

callbashprompt fire   tries to set PS1 to the following god-awful string:

\[\033[01;33;43m\]\[\333\262\261\260\]\[\033[01;37;43m\]\u@\h\[\033[00;31;43m\]\[\260\261\262\333\]\[\033[00;31;40m\]\[\333\262\261\260\]\[\033[01;37;40m\]
\d \$(date +%I:%M:%S%P) \n\[\033[01;33;40m\]\w/\[\033[00m\]

This works okay in the X version of rxvt, even when using the lucida font
(since it uses high ascii characters found only in the DOS charset -- not
the ANSI charset)  When used with the lucida font, it looks weird, but the
X-rxvt doesn't crash.

Perhaps the native-rxvt doesn't deal with 8bit chars as well as the
X-version. I'll try a theme that has colors, but doesn't use the extended
charset.

Yup, that works fine:
export PS1="\[\e[1;30m\][\e[0;35m\]\t\[\e[1;30m\]]
\[\e[1;36m\]\u\[\e[1;30m\]@\[\e[0;36m\]\h\[\e[1;30m\]:\[\e[0;37m\]\w\[\e[1;30m\]\\$\[\e[0;37m\]
"

I get colors, and it doesn't die.

Conclusion:
    the native rxvt port doesn't deal well with extended ASCII characters,
and crashes when asked to display them.

--Chuck



--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com