dwm

dynamic window manager

git clone https://9o.is/git/dwm.git

commit d06b882e7bdab48dc2641e76df792b12341f0450
parent 39769100aefafecc462b254a3e0ceb8775674612
Author: Jul <jul@9o.is>
Date:   Sun,  1 Feb 2026 11:55:45 -0500

create TEXTWNP macro

Diffstat:
Mdwm.c | 13+++++++------
1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/dwm.c b/dwm.c @@ -55,6 +55,7 @@ #define HEIGHT(X) ((X)->h + 2 * (X)->bw) #define TAGMASK ((1 << LENGTH(tags)) - 1) #define TEXTW(X) (drw_fontset_getwidth(drw, (X)) + lrpad) +#define TEXTWNP(X) (drw_fontset_getwidth(drw, (X)) + 2) /* enums */ enum { CurNormal, CurResize, CurMove, CurLast }; /* cursor */ @@ -441,12 +442,12 @@ buttonpress(XEvent *e) for(c = m->clients; c; c=c->next) occ |= c->tags == TAGMASK ? 0 : c->tags; - x = TEXTW(stext) - lrpad + 2; + x = TEXTWNP(stext); x += TEXTW(selmon->ltsymbol); for (i = 0; i < LENGTH(tags); i++) { if (!(occ & 1 << i || m->tagset[m->seltags] & 1 << i)) continue; - x += TEXTW(tags[i]) - lrpad + 2; + x += TEXTWNP(tags[i]); } x = selmon->ww - x; @@ -457,7 +458,7 @@ buttonpress(XEvent *e) do { if (!(occ & 1 << i || m->tagset[m->seltags] & 1 << i)) continue; - x += TEXTW(tags[i]) - lrpad + 2; + x += TEXTWNP(tags[i]); } while (ev->x >= x && ++i < LENGTH(tags)); if (i < LENGTH(tags)) { @@ -736,7 +737,7 @@ drawbar(Monitor *m) /* draw status first so it can be overdrawn by tags later */ if (m == selmon) { /* status is only drawn on selected monitor */ drw_setscheme(drw, scheme[SchemeNorm]); - tw = TEXTW(stext) - lrpad + 2; /* 2px right padding */ + tw = TEXTWNP(stext); drw_text(drw, m->ww - tw, 0, tw, bh, 0, stext, 0); } @@ -750,7 +751,7 @@ drawbar(Monitor *m) for (i = 0; i < LENGTH(tags); i++) { if(!(occ & 1 << i || m->tagset[m->seltags] & 1 << i)) continue; - tw += TEXTW(tags[i]) - lrpad + 2; + tw += TEXTWNP(tags[i]); } x = 0; @@ -770,7 +771,7 @@ drawbar(Monitor *m) for (i = 0; i < LENGTH(tags); i++) { if(!(occ & 1 << i || m->tagset[m->seltags] & 1 << i)) continue; - w = TEXTW(tags[i]) - lrpad + 2; + w = TEXTWNP(tags[i]); drw_setscheme(drw, scheme[m->tagset[m->seltags] & 1 << i ? SchemeSel : SchemeNorm]); drw_text(drw, x, 0, w, bh, 0, tags[i], urg & 1 << i); x += w;