You are not logged in.
My quest for the perfect window manager never seems to end. And even though my needs in a window manager are pretty simple, one thing I often get hung up on is the configuration format/syntax. Some window managers, though perfectly useable, are such a nuisance to configure (for example: Openbox's nasty XML files).
So if you had to choose your favourite window manager solely based upon its configuration file format, which window manager would you choose?
For me, ratpoison is probably the winner. A ratpoisonrc file is really easy to read and edit, and all of the commands and variables are well documented in the manual page.
Please share your ideas - maybe it will help me to settle on a window manager that I'm happy with!
I've seen young people waste their time reading books about sensitive vampires. It's kinda sad. But you say it's not the end of the world... Well, maybe it is!
Offline
As someone who is writing a hybrid floating/tiling window manager, I'm very interested in what people have to say here.
I think one of the reasons why Openbox's config is so complex is because it offers such a host of features. It allows for a very extensible configuration, including, but not limited to, configuring individual windows and influencing window placement policy.
Education is favorable to liberty. Freedom can exist only in a society of knowledge. Without learning, men are incapable of knowing their rights, and where learning is confined to a few people, liberty can be neither equal nor universal.
Tu ne cede malis sed contra audentior ito
Offline
Personally, I'm partial to programmable window managers, such as StumpWM (lisp), or more recently XMonad (haskell). You just can't get more powerful and flexible than being Turing-complete (-:
Offline
xml is probably easier to read than text simply because its "well-formed." But this could only be because I work with xml so its not difficult for me.
if you like openbox and your only gripe is xml config, simply use the obconf/obmenu tools and you should be good to go. Barring that, fluxbox gives you text based config files and IIRC, even Pekwm
if tiling is not a problem, then most all WMs will probably work. i3, dwm, wmii, musca are just a few examples.
There's no such thing as a stupid question, but there sure are a lot of inquisitive idiots !
Offline
xml is probably easier to read than text simply because its "well-formed." But this could only be because I work with xml so its not difficult for me.
if you like openbox and your only gripe is xml config, simply use the obconf/obmenu tools and you should be good to go. Barring that, fluxbox gives you text based config files and IIRC, even Pekwm
XML can be sort of readable, I suppose - but it can very quickly become unreadable. I'm reminded of this image And I know that there are other tools for configuring Openbox, but I'd rather configure things myself (from my favourite text editor).
PekWM's syntax is alright, but all of the double quotes and curly braces ugly it up:
Keypress = "Shift Left" { Actions = "MoveHorizontal -1" }
I was looking at WMFS earlier, and it seems to suffer from the same problem; too many double quotes and square brackets.
if tiling is not a problem, then most all WMs will probably work. i3, dwm, wmii, musca are just a few examples.
Tiling isn't necessarily a problem for me, though these days I generally just switch to the floating layer. I don't mind using dwm or wmii, for example, as I know the languages required to configure them.. but configuring your window manager in C or shell script hardly seems ideal or simple to me.
Last edited by upsidaisium (2011-01-19 07:07:30)
I've seen young people waste their time reading books about sensitive vampires. It's kinda sad. But you say it's not the end of the world... Well, maybe it is!
Offline
Look at echinus - the config is plain text in Xdefaults format: it doesn't get much simpler...
Offline
Hmm, echinus looks worthy of consideration. Thanks for the tip.
I've seen young people waste their time reading books about sensitive vampires. It's kinda sad. But you say it's not the end of the world... Well, maybe it is!
Offline
It's a bit soon for that! Besides, it could also be beneficial - or at least interesting? - for other readers as well to continue this discussion a bit.
I've seen young people waste their time reading books about sensitive vampires. It's kinda sad. But you say it's not the end of the world... Well, maybe it is!
Offline
scrotwm has a very easy to read conf:
http://www.peereboom.us/scrotwm/scrotwm.conf
WMFS's is a bit more complex, but still a great example of a config a non-coder like me can get to grips with easily:
http://wmfs.info/projects/wmfs/wiki/Example_of_wmfsrc
Last edited by kinhodder (2011-01-19 11:49:28)
Offline
I've used Window Maker the most over the past many years. It's extremely light and fast. (As opposed to something like GNOME) It handles multiple desktops, application launching, and application switching by itself. (As opposed to something like OpenBox)
I think the configuration format is the "official" NeXTSTEP / GNUstep configuration format, which looks like this:
{
DontLinkWorkspaces = NO;
MenuDisabledColor = "#999999";
IconTitleBack = "#333333";
PixmapPath = (
"/home/tester/GNUstep/Library/WindowMaker/Pixmaps",
"/home/tester/GNUstep/Library/WindowMaker/Backgrounds",
"/usr/share/WindowMaker/Pixmaps",
"/usr/share/WindowMaker/Backgrounds",
"/usr/X11R6/include/X11/pixmaps",
"/usr/local/share/pixmaps",
"/usr/share/pixmaps"
);
FTitleBack = (solid, "#0088CC");
ClipTitleFont = "Arial:slant=0:weight=200:width=100:pixelsize=10";
MaximizeKey = "Mod1+F";
IconTitleFont = "Arial:slant=0:weight=80:width=100:pixelsize=9";
LargeDisplayFont = "Arial:slant=0:weight=80:width=100:pixelsize=24";
DisableClip = YES;
MoveDisplay = none;
WindowShortcut10Key = None;
IconTitleColor = white;
WindowShortcut3Key = None;
MenuTitleFont = "Arial:slant=0:weight=200:width=100:pixelsize=12";
WindowShortcut4Key = None;
NoWindowOverDock = NO;
WorkspaceBack = (
tpixmap,
"/home/couzelis/Library/Wallpaper/Tiles/Black Holly.png",
gray20
);
HighlightTextColor = white;
EdgeResistance = 0;
WindowShortcut9Key = None;
HelpBalloons = YES;
PrevWorkspaceKey = "Control+Mod1+Left";
AutoArrangeIcons = YES;
MoveResizeKey = None;
AppIconBalloons = YES;
WindowTitleFont = "Arial:slant=0:weight=200:width=100:pixelsize=12";
WindowPlaceOrigin = (0, 0);
LHMaximizeKey = None;
UseSaveUnders = YES;
ResizebarBack = (solid, "#333333");
KbdModeLock = NO;
CycleActiveHeadOnly = NO;
WindowShortcut1Key = None;
ShowClipTitle = NO;
RHMaximizeKey = None;
WindowShortcut2Key = None;
ToggleKbdModeKey = None;
MiniwindowTitleBalloons = YES;
ShadeKey = "Mod1+S";
MaximusKey = None;
WindowShortcut7Key = None;
MenuTextBack = (solid, "#ECF2F5");
WindowPlacement = random;
RaiseAppIconsWhenBouncing = YES;
ResizeIncrement = 0;
CycleWorkspaces = YES;
WindowShortcut8Key = None;
GroupNextKey = None;
Attraction = NO;
SingleClickLaunch = NO;
IconBack = (solid, "#ECF2F5");
DisableBlinking = NO;
AntialiasedText = NO;
NewStyle = new;
WorkspaceNameDisplayPosition = center;
MenuTextFont = "Arial:slant=0:weight=80:width=100:pixelsize=12";
ScreenSwitchKey = None;
MenuTitleBack = (solid, "#0088CC");
MouseWheelAction = SwitchWorkspaces;
HMaximizeKey = None;
CloseKey = "Mod1+F4";
HighlightColor = "#333333";
NextWorkspaceKey = "Control+Mod1+Right";
GroupPrevKey = None;
WrapMenus = YES;
MinimizeAllKey = None;
CClipTitleColor = gray20;
WindowShortcut5Key = None;
MenuStyle = flat;
HideOthersKey = "Shift+Mod1+H";
IconPath = (
"/usr/share/WindowMaker/Icons",
"/usr/share/WindowMaker/Pixmaps",
"/usr/X11R6/include/X11/pixmaps",
"/usr/share/icons",
"/usr/local/share/pixmaps",
"/usr/share/pixmaps",
"/usr/share/icons/hicolor/48x48/apps",
"/usr/share/lyx/images",
"/usr/share/devede",
"/home/couzelis/Library/Icons",
"/usr/share/icons/gnome/48x48/places"
);
DisableSound = YES;
WindowShortcut6Key = None;
PTitleBack = (solid, "#333333");
UTitleColor = "#999999";
BounceAppIconsWhenUrgent = YES;
UTitleBack = (solid, "#333333");
CirculateRaise = YES;
PTitleColor = "#999999";
ResizeDisplay = floating;
}
The file format doesn't look very special. It's not particularly easy to modify by hand, but not particularly difficult either.
I changed my settings by hand for a long time. More recently I realized that absolutely everything can be changed with the GUI preferences application that comes with Window Maker. Also, I discovered that it's a really easy application to use. So, I use that now.
Offline
Haskell, because it is so beautiful (at least to me), and quite understandable (so, +1 for XMonad).
Registed Linux User 483618
Offline
Scrotwm definitely has one of the easier configs to read.
Offline