While we're on macros, I use the following macro for each tag,
so I can spawn an xterm wherever I want, in what mode I want,
just by setting its class, e.g.
$ xterm -class XTerm4f
spawns a floating xterm on tag 4 (1-based indexing)

#define TAG(i)  (1 << (i-1))
#define XTERM(n) \
    { "XTerm"#n       , NULL,   NULL,  TAG(n),  False,   -1 }, \
    { "XTerm"#n"f"   , NULL,   NULL,  TAG(n),  True,     -1 }

/* meanwhile, in tag rules...  */
  XTERM(1),
  XTERM(2),
  ...

It's been really useful for things like surf, where I can easily spawn
all the download-handling xterms on an unused tag and deal with
them later without having to recompile dwm with a new tag entry.

Course I have to bodge my .Xdefaults a bit to keep them obeying
whatever rules I want. I don't know whether it's valid or not,
but just having all lowercase "xterm" works:
xterm*background: black

s/xterm/urxvt too

Cheers, Rob

Reply via email to