diff --git a/x.c b/x.c index 22fe141..0006088 100644 --- a/x.c +++ b/x.c @@ -3097,6 +3097,21 @@ config_init(void) for (p = resources; p < resources + LEN(resources); p++) resource_load(db, p->name, p->type, p->dst); } + +void +reload(int sig) +{ + config_init(); + + xloadcols(); + xunloadfonts(); + + cresize(win.w, win.h); + redraw(); + + ttywrite("\033[O", 3, 1); + signal(SIGUSR1, reload); +} #endif void @@ -3196,6 +3211,7 @@ run: #if USEXRESOURCES config_init(); + signal(SIGUSR1, reload); #endif cols = MAX(cols, 1); rows = MAX(rows, 1);