views:

1660

answers:

3

I've been exploring use of MSys lately as an alternative, 'nix-like shell for my windows development. However, the default colors and size are driving me crazy. Anyone have any idea as to how I can change the default size, color, and / or font? Honestly, I'd be happy if I could make the default character width/height of the shell larger, but the others would be nice too...

Clarification: the msys shell is a separate app from the windows shell - the normal 'right-click-upper-left -> properties' configuration (like with the windows shell) is not present.

Looks like underneath it's firing off rxvt. Thanks!

+1  A: 

If you're running MSYS bash from a command line, Behind the scenes it's a windows command shell window, so configuring it is just the same.

  • Right click on the title bar at the top of the shell window and select 'properties'

  • Configure the window with the options on the tabs on the dialog; these should be fairly self-explanatory.

  • When you close the dialog, select 'Modify shortcut that started this window' to save the configuration back as defaults.

EDIT: If you're running the shell in an xterm or RXVT window through an X server, start the xterm window with -fg (foreground), -bg (background) and -fn (font). Can't remember what the RXVT switches are, but you should be able to see them in the man page. You can also configure them through your .Xdefaults file. Again, see the man page for details.

EDIT: Thanks Paulo - note that MSYS also comes with an X-less version of RXVT, which the OP seems to be using. Here's a link for configuring RXVT on MSYS.

ConcernedOfTunbridgeWells
Unfortunately, msys's shell does not use the windows shell - those properties are not available.
Robert P
Fantastic, thanks!
Robert P
msys starts the local rxvt (no X at all) and it is not a windows command console.
Paulo Lopes
+4  A: 

Open the msys.bat file an aroun line 72 it reads like this:

rem Setup the default colors for rxvt.
if "x%MSYSBGCOLOR%" == "x" set MSYSBGCOLOR=White
if "x%MSYSFGCOLOR%" == "x" set MSYSFGCOLOR=Black
if "x%MINGW32BGCOLOR%" == "x" set MINGW32BGCOLOR=LightYellow
if "x%MINGW32FGCOLOR%" == "x" set MINGW32FGCOLOR=Navy
if "%MSYSTEM%" == "MSYS" set BGCOLOR=%MSYSBGCOLOR%
if "%MSYSTEM%" == "MSYS" set FGCOLOR=%MSYSFGCOLOR%
if "%MSYSTEM%" == "MINGW32" set BGCOLOR=%MINGW32BGCOLOR%
if "%MSYSTEM%" == "MINGW32" set FGCOLOR=%MINGW32FGCOLOR%

change the first 4 lines with the colors you like, to change the font, just bellow:

start %WD%rxvt -backspacekey  -sl 2500 -fg %FGCOLOR% -bg %BGCOLOR% -sr -fn Courier-12 -tn msys -geometry 80x25 -e /bin/sh --login -i

change the Courier-12 with your favourite font and the 80x25 with your prefered window size.

Paulo Lopes
+1  A: 

I create HOME env var, which have value like 'e:\home' and put into %HOME% dir .Xdefaults file with such content:

Rxvt*background: white
Rxvt*foreground: black
Rxvt*geometry: 120x40
Rxvt*font: 7x14
Rxvt*scrollBar: on
Rxvt*saveLines: 5000

Also note that this config successfully work on Cygwin and various Unix boxes.

gavenkoa