Factor out styleStrip
parent
f7f5acbbe2
commit
c48672313b
9
chat.h
9
chat.h
|
@ -105,6 +105,15 @@ static inline size_t styleParse(struct Style *style, const char **str) {
|
|||
return strcspn(*str, (const char[]) { B, C, O, R, I, U, '\0' });
|
||||
}
|
||||
|
||||
static inline void styleStrip(struct Cat *cat, const char *str) {
|
||||
struct Style style = StyleDefault;
|
||||
while (*str) {
|
||||
size_t len = styleParse(&style, &str);
|
||||
catf(cat, "%.*s", (int)len, str);
|
||||
str += len;
|
||||
}
|
||||
}
|
||||
|
||||
enum { None, Debug, Network, IDCap = 256 };
|
||||
extern char *idNames[IDCap];
|
||||
extern enum Color idColors[IDCap];
|
||||
|
|
11
ui.c
11
ui.c
|
@ -534,16 +534,11 @@ struct Util uiNotifyUtil;
|
|||
static void notify(uint id, const char *str) {
|
||||
if (!uiNotifyUtil.argc) return;
|
||||
|
||||
char buf[1024] = "";
|
||||
styleStrip(&(struct Cat) { buf, sizeof(buf), 0 }, str);
|
||||
|
||||
struct Util util = uiNotifyUtil;
|
||||
utilPush(&util, idNames[id]);
|
||||
char buf[1024] = "";
|
||||
struct Cat cat = { buf, sizeof(buf), 0 };
|
||||
while (*str) {
|
||||
struct Style style = StyleDefault;
|
||||
size_t len = styleParse(&style, &str);
|
||||
catf(&cat, "%.*s", (int)len, str);
|
||||
str += len;
|
||||
}
|
||||
utilPush(&util, buf);
|
||||
|
||||
pid_t pid = fork();
|
||||
|
|
Loading…
Reference in New Issue