JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
applied Peter Hartlich's simplification patch of setmfact and his revival of MFACT...
[dwm.git] / config.def.h
index 4254c43..541e405 100644 (file)
@@ -15,14 +15,20 @@ const char tags[][MAXTAGLEN] = { "1", "2", "3", "4", "5", "6", "7", "8", "9" };
 
 Rule rules[] = {
        /* class        instance        title           tags ref        isfloating */
-       { NULL,         NULL,           "Firefox",      tags[8],        False },
-       { NULL,         NULL,           "Gimp",         NULL,           True },
-       { NULL,         NULL,           "MPlayer",      NULL,           True },
-       { NULL,         NULL,           "Acroread",     NULL,           True },
+       { "Gimp",       NULL,           NULL,           NULL,           True },
 };
 
-/* geometry function */
-void (*setgeoms)(void) = setdefgeoms;
+/* geometries, s{x,y,w,h} and bh are already initualized here */
+/*   func name  bx  by  bw  wx  wy  ww     wh  mx  my       mw  mh     tx  ty     tw  th  mox moy mow moh */
+#define MFACT                  0.55    /* master width factor [0.1 .. 0.9] */
+DEFGEOM(single,  0,  0, sw,  0, bh, sw, sh-bh, wx, wy, mfact*sw, wh, mx+mw, wy, ww-mw, wh,  wx, wy, ww, wh)
+DEFGEOM(dual,    0,  0,1280, 0, bh, ww, wh-bh, wx, wy, 1280,800-bh,  1280,  0, ww-mw, sh,  mx, my, mw, mh)
+
+Geom geoms[] = {
+       /* symbol       function */
+       { "[]",         single },       /* first entry is default */
+       { "[][]",       dual },
+};
 
 /* layout(s) */
 #define RESIZEHINTS            True    /* False - respect size hints in tiled resizals */
@@ -42,18 +48,18 @@ Key keys[] = {
        /* modifier                     key             function        argument */
        { MODKEY,                       XK_p,           spawn,
                "exec dmenu_run -fn '"FONT"' -nb '"NORMBGCOLOR"' -nf '"NORMFGCOLOR"' -sb '"SELBGCOLOR"' -sf '"SELFGCOLOR"'" },
-       { MODKEY|ShiftMask,             XK_Return,      spawn, "exec uxterm" },
+       { MODKEY|ShiftMask,             XK_Return,      spawn,          "exec uxterm" },
        { MODKEY,                       XK_j,           focusnext,      NULL },
        { MODKEY,                       XK_k,           focusprev,      NULL },
        { MODKEY,                       XK_r,           reapply,        NULL },
+       { MODKEY,                       XK_h,           setmfact,       "-0.05" },
+       { MODKEY,                       XK_l,           setmfact,       "+0.05" },
        { MODKEY,                       XK_Return,      zoom,           NULL },
        { MODKEY,                       XK_Tab,         viewprevtag,    NULL },
-       { MODKEY,                       XK_m,           setlayout,      "[M]" },
-       { MODKEY,                       XK_f,           setlayout,      "><>" },
-       { MODKEY,                       XK_v,           setlayout,      "[]=" },
-       { MODKEY,                       XK_h,           setlayout,      "[]|" },
-       { MODKEY|ShiftMask,             XK_space,       togglefloating, NULL },
        { MODKEY|ShiftMask,             XK_c,           killclient,     NULL },
+       { MODKEY,                       XK_space,       setlayout,      NULL },
+       { MODKEY|ShiftMask,             XK_space,       togglefloating, NULL },
+       { MODKEY|ControlMask,           XK_space,       setgeom,        NULL },
        { MODKEY,                       XK_0,           view,           NULL },
        { MODKEY,                       XK_1,           view,           tags[0] },
        { MODKEY,                       XK_2,           view,           tags[1] },