You are not logged in.
I'm TXShon. I'm new to this fourm. I've using Arch for 1 year. But haven't spend much time on it.
The WM I've tried are: openbox, compiz, pekwm, Awesome and DE: LXDE
They are all very good WMs. Openbox are very easy to use, but I don't like the xml config and none-rounded-corner.
Many people suggest to use compiz as a standalone. I tried it. Really eye candy, but emerald don't work so well and keybinding are hard to config. Then, Awesome! It's a nice tiling manager. I don't use to it. Tiling is the way we should use linux but hard to start. I found pekwm! I love it! I feel more configable on it. It uses pixmap theme so it look nicer. The default is kindof different. So, I need more time to config it.
I'm finding using tiling and floating in a WM. For now, I'm going to try pytyle on pekwm. I've read some postes said that pekwm will have theme problem.:/
Compiz is really nice! I hope it have more keybind support. How could I set the keybind up? Also, for theme, can i use it without emerald or gtk or Qt support?
Tiling are sweet! Don't no where to start.
Any suggestions? Which WM is nice that I should try?
Offline
DWM is the WM I use. It's the one that Awesome was originally based off of. It has tiling and floating modes. However, it's configured by editing it's source code, which is in C. Awesome is somewhat easier to configure if you're new, although I haven't tried it. I used to use openbox. I really liked the customization. There are some GUI tools to configure openbox, like obconf, obmenu, and obkeys.
Offline
thanks! I think I'll try DWM sometimes. I know a little bit C. I'm using C to solve some ACM problems. Learn a little bit programming
I guess the light WMs speed is not so much different. It's more about taste. They are all FAST!
Offline
Read some of the documentation. For starters, here's my config.h.
/* See LICENSE file for copyright and license details. */
/* appearance */
static const char font[] = "-*-terminus-medium-r-normal-*-12-*-*-*-*-*-*-*";
static const char normbordercolor[] = "#222222";
static const char normbgcolor[] = "#222222";
static const char normfgcolor[] = "#cccccc";
static const char selbordercolor[] = "#222222";
static const char selbgcolor[] = "#222222";
static const char selfgcolor[] = "#3399ff";
static const unsigned int borderpx = 1; /* border pixel of windows */
static const unsigned int snap = 32; /* snap pixel */
static const Bool showbar = True; /* False means no bar */
static const Bool topbar = False; /* False means bottom bar */
static const double shade = 0.6;
/* tagging */
static const char *tags[] = { "Web", "Office", "Multimedia", "Other"};
static const Rule rules[] = {
/* class instance title tags mask isfloating monitor opacity */
{ "Chromium", NULL, NULL, 1 << 8, False, -1, -1 },
{ "SMPlayer", NULL, NULL, 0100, False, -1, -1 },
{ "urxvt", NULL, NULL, 1000, False, -1, -1 },
};
/* layout(s) */
static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */
static const Bool resizehints = False; /* True means respect size hints in tiled resizals */
static const Layout layouts[] = {
/* symbol arrange function */
{ "Tile", tile }, /* first entry is default */
{ "Float", NULL }, /* no layout function means floating behavior */
{ "Monocle", monocle },
};
/* key definitions */
#define MODKEY Mod4Mask
#define TAGKEYS(KEY,TAG) \
{ MODKEY, KEY, view, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask, KEY, toggleview, {.ui = 1 << TAG} }, \
{ MODKEY|ShiftMask, KEY, tag, {.ui = 1 << TAG} }, \
{ MODKEY|ControlMask|ShiftMask, KEY, toggletag, {.ui = 1 << TAG} },
/* helper for spawning shell commands in the pre dwm-5.0 fashion */
#define SHCMD(cmd) { .v = (const char*[]){ "/bin/sh", "-c", cmd, NULL } }
/* commands */
static const char *dmenucmd[] = { "dmenu_run", "-fn", font, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
static const char *termcmd[] = { "urxvtc", NULL };
static const char *lockcmd[] = { "xscreensaver-command","--lock", NULL};
static Key keys[] = {
/* modifier key function argument */
{ MODKEY, XK_p, spawn, {.v = dmenucmd } },
{ MODKEY|ShiftMask, XK_Return, spawn, {.v = termcmd } },
{ MODKEY, XK_q, spawn, {.v = lockcmd } },
{ MODKEY, XK_b, togglebar, {0} },
{ MODKEY, XK_space, focusstack, {.i = +1 } },
{ MODKEY, XK_k, focusstack, {.i = -1 } },
{ MODKEY, XK_h, setmfact, {.f = -0.05} },
{ MODKEY, XK_l, setmfact, {.f = +0.05} },
{ MODKEY, XK_Tab, zoom, {0} },
{ MODKEY, XK_j, view, {0} },
{ MODKEY|ShiftMask, XK_c, killclient, {0} },
{ MODKEY, XK_t, setlayout, {.v = &layouts[0]} },
{ MODKEY, XK_f, setlayout, {.v = &layouts[1]} },
{ MODKEY, XK_m, setlayout, {.v = &layouts[2]} },
{ MODKEY, XK_Return, setlayout, {0} },
{ MODKEY|ShiftMask, XK_space, togglefloating, {0} },
{ MODKEY, XK_0, view, {.ui = ~0 } },
{ MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } },
{ MODKEY, XK_comma, focusmon, {.i = -1 } },
{ MODKEY, XK_period, focusmon, {.i = +1 } },
{ MODKEY|ShiftMask, XK_comma, tagmon, {.i = -1 } },
{ MODKEY|ShiftMask, XK_period, tagmon, {.i = +1 } },
TAGKEYS( XK_1, 0)
TAGKEYS( XK_2, 1)
TAGKEYS( XK_3, 2)
TAGKEYS( XK_4, 3)
TAGKEYS( XK_5, 4)
TAGKEYS( XK_6, 5)
TAGKEYS( XK_7, 6)
TAGKEYS( XK_8, 7)
TAGKEYS( XK_9, 8)
{ MODKEY|ShiftMask, XK_q, quit, {0} },
};
/* button definitions */
/* click can be ClkLtSymbol, ClkStatusText, ClkWinTitle, ClkClientWin, or ClkRootWin */
static Button buttons[] = {
/* click event mask button function argument */
{ ClkLtSymbol, 0, Button1, setlayout, {0} },
{ ClkLtSymbol, 0, Button3, setlayout, {.v = &layouts[2]} },
{ ClkWinTitle, 0, Button2, zoom, {0} },
{ ClkStatusText, 0, Button2, spawn, {.v = termcmd } },
{ ClkClientWin, MODKEY, Button1, movemouse, {0} },
{ ClkClientWin, MODKEY, Button2, togglefloating, {0} },
{ ClkClientWin, MODKEY, Button3, resizemouse, {0} },
{ ClkTagBar, 0, Button1, view, {0} },
{ ClkTagBar, 0, Button3, toggleview, {0} },
{ ClkTagBar, MODKEY, Button1, tag, {0} },
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
};
http://omploader.org/vNDJjNQ
Here's a picture.
NOTE: I have applied a transparency patch, so don't copy this right away.
Last edited by schen (2010-04-05 23:39:42)
Offline
If you're looking for a good tiler, I would suggest wmii. It works right out of the box, and it's easy to configure. Also the corners of the windows are rounded if that strikes your fancy
Offline
wmii uses lots of different language for script which I don't know where to start. Now, I'll try Dwm first.
Offline
Also the corners of the windows are rounded if that strikes your fancy
Well, not really, the rounded effect is there because of the little triangles allowing an easy mouse resize. Only the upper window will have this "rounded" effect
Offline
Now this thread will be one of those, where everyone posts their favorite WM, which doesn't really help the op.
TXShon, do you prefer manual tiling or dynamic tiling? Manual tiling means, you always have to decide yourself, how the windows will be arranged. If you prefer manual tiling - like I do - then there are two really good WMs, musca and i3. Musca is (was?) developed by a fellow Archer, but it seems like he stopped coding for musca, so it's in an unfinished state. But the concept and usability are fantastic! i3 on the other hand is actively developed, it moved to [community] some days ago and it's really an amazing WM. The configuration is really easy, just take a quick look at it and you know how it works. In case you prefer dynamic tiling ... I don't know, which ones are good, because I don't like them all ;-)
Offline
Now, I'm going to try Dwm. Maybe give i3 a try. I heard that Ratpoison is also a good choice.
Offline
Ratpoison is a manual tiler, by the way.
Offline