sites

public wiki contents of suckless.org
git clone git://git.suckless.org/sites
Log | Files | Refs

commit 0ca317d0dc97c44dde3902a00daefd46344ac58f
parent 8cd1a79a263c289611b6a463c4e50524d364f5c0
Author: phi <crispyfrog@163.com>
Date:   Fri, 25 Mar 2016 00:30:54 +0800

Add a new patch (switchcol) for dwm

Diffstat:
Adwm.suckless.org/patches/dwm-6.1-switchcol.diff | 47+++++++++++++++++++++++++++++++++++++++++++++++
Adwm.suckless.org/patches/switchcol.md | 21+++++++++++++++++++++
2 files changed, 68 insertions(+), 0 deletions(-)

diff --git a/dwm.suckless.org/patches/dwm-6.1-switchcol.diff b/dwm.suckless.org/patches/dwm-6.1-switchcol.diff @@ -0,0 +1,47 @@ +diff -urp dwm-6.1/dwm.c dwm-6.1-patched/dwm.c +--- dwm-6.1/dwm.c 2015-11-09 06:39:37.000000000 +0800 ++++ dwm-6.1-patched/dwm.c 2016-03-24 23:56:35.435047948 +0800 +@@ -206,6 +206,7 @@ static void setup(void); + static void showhide(Client *c); + static void sigchld(int unused); + static void spawn(const Arg *arg); ++static void switchcol(const Arg *arg); + static void tag(const Arg *arg); + static void tagmon(const Arg *arg); + static void tile(Monitor *); +@@ -1645,6 +1646,35 @@ spawn(const Arg *arg) + } + } + ++void ++switchcol(const Arg *arg) ++{ ++ Client *c, *t; ++ int col = 0; ++ int i; ++ ++ if (!selmon->sel) ++ return; ++ for (i = 0, c = nexttiled(selmon->clients); c ; ++ c = nexttiled(c->next), i++) { ++ if (c == selmon->sel) ++ col = (i + 1) > selmon->nmaster; ++ } ++ if (i <= selmon->nmaster) ++ return; ++ for (c = selmon->stack; c; c = c->snext) { ++ if (!ISVISIBLE(c)) ++ continue; ++ for (i = 0, t = nexttiled(selmon->clients); t && t != c; ++ t = nexttiled(t->next), i++); ++ if (t && (i + 1 > selmon->nmaster) != col) { ++ focus(c); ++ restack(selmon); ++ break; ++ } ++ } ++} ++ + void + tag(const Arg *arg) + { diff --git a/dwm.suckless.org/patches/switchcol.md b/dwm.suckless.org/patches/switchcol.md @@ -0,0 +1,21 @@ +# switchcol + +## Description + +Switch focus between the 2 columns (master or stack) easily. This patch only +has one function, it remembers the most recently focused client in the 2 +columns for each tag (it is implemented by searching the stack list to find +the most recent client in the other column). + +## Configuration + + /*config.h*/ + { MODKEY, XK_n, switchcol, {0} }, + +## Download + +* [dwm-6.1-switchcol.diff](dwm-6.1-mark.diff) (1126b) (20160325) + +## Author +* phi <crispyforg@163.com> +