Compare commits
3 Commits
ca33adeeee
...
4ed6693f57
Author | SHA1 | Date | |
---|---|---|---|
4ed6693f57 | |||
bea8d13227 | |||
ecebeace0e |
@ -148,7 +148,7 @@ include_directories (${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR})
|
|||||||
|
|
||||||
# Generate IRC replies--we need a custom target because of the multiple outputs
|
# Generate IRC replies--we need a custom target because of the multiple outputs
|
||||||
add_custom_command (OUTPUT xD-replies.c xD.msg
|
add_custom_command (OUTPUT xD-replies.c xD.msg
|
||||||
COMMAND ${PROJECT_SOURCE_DIR}/xD-gen-replies.sh
|
COMMAND env LC_ALL=C awk -f ${PROJECT_SOURCE_DIR}/xD-gen-replies.awk
|
||||||
> xD-replies.c < ${PROJECT_SOURCE_DIR}/xD-replies
|
> xD-replies.c < ${PROJECT_SOURCE_DIR}/xD-replies
|
||||||
DEPENDS ${PROJECT_SOURCE_DIR}/xD-replies
|
DEPENDS ${PROJECT_SOURCE_DIR}/xD-replies
|
||||||
COMMENT "Generating files from the list of server numerics")
|
COMMENT "Generating files from the list of server numerics")
|
||||||
|
4
xC.adoc
4
xC.adoc
@ -62,10 +62,10 @@ their respective function names:
|
|||||||
*M-a*: *goto-activity*::
|
*M-a*: *goto-activity*::
|
||||||
Go to the first following buffer with unseen activity.
|
Go to the first following buffer with unseen activity.
|
||||||
*PageUp*: *display-backlog*::
|
*PageUp*: *display-backlog*::
|
||||||
Show the in-memory backlog for this buffer in the backlog helper,
|
Show the in-memory backlog for this buffer using *general.pager*,
|
||||||
which is almost certainly the *less*(1) program.
|
which is almost certainly the *less*(1) program.
|
||||||
*M-h*: *display-full-log*::
|
*M-h*: *display-full-log*::
|
||||||
Show the log file for this buffer in the backlog helper.
|
Show the log file for this buffer using *general.pager*.
|
||||||
*M-H*: *toggle-unimportant*::
|
*M-H*: *toggle-unimportant*::
|
||||||
Hide all join, part and quit messages, as well as all channel mode changes
|
Hide all join, part and quit messages, as well as all channel mode changes
|
||||||
that only relate to user channel modes. Intended to reduce noise in
|
that only relate to user channel modes. Intended to reduce noise in
|
||||||
|
23
xC.c
23
xC.c
@ -2879,7 +2879,7 @@ attr_printer_tputs (struct attr_printer *self, const char *attr)
|
|||||||
tputs (attr, 1, printer);
|
tputs (attr, 1, printer);
|
||||||
else
|
else
|
||||||
// We shouldn't really do this but we need it to output formatting
|
// We shouldn't really do this but we need it to output formatting
|
||||||
// to the backlog helper--it should be SGR-only
|
// to the pager--it should be SGR-only
|
||||||
attr_printer_filtered_puts (self->stream, attr);
|
attr_printer_filtered_puts (self->stream, attr);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -11361,7 +11361,7 @@ handle_command_set_modify
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static bool
|
||||||
handle_command_set_assign_item (struct app_context *ctx,
|
handle_command_set_assign_item (struct app_context *ctx,
|
||||||
char *key, struct config_item *new_, bool add, bool remove)
|
char *key, struct config_item *new_, bool add, bool remove)
|
||||||
{
|
{
|
||||||
@ -11384,14 +11384,14 @@ handle_command_set_assign_item (struct app_context *ctx,
|
|||||||
log_global_error (ctx,
|
log_global_error (ctx,
|
||||||
"Failed to set option \"#s\": #s", key, e->message);
|
"Failed to set option \"#s\": #s", key, e->message);
|
||||||
error_free (e);
|
error_free (e);
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
struct strv tmp = strv_make ();
|
struct strv tmp = strv_make ();
|
||||||
dump_matching_options (ctx->config.root, key, &tmp);
|
dump_matching_options (ctx->config.root, key, &tmp);
|
||||||
log_global_status (ctx, "Option changed: #s", tmp.vector[0]);
|
log_global_status (ctx, "Option changed: #s", tmp.vector[0]);
|
||||||
strv_free (&tmp);
|
strv_free (&tmp);
|
||||||
}
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
@ -11427,15 +11427,18 @@ handle_command_set_assign
|
|||||||
config_item_destroy (new_);
|
config_item_destroy (new_);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool changed = false;
|
||||||
for (size_t i = 0; i < all->len; i++)
|
for (size_t i = 0; i < all->len; i++)
|
||||||
{
|
{
|
||||||
char *key = cstr_cut_until (all->vector[i], " ");
|
char *key = cstr_cut_until (all->vector[i], " ");
|
||||||
handle_command_set_assign_item (ctx, key, new_, add, remove);
|
if (handle_command_set_assign_item (ctx, key, new_, add, remove))
|
||||||
|
changed = true;
|
||||||
free (key);
|
free (key);
|
||||||
}
|
}
|
||||||
config_item_destroy (new_);
|
config_item_destroy (new_);
|
||||||
|
|
||||||
if (get_config_boolean (ctx->config.root, "general.autosave"))
|
if (changed && get_config_boolean (ctx->config.root, "general.autosave"))
|
||||||
save_configuration (ctx);
|
save_configuration (ctx);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
@ -13166,7 +13169,7 @@ toggle_bracketed_paste (bool enable)
|
|||||||
static void
|
static void
|
||||||
suspend_terminal (struct app_context *ctx)
|
suspend_terminal (struct app_context *ctx)
|
||||||
{
|
{
|
||||||
// Terminal can get suspended by both backlog helper and SIGTSTP handling
|
// Terminal can get suspended by both the pager and SIGTSTP handling
|
||||||
if (ctx->terminal_suspended++ > 0)
|
if (ctx->terminal_suspended++ > 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -14171,8 +14174,8 @@ setup_signal_handlers (void)
|
|||||||
|
|
||||||
signal (SIGPIPE, SIG_IGN);
|
signal (SIGPIPE, SIG_IGN);
|
||||||
|
|
||||||
// So that we can write to the terminal while we're running a backlog
|
// So that we can write to the terminal while we're running a pager.
|
||||||
// helper. This is also inherited by the child so that it doesn't stop
|
// This is also inherited by the child so that it doesn't stop
|
||||||
// when it calls tcsetpgrp().
|
// when it calls tcsetpgrp().
|
||||||
signal (SIGTTOU, SIG_IGN);
|
signal (SIGTTOU, SIG_IGN);
|
||||||
|
|
||||||
|
29
xD-gen-replies.awk
Executable file
29
xD-gen-replies.awk
Executable file
@ -0,0 +1,29 @@
|
|||||||
|
#!/usr/bin/awk -f
|
||||||
|
BEGIN {
|
||||||
|
# The message catalog is a by-product
|
||||||
|
msg = "xD.msg"
|
||||||
|
print "$quote \"" > msg;
|
||||||
|
print "$set 1" > msg;
|
||||||
|
}
|
||||||
|
|
||||||
|
/^[0-9]+ *IRC_(ERR|RPL)_[A-Z]+ *".*"$/ {
|
||||||
|
match($0, /".*"/);
|
||||||
|
ids[$1] = $2;
|
||||||
|
texts[$2] = substr($0, RSTART, RLENGTH);
|
||||||
|
print $1 " " texts[$2] > msg
|
||||||
|
}
|
||||||
|
|
||||||
|
END {
|
||||||
|
printf("enum\n{")
|
||||||
|
for (i in ids) {
|
||||||
|
if (seen_first)
|
||||||
|
printf(",")
|
||||||
|
seen_first = 1
|
||||||
|
printf("\n\t%s = %s", ids[i], i)
|
||||||
|
}
|
||||||
|
print "\n};\n"
|
||||||
|
print "static const char *g_default_replies[] =\n{"
|
||||||
|
for (i in ids)
|
||||||
|
print "\t[" ids[i] "] = " texts[ids[i]] ","
|
||||||
|
print "};"
|
||||||
|
}
|
@ -1,28 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
LC_ALL=C exec awk '
|
|
||||||
BEGIN {
|
|
||||||
# The message catalog is a by-product
|
|
||||||
msg = "xD.msg"
|
|
||||||
print "$quote \"" > msg;
|
|
||||||
print "$set 1" > msg;
|
|
||||||
}
|
|
||||||
/^[0-9]+ *IRC_(ERR|RPL)_[A-Z]+ *".*"$/ {
|
|
||||||
match($0, /".*"/);
|
|
||||||
ids[$1] = $2;
|
|
||||||
texts[$2] = substr($0, RSTART, RLENGTH);
|
|
||||||
print $1 " " texts[$2] > msg
|
|
||||||
}
|
|
||||||
END {
|
|
||||||
printf("enum\n{")
|
|
||||||
for (i in ids) {
|
|
||||||
if (seen_first)
|
|
||||||
printf(",")
|
|
||||||
seen_first = 1
|
|
||||||
printf("\n\t%s = %s", ids[i], i)
|
|
||||||
}
|
|
||||||
print "\n};\n"
|
|
||||||
print "static const char *g_default_replies[] =\n{"
|
|
||||||
for (i in ids)
|
|
||||||
print "\t[" ids[i] "] = " texts[ids[i]] ","
|
|
||||||
print "};"
|
|
||||||
}'
|
|
Loading…
x
Reference in New Issue
Block a user