xC/xP: turn the action asterisk into a rendition
This commit is contained in:
parent
25ad5ae0ec
commit
d7b0b447b7
1
xC-proto
1
xC-proto
@ -69,6 +69,7 @@ struct EventMessage {
|
|||||||
ERROR,
|
ERROR,
|
||||||
JOIN,
|
JOIN,
|
||||||
PART,
|
PART,
|
||||||
|
ACTION,
|
||||||
} rendition;
|
} rendition;
|
||||||
// Unix timestamp in seconds.
|
// Unix timestamp in seconds.
|
||||||
u64 when;
|
u64 when;
|
||||||
|
12
xC.c
12
xC.c
@ -1536,6 +1536,7 @@ enum buffer_line_rendition
|
|||||||
BUFFER_LINE_ERROR, ///< Error message
|
BUFFER_LINE_ERROR, ///< Error message
|
||||||
BUFFER_LINE_JOIN, ///< Join arrow
|
BUFFER_LINE_JOIN, ///< Join arrow
|
||||||
BUFFER_LINE_PART, ///< Part arrow
|
BUFFER_LINE_PART, ///< Part arrow
|
||||||
|
BUFFER_LINE_ACTION, ///< Highlighted asterisk
|
||||||
};
|
};
|
||||||
|
|
||||||
struct buffer_line
|
struct buffer_line
|
||||||
@ -4478,6 +4479,7 @@ buffer_line_flush (struct buffer_line *line, struct formatter *f, FILE *output,
|
|||||||
case BUFFER_LINE_ERROR: formatter_add (f, "#a=!=#r ", ATTR_ERROR); break;
|
case BUFFER_LINE_ERROR: formatter_add (f, "#a=!=#r ", ATTR_ERROR); break;
|
||||||
case BUFFER_LINE_JOIN: formatter_add (f, "#a-->#r ", ATTR_JOIN); break;
|
case BUFFER_LINE_JOIN: formatter_add (f, "#a-->#r ", ATTR_JOIN); break;
|
||||||
case BUFFER_LINE_PART: formatter_add (f, "#a<--#r ", ATTR_PART); break;
|
case BUFFER_LINE_PART: formatter_add (f, "#a<--#r ", ATTR_PART); break;
|
||||||
|
case BUFFER_LINE_ACTION: formatter_add (f, " #a*#r ", ATTR_ACTION); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (struct formatter_item *iter = line->items; iter->type; iter++)
|
for (struct formatter_item *iter = line->items; iter->type; iter++)
|
||||||
@ -4694,16 +4696,16 @@ log_full (struct app_context *ctx, struct server *s, struct buffer *buffer,
|
|||||||
#define log_outcoming_privmsg(s, buffer, prefixes, who, text) \
|
#define log_outcoming_privmsg(s, buffer, prefixes, who, text) \
|
||||||
log_server ((s), (buffer), 0, 0, "<#s#n> #m", (prefixes), (who), (text))
|
log_server ((s), (buffer), 0, 0, "<#s#n> #m", (prefixes), (who), (text))
|
||||||
#define log_outcoming_action(s, buffer, who, text) \
|
#define log_outcoming_action(s, buffer, who, text) \
|
||||||
log_server ((s), (buffer), 0, 0, " #a*#r #n #m", \
|
log_server ((s), (buffer), 0, BUFFER_LINE_ACTION, "#n #m", (who), (text))
|
||||||
ATTR_ACTION, (who), (text))
|
|
||||||
|
|
||||||
#define log_outcoming_orphan_notice(s, target, text) \
|
#define log_outcoming_orphan_notice(s, target, text) \
|
||||||
log_server_status ((s), (s)->buffer, "Notice -> #n: #m", (target), (text))
|
log_server_status ((s), (s)->buffer, "Notice -> #n: #m", (target), (text))
|
||||||
#define log_outcoming_orphan_privmsg(s, target, text) \
|
#define log_outcoming_orphan_privmsg(s, target, text) \
|
||||||
log_server_status ((s), (s)->buffer, "MSG(#n): #m", (target), (text))
|
log_server ((s), (s)->buffer, 0, BUFFER_LINE_STATUS, \
|
||||||
|
"MSG(#n): #m", (target), (text))
|
||||||
#define log_outcoming_orphan_action(s, target, text) \
|
#define log_outcoming_orphan_action(s, target, text) \
|
||||||
log_server_status ((s), (s)->buffer, "MSG(#n): #a*#r #m", (target), \
|
log_server ((s), (s)->buffer, 0, BUFFER_LINE_ACTION, \
|
||||||
ATTR_ACTION, (text))
|
"MSG(#n): #m", (target), (text))
|
||||||
|
|
||||||
#define log_ctcp_query(s, target, tag) \
|
#define log_ctcp_query(s, target, tag) \
|
||||||
log_server_status ((s), (s)->buffer, "CTCP query to #S: #S", target, tag)
|
log_server_status ((s), (s)->buffer, "CTCP query to #S: #S", target, tag)
|
||||||
|
@ -79,6 +79,9 @@ body {
|
|||||||
.mark.part {
|
.mark.part {
|
||||||
color: red;
|
color: red;
|
||||||
}
|
}
|
||||||
|
.mark.action {
|
||||||
|
color: darkred;
|
||||||
|
}
|
||||||
.content {
|
.content {
|
||||||
padding: .1rem .3rem;
|
padding: .1rem .3rem;
|
||||||
white-space: pre-wrap;
|
white-space: pre-wrap;
|
||||||
|
@ -125,6 +125,7 @@ let Content = {
|
|||||||
case 'Error': content.push(m('span.mark.error', {}, '⚠')); break
|
case 'Error': content.push(m('span.mark.error', {}, '⚠')); break
|
||||||
case 'Join': content.push(m('span.mark.join', {}, '→')); break
|
case 'Join': content.push(m('span.mark.join', {}, '→')); break
|
||||||
case 'Part': content.push(m('span.mark.part', {}, '←')); break
|
case 'Part': content.push(m('span.mark.part', {}, '←')); break
|
||||||
|
case 'Action': content.push(m('span.mark.action', {}, '✶')); break
|
||||||
}
|
}
|
||||||
|
|
||||||
let classes = new Set()
|
let classes = new Set()
|
||||||
|
Loading…
Reference in New Issue
Block a user