index.md - sites - public wiki contents of suckless.org
 (HTM) git clone git://git.suckless.org/sites
 (DIR) Log
 (DIR) Files
 (DIR) Refs
       ---
       index.md (2960B)
       ---
            1 flextile layout
            2 ===============
            3 
            4 Description
            5 -----------
            6 This patch replaces the `tile` layout with a more flexible version. The
            7 features include the following:
            8 
            9 * tile like the original version (left single master, right stack)
           10 * left/right/top/bottom n-master, right/left/bottom/top/no stack/deck (deck is
           11   like `monocle` in the stack area)
           12 * per-tag configuration
           13 
           14 It therefore provides the following additional possibilities:
           15 
           16 * `tile` for left-handed people
           17 * compare multiple files with one other each at a time without switching
           18   between views
           19 
           20 The patch incorporates and expands the following patches:
           21 
           22 * bottom stack (`bstack` and `bstackhoriz`)
           23 * nmaster
           24 * pertag
           25 
           26 Configuration
           27 -------------
           28 1. Download the patch and apply it according to the
           29    [general instructions](../).
           30 
           31 2. Transfer the changes made by the patch in `config.def.h` to your `config.h`,
           32    if needed.
           33 
           34         /* tagging */
           35         ...
           36         /* include(s) depending on the tags array */
           37         #include "flextile.h"
           38 
           39         /* layout(s) */
           40         static const int layoutaxis[] = {
           41                 1,    /* layout axis: 1 = x, 2 = y; negative values mirror the layout, setting the master area to the right / bottom instead of left / top */
           42                 2,    /* master axis: 1 = x (from left to right), 2 = y (from top to bottom), 3 = z (monocle) */
           43                 2,    /* stack axis:  1 = x (from left to right), 2 = y (from top to bottom), 3 = z (monocle) */
           44         };
           45         static const unsigned int mastersplit = 1;        /* number of tiled clients in the master area */
           46 
           47         static Key keys[] = {
           48     ...
           49                 { MODKEY,                       XK_i,      shiftmastersplit, {.i = +1} },   /* increase the number of tiled clients in the master area */
           50                 { MODKEY,                       XK_d,      shiftmastersplit, {.i = -1} },   /* reduce the number of tiled clients in the master area */
           51         ...
           52                 { MODKEY|ControlMask,           XK_t,      rotatelayoutaxis, {.i = 0} },    /* 0 = layout axis */
           53                 { MODKEY|ControlMask,           XK_Tab,    rotatelayoutaxis, {.i = 1} },    /* 1 = master axis */
           54                 { MODKEY|ControlMask|ShiftMask, XK_Tab,    rotatelayoutaxis, {.i = 2} },    /* 2 = stack axis */
           55                 { MODKEY|ControlMask,           XK_Return, mirrorlayout,     {0} },
           56 
           57 
           58 Usage
           59 -----
           60 With the default configuration (see above) the original tile layout is
           61 emulated. You can change the layout by adjusting the four parameters `layout
           62 axis`, `master axis`, `stack axis` and `master split` (description see above)
           63 by pressing the appropriate keys.
           64 
           65 The original `tile` layout is only available by setting the above parameters,
           66 but not as a discrete layout; the `monocle` layout is still available by
           67 pressing `ALT+m` (in the default configuration).
           68 
           69 Download
           70 --------
           71 * [dwm-flextile-20210722-138b405.diff](dwm-flextile-20210722-138b405.diff)
           72 * [dwm-flextile-5.8.2.diff](dwm-flextile-5.8.2.diff)
           73 * [dwm-flextile-5.8.1.diff](dwm-flextile-5.8.1.diff)
           74 
           75 Authors
           76 -------
           77 * joten (at) freenet (dot) de
           78 * mail at pascal-wittmann dot de
           79 * Max Schillinger - <maxschillinger@web.de> (6.2 port)