diff options
author | C. McEnroe | 2020-02-06 18:48:49 -0500 |
---|---|---|
committer | C. McEnroe | 2020-02-06 18:48:49 -0500 |
commit | 34514cf2ee6dd020ca812653ce3a23e737d2bf62 (patch) | |
tree | 8f70074561aee846bb64807334ad30fe22488a9d | |
parent | e1f10958c9954592a81b6b52693e3f63304d22d8 (diff) |
Render actions in italic
Also render italic as normal if it's unsupported, as that is what would happen anyway if curses has A_ITALIC but the terminal has no sitm. That format string is kinda bad.
-rw-r--r-- | handle.c | 8 | ||||
-rw-r--r-- | ui.c | 2 |
2 files changed, 6 insertions, 4 deletions
diff --git a/handle.c b/handle.c index 49011f5..ab482fd 100644 --- a/handle.c +++ b/handle.c @@ -294,14 +294,16 @@ static void handlePrivmsg(struct Message *msg) { bool notice = (msg->cmd[0] == 'N'); bool action = isAction(msg); bool mention = !mine && isMention(msg); + const char *italic = (action ? "\35" : ""); + const char *reverse = (mention ? "\26" : ""); uiFormat( id, (!notice && (mention || query) ? Hot : Warm), tagTime(msg), - "%s\3%d%s%s%s\17\t%s", - (mention ? "\26" : ""), - hash(msg->user), + "%s%s\3%d%s%s%s\3%s\t%s", + italic, reverse, hash(msg->user), (action ? "* " : notice ? "-" : "<"), msg->nick, (action ? "" : notice ? "-" : ">"), + reverse, msg->params[1] ); } diff --git a/ui.c b/ui.c index b0e30b9..9f0bb88 100644 --- a/ui.c +++ b/ui.c @@ -39,7 +39,7 @@ #undef lines #ifndef A_ITALIC -#define A_ITALIC A_UNDERLINE +#define A_ITALIC A_NORMAL #endif #define BOTTOM (LINES - 1) |