JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
Turn this into a function.
[spectrwm.git] / spectrwm.c
index 666fa0f..024c527 100644 (file)
@@ -1539,6 +1539,15 @@ bar_fmt(const char *fmtexp, char *fmtnew, struct swm_region *r, size_t sz)
        strlcat(fmtnew, "+4<+A+4<+V", sz);
 }
 
+void
+bar_replace_pad(char *tmp, int *limit, size_t sz)
+{
+       /* special case; no limit given, pad one space, instead */
+       if (*limit == sz - 1)
+               *limit = 1;
+       snprintf(tmp, sz, "%*s", *limit, " ");
+}
+
 /* replaces the bar format character sequences (like in tmux(1)) */
 char *
 bar_replace_seq(char *fmt, char *fmtrep, struct swm_region *r, size_t *offrep,
@@ -1575,10 +1584,7 @@ bar_replace_seq(char *fmt, char *fmtrep, struct swm_region *r, size_t *offrep,
 
        switch (*fmt) {
        case '<':
-               /* special case; no limit given, pad one space, instead */
-               if (limit == sizeof tmp - 1)
-                       limit = 1;
-               snprintf(tmp, sizeof tmp, "%*s", limit, " ");
+               bar_replace_pad(tmp, &limit, sizeof tmp);
                break;
        case 'A':
                snprintf(tmp, sizeof tmp, "%s", bar_ext);
@@ -4957,6 +4963,7 @@ void
 setup_spawn(void)
 {
        setconfspawn("term",            "xterm",                0);
+       setconfspawn("spawn_term",      "xterm",                0);
        setconfspawn("screenshot_all",  "screenshot.sh full",   0);
        setconfspawn("screenshot_wind", "screenshot.sh window", 0);
        setconfspawn("lock",            "xlock",                0);
@@ -5699,6 +5706,7 @@ setconfvalue(char *selector, char *value, int flags)
                break;
        case SWM_S_SPAWN_TERM:
                setconfspawn("term", value, 0);
+               setconfspawn("spawn_term", value, 0);
                break;
        case SWM_S_SS_APP:
                break;