commit e558afdb456bf7ebbf7c2e2da835db249e82107c
parent 1afeee85838fab506a47bea3830eed8e4d715d60
Author: Mahdi Mirzade <[email protected]>
Date: Mon, 28 Mar 2022 16:38:56 +0430
Add nextprev tag + mouse support(only active tags)
Diffstat:
M | config.h | | | 8 | +++++++- |
M | dwm.c | | | 30 | ++++++++++++++++++++++++++++++ |
D | patches/index.html | | | 312 | ------------------------------------------------------------------------------- |
3 files changed, 37 insertions(+), 313 deletions(-)
diff --git a/config.h b/config.h
@@ -168,6 +168,8 @@ static Key keys[] = {
{ MODKEY, XK_minus, setgaps, {.i = -1 } },
{ MODKEY, XK_equal, setgaps, {.i = +1 } },
{ MODKEY|ShiftMask, XK_equal, setgaps, {.i = 0 } },
+ { MODKEY|ControlMask, XK_minus, shiftview, {.i = -1 } },
+ { MODKEY|ControlMask, XK_equal, shiftview, {.i = +1 } },
TAGKEYS( XK_1, 0)
TAGKEYS( XK_2, 1)
TAGKEYS( XK_3, 2)
@@ -179,7 +181,9 @@ static Key keys[] = {
TAGKEYS( XK_9, 8)
{ MODKEY|ShiftMask, XK_r, quit, {1} },
{ MODKEY|ShiftMask, XK_q, quit, {0} },
- { MODKEY, XK_w, spawn, SHCMD("st -c \"st-float\" -g \"80x24+400+150\" -e sh -c \"set-bg -s\"") },
+ { MODKEY, XK_w, spawn, SHCMD("qutebrowser \":open -t\"") },
+ { MODKEY|ShiftMask, XK_w, spawn, SHCMD("st -c \"st-float\" -g \"80x24+400+150\" -e sh -c \"set-bg -s\"") },
+ { MODKEY|ShiftMask, XK_s, spawn, SHCMD("st -c \"st-float\" -g 50x10 -e sh -c \"fetch eof; sleep 12000\"") },
{ MODKEY|ShiftMask, XK_t, spawn, SHCMD("set-theme -s") },
{ MODKEY|ControlMask, XK_l, spawn, SHCMD("lock") },
{ MODKEY, XK_grave, spawn, SHCMD("emoji insert") },
@@ -218,6 +222,8 @@ static Button buttons[] = {
{ ClkTagBar, 0, Button3, toggleview, {0} },
{ ClkTagBar, MODKEY, Button1, tag, {0} },
{ ClkTagBar, MODKEY, Button3, toggletag, {0} },
+ { ClkTagBar, 0, Button4, shiftview, {.i = -1} },
+ { ClkTagBar, 0, Button5, shiftview, {.i = +1} },
{ ClkLtSymbol, 0, Button1, cyclelayout, {.i = +1} },
{ ClkLtSymbol, 0, Button2, setlayout, {.v = &layouts[0]} },
{ ClkLtSymbol, 0, Button3, cyclelayout, {.i = -1} },
diff --git a/dwm.c b/dwm.c
@@ -314,6 +314,7 @@ static int xerrordummy(Display *dpy, XErrorEvent *ee);
static int xerrorstart(Display *dpy, XErrorEvent *ee);
static void xrdb(const Arg *arg);
static void movestack(const Arg *arg);
+static void shiftview(const Arg *arg);
static void zoom(const Arg *arg);
static pid_t getparentprocess(pid_t p);
@@ -3429,6 +3430,35 @@ movestack(const Arg *arg) {
}
void
+shiftview(const Arg *arg)
+{
+ Arg a;
+ Client *c;
+ unsigned visible = 0;
+ int i = arg->i;
+ int count = 0;
+ int nextseltags, curseltags = selmon->tagset[selmon->seltags];
+
+ do {
+ if(i > 0) // left circular shift
+ nextseltags = (curseltags << i) | (curseltags >> (LENGTH(tags) - i));
+ else // right circular shift
+ nextseltags = curseltags >> (- i) | (curseltags << (LENGTH(tags) + i));
+
+ // Check if tag is visible
+ for (c = selmon->clients; c && !visible; c = c->next)
+ if (nextseltags & c->tags) { visible = 1; break; }
+
+ i += arg->i;
+ } while (!visible && ++count < LENGTH(tags));
+
+ if (count < LENGTH(tags)) {
+ a.i = nextseltags;
+ view(&a);
+ }
+}
+
+void
zoom(const Arg *arg)
{
Client *c = selmon->sel;
diff --git a/patches/index.html b/patches/index.html
@@ -1,312 +0,0 @@
-<!doctype html>
-<html>
-<head>
- <meta charset="utf-8"/>
- <title>dwm - dynamic window manager | suckless.org software that sucks less</title>
- <link rel="stylesheet" type="text/css" href="//suckless.org/pub/style.css"/>
-</head>
-
-<div id="header">
- <a href="//suckless.org/"><img src="//suckless.org/logo.svg" alt=""/></a>
- <a id="headerLink" href="//suckless.org/">suckless.org</a>
- <span class="hidden"> - </span>
- <span id="headerSubtitle">dwm - dynamic window manager</span>
-</div>
-<hr class="hidden"/>
-<div id="menu">
- <a href="//suckless.org/">home</a>
- <a href="//dwm.suckless.org/"><b>dwm</b></a>
- <a href="//st.suckless.org/">st</a>
- <a href="//core.suckless.org/">core</a>
- <a href="//surf.suckless.org/">surf</a>
- <a href="//tools.suckless.org/">tools</a>
- <a href="//libs.suckless.org/">libs</a>
- <a href="//ev.suckless.org/">e.V.</a>
- <span class="right">
- <a href="//dl.suckless.org">download</a>
- <a href="//git.suckless.org">source</a>
- </span>
-</div>
-<hr class="hidden"/>
-<div id="content">
-<div id="nav">
- <ul>
- <li><a href="/">about</a></li>
- <li><a href="//dwm.suckless.org/customisation/">customisation/</a></li>
- <li><a href="//dwm.suckless.org/dynamic_window_management/">dynamic window management/</a></li>
- <li><a href="//dwm.suckless.org/faq/">faq/</a></li>
- <li><a href="//dwm.suckless.org/multi-monitor/">multi monitor/</a></li>
- <li><a href="//dwm.suckless.org/multi-pointer/">multi pointer/</a></li>
- <li><a href="//dwm.suckless.org/patches/"><b>patches/</b></a>
- <ul>
- <li><a href="//dwm.suckless.org/patches/accessnthmonitor/">accessnthmonitor/</a></li>
- <li><a href="//dwm.suckless.org/patches/activetagindicatorbar/">activetagindicatorbar/</a></li>
- <li><a href="//dwm.suckless.org/patches/actualfullscreen/">actualfullscreen/</a></li>
- <li><a href="//dwm.suckless.org/patches/adjacenttag/">adjacenttag/</a></li>
- <li><a href="//dwm.suckless.org/patches/alpha/">alpha/</a></li>
- <li><a href="//dwm.suckless.org/patches/alternativetags/">alternativetags/</a></li>
- <li><a href="//dwm.suckless.org/patches/alttagsdecoration/">alttagsdecoration/</a></li>
- <li><a href="//dwm.suckless.org/patches/alwayscenter/"><b>alwayscenter/</b></a></li>
- <li><a href="//dwm.suckless.org/patches/alwaysfullscreen/">alwaysfullscreen/</a></li>
- <li><a href="//dwm.suckless.org/patches/alwaysontop/">alwaysontop/</a></li>
- <li><a href="//dwm.suckless.org/patches/anybar/">anybar/</a></li>
- <li><a href="//dwm.suckless.org/patches/aspectresize/">aspectresize/</a></li>
- <li><a href="//dwm.suckless.org/patches/attachabove/">attachabove/</a></li>
- <li><a href="//dwm.suckless.org/patches/attachaside/">attachaside/</a></li>
- <li><a href="//dwm.suckless.org/patches/attachasideandbelow/">attachasideandbelow/</a></li>
- <li><a href="//dwm.suckless.org/patches/attachbelow/">attachbelow/</a></li>
- <li><a href="//dwm.suckless.org/patches/attachbottom/">attachbottom/</a></li>
- <li><a href="//dwm.suckless.org/patches/attachdirection/">attachdirection/</a></li>
- <li><a href="//dwm.suckless.org/patches/attachtop/">attachtop/</a></li>
- <li><a href="//dwm.suckless.org/patches/autoresize/">autoresize/</a></li>
- <li><a href="//dwm.suckless.org/patches/autostart/">autostart/</a></li>
- <li><a href="//dwm.suckless.org/patches/awesomebar/">awesomebar/</a></li>
- <li><a href="//dwm.suckless.org/patches/azerty/">azerty/</a></li>
- <li><a href="//dwm.suckless.org/patches/bar_height/">bar height/</a></li>
- <li><a href="//dwm.suckless.org/patches/barpadding/">barpadding/</a></li>
- <li><a href="//dwm.suckless.org/patches/bartabgroups/">bartabgroups/</a></li>
- <li><a href="//dwm.suckless.org/patches/bidi/">bidi/</a></li>
- <li><a href="//dwm.suckless.org/patches/blanktags/">blanktags/</a></li>
- <li><a href="//dwm.suckless.org/patches/bottomstack/">bottomstack/</a></li>
- <li><a href="//dwm.suckless.org/patches/canfocusfloating/">canfocusfloating/</a></li>
- <li><a href="//dwm.suckless.org/patches/canfocusrule/">canfocusrule/</a></li>
- <li><a href="//dwm.suckless.org/patches/center/">center/</a></li>
- <li><a href="//dwm.suckless.org/patches/center_first_window/">center first window/</a></li>
- <li><a href="//dwm.suckless.org/patches/centeredmaster/">centeredmaster/</a></li>
- <li><a href="//dwm.suckless.org/patches/centeredwindowname/">centeredwindowname/</a></li>
- <li><a href="//dwm.suckless.org/patches/centretitle/">centretitle/</a></li>
- <li><a href="//dwm.suckless.org/patches/cfacts/">cfacts/</a></li>
- <li><a href="//dwm.suckless.org/patches/clientindicators/">clientindicators/</a></li>
- <li><a href="//dwm.suckless.org/patches/clientopacity/">clientopacity/</a></li>
- <li><a href="//dwm.suckless.org/patches/clientspertag/">clientspertag/</a></li>
- <li><a href="//dwm.suckless.org/patches/cmdcustomize/">cmdcustomize/</a></li>
- <li><a href="//dwm.suckless.org/patches/colemak_keys/">colemak keys/</a></li>
- <li><a href="//dwm.suckless.org/patches/colorbar/">colorbar/</a></li>
- <li><a href="//dwm.suckless.org/patches/columngaps/">columngaps/</a></li>
- <li><a href="//dwm.suckless.org/patches/columns/">columns/</a></li>
- <li><a href="//dwm.suckless.org/patches/combo/">combo/</a></li>
- <li><a href="//dwm.suckless.org/patches/cool_autostart/">cool autostart/</a></li>
- <li><a href="//dwm.suckless.org/patches/cropwindows/">cropwindows/</a></li>
- <li><a href="//dwm.suckless.org/patches/current_desktop/">current desktop/</a></li>
- <li><a href="//dwm.suckless.org/patches/cursorwarp/">cursorwarp/</a></li>
- <li><a href="//dwm.suckless.org/patches/cyclelayouts/">cyclelayouts/</a></li>
- <li><a href="//dwm.suckless.org/patches/deck/">deck/</a></li>
- <li><a href="//dwm.suckless.org/patches/decoration_hints/">decoration hints/</a></li>
- <li><a href="//dwm.suckless.org/patches/default_tag_apps/">default tag apps/</a></li>
- <li><a href="//dwm.suckless.org/patches/defaultlayoutpermonitor/">defaultlayoutpermonitor/</a></li>
- <li><a href="//dwm.suckless.org/patches/defaulttransparency/">defaulttransparency/</a></li>
- <li><a href="//dwm.suckless.org/patches/destroyfocus/">destroyfocus/</a></li>
- <li><a href="//dwm.suckless.org/patches/dmenumatchtop/">dmenumatchtop/</a></li>
- <li><a href="//dwm.suckless.org/patches/dragmfact/">dragmfact/</a></li>
- <li><a href="//dwm.suckless.org/patches/dualstatus/">dualstatus/</a></li>
- <li><a href="//dwm.suckless.org/patches/dwmc/">dwmc/</a></li>
- <li><a href="//dwm.suckless.org/patches/dwmfifo/">dwmfifo/</a></li>
- <li><a href="//dwm.suckless.org/patches/dynamicscratchpads/">dynamicscratchpads/</a></li>
- <li><a href="//dwm.suckless.org/patches/dynamicswallow/">dynamicswallow/</a></li>
- <li><a href="//dwm.suckless.org/patches/emptyview/">emptyview/</a></li>
- <li><a href="//dwm.suckless.org/patches/environmentvars/">environmentvars/</a></li>
- <li><a href="//dwm.suckless.org/patches/ewmhtags/">ewmhtags/</a></li>
- <li><a href="//dwm.suckless.org/patches/exresize/">exresize/</a></li>
- <li><a href="//dwm.suckless.org/patches/extrabar/">extrabar/</a></li>
- <li><a href="//dwm.suckless.org/patches/fadeinactive/">fadeinactive/</a></li>
- <li><a href="//dwm.suckless.org/patches/fakefullscreen/">fakefullscreen/</a></li>
- <li><a href="//dwm.suckless.org/patches/fancybar/">fancybar/</a></li>
- <li><a href="//dwm.suckless.org/patches/fibonacci/">fibonacci/</a></li>
- <li><a href="//dwm.suckless.org/patches/flextile/">flextile/</a></li>
- <li><a href="//dwm.suckless.org/patches/float_border_color/">float border color/</a></li>
- <li><a href="//dwm.suckless.org/patches/floatrules/">floatrules/</a></li>
- <li><a href="//dwm.suckless.org/patches/focusadjacenttag/">focusadjacenttag/</a></li>
- <li><a href="//dwm.suckless.org/patches/focusfullscreen/">focusfullscreen/</a></li>
- <li><a href="//dwm.suckless.org/patches/focusmaster/">focusmaster/</a></li>
- <li><a href="//dwm.suckless.org/patches/focusmonmouse/">focusmonmouse/</a></li>
- <li><a href="//dwm.suckless.org/patches/focusonclick/">focusonclick/</a></li>
- <li><a href="//dwm.suckless.org/patches/focusonnetactive/">focusonnetactive/</a></li>
- <li><a href="//dwm.suckless.org/patches/focusurgent/">focusurgent/</a></li>
- <li><a href="//dwm.suckless.org/patches/freespace/">freespace/</a></li>
- <li><a href="//dwm.suckless.org/patches/fsignal/">fsignal/</a></li>
- <li><a href="//dwm.suckless.org/patches/fullgaps/">fullgaps/</a></li>
- <li><a href="//dwm.suckless.org/patches/fullscreen/">fullscreen/</a></li>
- <li><a href="//dwm.suckless.org/patches/functionalgaps/">functionalgaps/</a></li>
- <li><a href="//dwm.suckless.org/patches/gaplessgrid/">gaplessgrid/</a></li>
- <li><a href="//dwm.suckless.org/patches/gaps/">gaps/</a></li>
- <li><a href="//dwm.suckless.org/patches/gestures/">gestures/</a></li>
- <li><a href="//dwm.suckless.org/patches/goatcmd/">goatcmd/</a></li>
- <li><a href="//dwm.suckless.org/patches/goback/">goback/</a></li>
- <li><a href="//dwm.suckless.org/patches/graballkeycodes/">graballkeycodes/</a></li>
- <li><a href="//dwm.suckless.org/patches/gridmode/">gridmode/</a></li>
- <li><a href="//dwm.suckless.org/patches/hide_vacant_tags/">hide vacant tags/</a></li>
- <li><a href="//dwm.suckless.org/patches/hideborder/">hideborder/</a></li>
- <li><a href="//dwm.suckless.org/patches/historical/">historical/</a></li>
- <li><a href="//dwm.suckless.org/patches/holdbar/">holdbar/</a></li>
- <li><a href="//dwm.suckless.org/patches/horizgrid/">horizgrid/</a></li>
- <li><a href="//dwm.suckless.org/patches/ignore_transient_windows/">ignore transient windows/</a></li>
- <li><a href="//dwm.suckless.org/patches/inplacerotate/">inplacerotate/</a></li>
- <li><a href="//dwm.suckless.org/patches/insets/">insets/</a></li>
- <li><a href="//dwm.suckless.org/patches/ipc/">ipc/</a></li>
- <li><a href="//dwm.suckless.org/patches/ispermanent/">ispermanent/</a></li>
- <li><a href="//dwm.suckless.org/patches/keychain/">keychain/</a></li>
- <li><a href="//dwm.suckless.org/patches/keychord/">keychord/</a></li>
- <li><a href="//dwm.suckless.org/patches/keycodes/">keycodes/</a></li>
- <li><a href="//dwm.suckless.org/patches/keymodes/">keymodes/</a></li>
- <li><a href="//dwm.suckless.org/patches/keypressrelease/">keypressrelease/</a></li>
- <li><a href="//dwm.suckless.org/patches/killfocusnext/">killfocusnext/</a></li>
- <li><a href="//dwm.suckless.org/patches/killunsel/">killunsel/</a></li>
- <li><a href="//dwm.suckless.org/patches/launcher/">launcher/</a></li>
- <li><a href="//dwm.suckless.org/patches/layoutmenu/">layoutmenu/</a></li>
- <li><a href="//dwm.suckless.org/patches/layoutmonitorrules/">layoutmonitorrules/</a></li>
- <li><a href="//dwm.suckless.org/patches/layoutscroll/">layoutscroll/</a></li>
- <li><a href="//dwm.suckless.org/patches/leftlayout/">leftlayout/</a></li>
- <li><a href="//dwm.suckless.org/patches/leftstack/">leftstack/</a></li>
- <li><a href="//dwm.suckless.org/patches/locktagsfor/">locktagsfor/</a></li>
- <li><a href="//dwm.suckless.org/patches/mark/">mark/</a></li>
- <li><a href="//dwm.suckless.org/patches/maximize/">maximize/</a></li>
- <li><a href="//dwm.suckless.org/patches/monocle_count/">monocle count/</a></li>
- <li><a href="//dwm.suckless.org/patches/monoclesymbol/">monoclesymbol/</a></li>
- <li><a href="//dwm.suckless.org/patches/movecenter/">movecenter/</a></li>
- <li><a href="//dwm.suckless.org/patches/moveontagmon/">moveontagmon/</a></li>
- <li><a href="//dwm.suckless.org/patches/moveplace/">moveplace/</a></li>
- <li><a href="//dwm.suckless.org/patches/moveresize/">moveresize/</a></li>
- <li><a href="//dwm.suckless.org/patches/movestack/">movestack/</a></li>
- <li><a href="//dwm.suckless.org/patches/movethrow/">movethrow/</a></li>
- <li><a href="//dwm.suckless.org/patches/movetoedge/">movetoedge/</a></li>
- <li><a href="//dwm.suckless.org/patches/mpdcontrol/">mpdcontrol/</a></li>
- <li><a href="//dwm.suckless.org/patches/multikey/">multikey/</a></li>
- <li><a href="//dwm.suckless.org/patches/multimonitorscratchpads/">multimonitorscratchpads/</a></li>
- <li><a href="//dwm.suckless.org/patches/multipledynamicscratchpads/">multipledynamicscratchpads/</a></li>
- <li><a href="//dwm.suckless.org/patches/namedscratchpads/">namedscratchpads/</a></li>
- <li><a href="//dwm.suckless.org/patches/nametag/">nametag/</a></li>
- <li><a href="//dwm.suckless.org/patches/nextprev/">nextprev/</a></li>
- <li><a href="//dwm.suckless.org/patches/nmaster/">nmaster/</a></li>
- <li><a href="//dwm.suckless.org/patches/nmaxmaster/">nmaxmaster/</a></li>
- <li><a href="//dwm.suckless.org/patches/noborder/">noborder/</a></li>
- <li><a href="//dwm.suckless.org/patches/noborderflicker/">noborderflicker/</a></li>
- <li><a href="//dwm.suckless.org/patches/notallowed/">notallowed/</a></li>
- <li><a href="//dwm.suckless.org/patches/notitle/">notitle/</a></li>
- <li><a href="//dwm.suckless.org/patches/nrowgrid/">nrowgrid/</a></li>
- <li><a href="//dwm.suckless.org/patches/onlyquitonempty/">onlyquitonempty/</a></li>
- <li><a href="//dwm.suckless.org/patches/pango/">pango/</a></li>
- <li><a href="//dwm.suckless.org/patches/pertag/">pertag/</a></li>
- <li><a href="//dwm.suckless.org/patches/pledge/">pledge/</a></li>
- <li><a href="//dwm.suckless.org/patches/push/">push/</a></li>
- <li><a href="//dwm.suckless.org/patches/pwkl/">pwkl/</a></li>
- <li><a href="//dwm.suckless.org/patches/qubesdecorations/">qubesdecorations/</a></li>
- <li><a href="//dwm.suckless.org/patches/qubesrules/">qubesrules/</a></li>
- <li><a href="//dwm.suckless.org/patches/rainbowtags/">rainbowtags/</a></li>
- <li><a href="//dwm.suckless.org/patches/ratiofullscreen/">ratiofullscreen/</a></li>
- <li><a href="//dwm.suckless.org/patches/rearrangebar/">rearrangebar/</a></li>
- <li><a href="//dwm.suckless.org/patches/rebootcmd/">rebootcmd/</a></li>
- <li><a href="//dwm.suckless.org/patches/removeborder/">removeborder/</a></li>
- <li><a href="//dwm.suckless.org/patches/reorganizetags/">reorganizetags/</a></li>
- <li><a href="//dwm.suckless.org/patches/resetlayout/">resetlayout/</a></li>
- <li><a href="//dwm.suckless.org/patches/resetnmaster/">resetnmaster/</a></li>
- <li><a href="//dwm.suckless.org/patches/resizecorners/">resizecorners/</a></li>
- <li><a href="//dwm.suckless.org/patches/restartsig/">restartsig/</a></li>
- <li><a href="//dwm.suckless.org/patches/rmaster/">rmaster/</a></li>
- <li><a href="//dwm.suckless.org/patches/rotatestack/">rotatestack/</a></li>
- <li><a href="//dwm.suckless.org/patches/rotatetags/">rotatetags/</a></li>
- <li><a href="//dwm.suckless.org/patches/ru_gaps/">ru gaps/</a></li>
- <li><a href="//dwm.suckless.org/patches/rulerefresher/">rulerefresher/</a></li>
- <li><a href="//dwm.suckless.org/patches/save_floats/">save floats/</a></li>
- <li><a href="//dwm.suckless.org/patches/scheme_switch/">scheme switch/</a></li>
- <li><a href="//dwm.suckless.org/patches/scratchpad/">scratchpad/</a></li>
- <li><a href="//dwm.suckless.org/patches/scratchpads/">scratchpads/</a></li>
- <li><a href="//dwm.suckless.org/patches/script_tags/">script tags/</a></li>
- <li><a href="//dwm.suckless.org/patches/selectivefakefullscreen/">selectivefakefullscreen/</a></li>
- <li><a href="//dwm.suckless.org/patches/selfrestart/">selfrestart/</a></li>
- <li><a href="//dwm.suckless.org/patches/sendmoncenter/">sendmoncenter/</a></li>
- <li><a href="//dwm.suckless.org/patches/setborderpx/">setborderpx/</a></li>
- <li><a href="//dwm.suckless.org/patches/setstatus/">setstatus/</a></li>
- <li><a href="//dwm.suckless.org/patches/shift-tools/">shift tools/</a></li>
- <li><a href="//dwm.suckless.org/patches/showselmon/">showselmon/</a></li>
- <li><a href="//dwm.suckless.org/patches/shutdowncmd/">shutdowncmd/</a></li>
- <li><a href="//dwm.suckless.org/patches/single_tagset/">single tagset/</a></li>
- <li><a href="//dwm.suckless.org/patches/singularborders/">singularborders/</a></li>
- <li><a href="//dwm.suckless.org/patches/sizehints/">sizehints/</a></li>
- <li><a href="//dwm.suckless.org/patches/smartborders/">smartborders/</a></li>
- <li><a href="//dwm.suckless.org/patches/spawn_cwd/">spawn cwd/</a></li>
- <li><a href="//dwm.suckless.org/patches/spawnprograms/">spawnprograms/</a></li>
- <li><a href="//dwm.suckless.org/patches/spawntag/">spawntag/</a></li>
- <li><a href="//dwm.suckless.org/patches/splitstatus/">splitstatus/</a></li>
- <li><a href="//dwm.suckless.org/patches/sshawarespawn/">sshawarespawn/</a></li>
- <li><a href="//dwm.suckless.org/patches/stacker/">stacker/</a></li>
- <li><a href="//dwm.suckless.org/patches/stackmfact/">stackmfact/</a></li>
- <li><a href="//dwm.suckless.org/patches/staticstatus/">staticstatus/</a></li>
- <li><a href="//dwm.suckless.org/patches/status2d/">status2d/</a></li>
- <li><a href="//dwm.suckless.org/patches/statusallmons/">statusallmons/</a></li>
- <li><a href="//dwm.suckless.org/patches/statusbarfont/">statusbarfont/</a></li>
- <li><a href="//dwm.suckless.org/patches/statusbutton/">statusbutton/</a></li>
- <li><a href="//dwm.suckless.org/patches/statuscmd/">statuscmd/</a></li>
- <li><a href="//dwm.suckless.org/patches/statuscolors/">statuscolors/</a></li>
- <li><a href="//dwm.suckless.org/patches/statusmon/">statusmon/</a></li>
- <li><a href="//dwm.suckless.org/patches/statuspadding/">statuspadding/</a></li>
- <li><a href="//dwm.suckless.org/patches/stdin/">stdin/</a></li>
- <li><a href="//dwm.suckless.org/patches/steam/">steam/</a></li>
- <li><a href="//dwm.suckless.org/patches/sticky/">sticky/</a></li>
- <li><a href="//dwm.suckless.org/patches/stickyindicator/">stickyindicator/</a></li>
- <li><a href="//dwm.suckless.org/patches/swallow/">swallow/</a></li>
- <li><a href="//dwm.suckless.org/patches/swapfocus/">swapfocus/</a></li>
- <li><a href="//dwm.suckless.org/patches/swaptags/">swaptags/</a></li>
- <li><a href="//dwm.suckless.org/patches/switchcol/">switchcol/</a></li>
- <li><a href="//dwm.suckless.org/patches/switchtotag/">switchtotag/</a></li>
- <li><a href="//dwm.suckless.org/patches/systray/">systray/</a></li>
- <li><a href="//dwm.suckless.org/patches/tab/">tab/</a></li>
- <li><a href="//dwm.suckless.org/patches/tag-previews/">tag previews/</a></li>
- <li><a href="//dwm.suckless.org/patches/tagall/">tagall/</a></li>
- <li><a href="//dwm.suckless.org/patches/taggrid/">taggrid/</a></li>
- <li><a href="//dwm.suckless.org/patches/tagintostack/">tagintostack/</a></li>
- <li><a href="//dwm.suckless.org/patches/taglabels/">taglabels/</a></li>
- <li><a href="//dwm.suckless.org/patches/tagothermonitor/">tagothermonitor/</a></li>
- <li><a href="//dwm.suckless.org/patches/tagspawn/">tagspawn/</a></li>
- <li><a href="//dwm.suckless.org/patches/tapresize/">tapresize/</a></li>
- <li><a href="//dwm.suckless.org/patches/tatami/">tatami/</a></li>
- <li><a href="//dwm.suckless.org/patches/three-column/">three column/</a></li>
- <li><a href="//dwm.suckless.org/patches/tilegap/">tilegap/</a></li>
- <li><a href="//dwm.suckless.org/patches/titlecolor/">titlecolor/</a></li>
- <li><a href="//dwm.suckless.org/patches/togglefloatingcenter/">togglefloatingcenter/</a></li>
- <li><a href="//dwm.suckless.org/patches/transfer/">transfer/</a></li>
- <li><a href="//dwm.suckless.org/patches/underlinetags/">underlinetags/</a></li>
- <li><a href="//dwm.suckless.org/patches/unfloatvisible/">unfloatvisible/</a></li>
- <li><a href="//dwm.suckless.org/patches/urgentborder/">urgentborder/</a></li>
- <li><a href="//dwm.suckless.org/patches/uselessgap/">uselessgap/</a></li>
- <li><a href="//dwm.suckless.org/patches/vanitygaps/">vanitygaps/</a></li>
- <li><a href="//dwm.suckless.org/patches/viewontag/">viewontag/</a></li>
- <li><a href="//dwm.suckless.org/patches/vtcolors/">vtcolors/</a></li>
- <li><a href="//dwm.suckless.org/patches/warp/">warp/</a></li>
- <li><a href="//dwm.suckless.org/patches/winicon/">winicon/</a></li>
- <li><a href="//dwm.suckless.org/patches/winview/">winview/</a></li>
- <li><a href="//dwm.suckless.org/patches/xfce4-panel/">xfce4 panel/</a></li>
- <li><a href="//dwm.suckless.org/patches/xkb/">xkb/</a></li>
- <li><a href="//dwm.suckless.org/patches/xrdb/">xrdb/</a></li>
- <li><a href="//dwm.suckless.org/patches/xresources/">xresources/</a></li>
- <li><a href="//dwm.suckless.org/patches/xtheme/">xtheme/</a></li>
- <li><a href="//dwm.suckless.org/patches/xtile/">xtile/</a></li>
- <li><a href="//dwm.suckless.org/patches/zoomswap/">zoomswap/</a></li>
- </ul>
- </li>
- <li><a href="//dwm.suckless.org/screenshots/">screenshots/</a></li>
- <li><a href="//dwm.suckless.org/status_monitor/">status monitor/</a></li>
- <li><a href="//dwm.suckless.org/tutorial/">tutorial/</a></li>
- </ul>
-</div>
-<hr class="hidden"/>
-<div id="main">
-
-<h1>alwayscenter</h1>
-<h2>Description</h2>
-<p>All floating windows are centered, like the center patch, but
-without a rule.</p>
-<h2>Download</h2>
-<ul>
-<li><a href="dwm-alwayscenter-20200625-f04cac6.diff">dwm-alwayscenter-20200625-f04cac6.diff</a></li>
-</ul>
-<h2>Authors</h2>
-<ul>
-<li>Cássio Ávila - <a href="mailto:cassioavila@yandex.com">cassioavila@yandex.com</a> </li>
-<li>Chris Down - <a href="mailto:chris@chrisdown.name">chris@chrisdown.name</a> (original center patch)</li>
-<li>Laslo Hunhold - <a href="mailto:dev@frign.de">dev@frign.de</a> (original center patch git port)</li>
-</ul>
-</div>
-
-</div>
-
-</html>