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;
|
||||||
|
18
xC.c
18
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
|
||||||
@ -4475,9 +4476,10 @@ buffer_line_flush (struct buffer_line *line, struct formatter *f, FILE *output,
|
|||||||
case BUFFER_LINE_BARE: break;
|
case BUFFER_LINE_BARE: break;
|
||||||
case BUFFER_LINE_INDENT: formatter_add (f, " "); break;
|
case BUFFER_LINE_INDENT: formatter_add (f, " "); break;
|
||||||
case BUFFER_LINE_STATUS: formatter_add (f, " - "); break;
|
case BUFFER_LINE_STATUS: formatter_add (f, " - "); break;
|
||||||
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;
|
||||||
|
@ -120,11 +120,12 @@ let Content = {
|
|||||||
let line = vnode.children[0]
|
let line = vnode.children[0]
|
||||||
let content = []
|
let content = []
|
||||||
switch (line.rendition) {
|
switch (line.rendition) {
|
||||||
case 'Indent': content.push(m('span.mark', {}, '')); break
|
case 'Indent': content.push(m('span.mark', {}, '')); break
|
||||||
case 'Status': content.push(m('span.mark', {}, '–')); break
|
case 'Status': content.push(m('span.mark', {}, '–')); break
|
||||||
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