Rxvt solves many Cygwin woes

I don’t know why Cygwin doesn’t default to using rxvt as it’s default terminal, but man….. it really should!

One of the things I’ve hated most about having to switch from a Mac Powerbook to a Window XP box (Dell) at work is that the Unix shell environment in OSX is *very* nice, and very well integrated into the rest of the OS. I know some Mac fans like to disrespect the OSX terminal, but I always rather like it. I loved having transparency, I loved the infinite scrollback buffer… and if you set you’re display variable correctly it integrated great with the port of Xwindows that’s on the Developer CD.

Cygwin helps, but the default configuration for the cygwin shell icon runs bash under cmd.exe, and it sucks. I’ve had weird problems, mostly in SSH sessions to Linux boxes, but that could be because that’s where I spend a lot of time. 🙂 Among the oddities I’ve encountered: Resizing the window seems to wreak havoc on subsequent screen updates, weird problems with colors in remove VI sessions (sometimes giving me nice black on black text! ), etc. But the absolute worst has been that hitting Ctrl-C in an SSH session kills the SSH session instead of sending the Ctrl-C to the remote application! Man that’s been a pain in my *ss!

But now, I’ve found Cygwin nirvana. Little old rxvt is listed in the Cygwin install under shells, and it’s well worth adding. It’s solved all of the above problems! After you install rxvt, you need to edit your cygwin.bat to run Rxvt instead of the default of running bash under cmd.exe. Mine now looks like this:

@echo off
cd C:cygwinbin
REM bash --login -i
rxvt -sr -sl 2500 -sb -geometry 90x30 -fg lightblue -bg midnightblue -tn rxvt -fn "Lucida Console-14" -e /usr/bin/bash --login -i

16 thoughts on “Rxvt solves many Cygwin woes

  1. Pingback: A Fly in the Rxvt Ointment « Learning LISP

  2. When I switch to Rxvt, then VIM doesn’t switch buffers on Ctrl-^. I’m assuming this is a problem with my .inputrc settings or something. But I’ve never messed with this before. Do you use Vim?

  3. I agree, rxvt makes Cygwin so much more usable, but it still has (silly) some issues.

    For example I am unable to type æøå (unicode/ISO-8559-1) in the terminal window. This works fine when i run bash via cmd, but not in rxvt. I survive, since I do most my “shelling” in English, but it’s annoying sometimes when you’re editing a unicode or ISO-8859-1 file on a remote server via SSH.

    Thanks for the the post. It saved me some time setting up the rxvt.bat file again on my new system (I always forget to transfer it when I reinstall…)

  4. Pingback: Mad Computer Scientist » Windows Terminals

  5. Pingback: Cygwin Alternative - PuppyLinux on VirtualBox « Mystic

  6. Pingback: Pin Cygwin to the Windows 7 Taskbar

  7. RXVT when not used in an X-Window environment (which is often the case under Cygwin) does not support Unicode (still true in 2010!!!). That’s why the unicode characted doesn’t work there. The standard, stupid, ugly CMD console used by default DO support unicode. Maybe this is why they still use it. It is really a shame.

  8. Rxvt is no longer developed. Its successor is rxvt-unicode, but that requires an X server to run on Cygwin. Have a look at mintty instead, which offers xterm-compatible terminal emulation with Unicode support and a native Windows UI. Available through Cygwin’s setup.exe or from http://mintty.googlecode.com.

  9. Mike said it all: mintty.
    It has everything.
    It’s nice to finally be able to read my man pages properly. UTF-8 works.
    Just create a shortcut with a target like D:\cygwin\bin\mintty.exe and you’re on.
    Configure using the GUI options by right clicking the window icon.
    You can also CTRL click filenames and URLs and they just open!
    man mintty tells it all.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s