From d5f30713413dd3c3cb6181e5d3fff3bb6347628a Mon Sep 17 00:00:00 2001 From: June McEnroe Date: Mon, 4 Apr 2022 18:54:55 -0400 Subject: edit: Be more helpful --- extra/edit/edit.c | 40 ++++++++++++++++++++++++++++++---------- 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/extra/edit/edit.c b/extra/edit/edit.c index ffbf7a9..98c8acf 100644 --- a/extra/edit/edit.c +++ b/extra/edit/edit.c @@ -315,14 +315,16 @@ static void handlePrivmsg(struct Message *msg) { if (!strcmp(cmd, "get")) { if (!name) { - format("NOTICE %s :", msg->nick); - bool some = false; + format("NOTICE %s :set: ", msg->nick); for (size_t i = 0; i < own.len; ++i) { if (!own.opts[i].set) continue; - format("%s\2%s\2", (i ? " " : ""), own.opts[i].name); - some = true; + format("%s\2%s\2", (i ? ", " : ""), own.opts[i].name); } - format("%s\r\n", (some ? "" : "(none)")); + format("\r\nNOTICE %s :inherited: ", msg->nick); + for (size_t i = 0; i < inherit.len; ++i) { + format("%s\2%s\2", (i ? ", " : ""), inherit.opts[i].name); + } + format("\r\n"); return; } if (!exists(name)) { @@ -342,10 +344,23 @@ static void handlePrivmsg(struct Message *msg) { } else if (!strcmp(cmd, "set")) { if (!name) { - format( - "NOTICE %s :\2set\2 \35option\35 [\35value\35]\r\n", - msg->nick - ); + format("NOTICE %s :options: ", msg->nick); + if (allowUnsafe) { + for (size_t i = 0; i < ARRAY_LEN(Boolean); ++i) { + format("%s\2%s\2", (i ? ", " : ""), Boolean[i]); + } + for (size_t i = 0; i < ARRAY_LEN(Integer); ++i) { + format(", \2%s\2", Integer[i]); + } + for (size_t i = 0; i < ARRAY_LEN(String); ++i) { + format(", \2%s\2", String[i]); + } + } else { + for (size_t i = 0; i < ARRAY_LEN(Safe); ++i) { + format("%s\2%s\2", (i ? ", " : ""), Safe[i]); + } + } + format("\r\n"); return; } @@ -360,7 +375,12 @@ static void handlePrivmsg(struct Message *msg) { } else if (!strcmp(cmd, "unset")) { if (!name) { - format("NOTICE %s :\2unset\2 \35option\35\r\n", msg->nick); + format("NOTICE %s :set: ", msg->nick); + for (size_t i = 0; i < own.len; ++i) { + if (!own.opts[i].set) continue; + format("%s\2%s\2", (i ? ", " : ""), own.opts[i].name); + } + format("\r\n"); return; } if (!exists(name)) { -- cgit 1.4.1 sage (Expand)Author 2021-01-13Add gg mapping to viJune McEnroe 2021-01-13Match \ before newline in string as EscapeJune McEnroe 2021-01-13Remove -t flag from ctags commandsJune McEnroe 2021-01-13Match strftime format specifiersJune McEnroe 2021-01-13Switch git.causal.agency to hilex and htagmlJune McEnroe 2021-01-13Try to return make substitutions as single tokensJune McEnroe 2021-01-13Shorten hilex class namesJune McEnroe 2021-01-13Move text "lexer" to hilex.cJune McEnroe 2021-01-13Try to return strings as single tokensJune McEnroe 2021-01-13Match [] as Operator in C lexerJune McEnroe 2021-01-13Fix C lexer to require a digit in a float literalJune McEnroe 2021-01-13Support long double in c.shJune McEnroe 2021-01-13Update Terminal.app coloursJune McEnroe 2021-01-13Increase dark white brightness slightlyJune McEnroe 2021-01-13Add hilex example to htagml manualJune McEnroe 2021-01-12Style causal.agency like bin HTMLJune McEnroe 2021-01-12Avoid matching tag text inside HTML elementsJune McEnroe 2021-01-12Use hilex for up -hJune McEnroe 2021-01-12Use hilex for bin HTMLJune McEnroe 2021-01-12Don't output a pre in hilex by defaultJune McEnroe 2021-01-12Move hilex out of hilex directoryJune McEnroe 2021-01-12Consolidate hilex formatters into hilex.cJune McEnroe 2021-01-12Remove hacky tagging from hilexJune McEnroe 2021-01-12Add htagml -iJune McEnroe 2021-01-12Render tag index in HTMLJune McEnroe 2021-01-12Add htagml -xJune McEnroe 2021-01-12Prevent matching the same tag twiceJune McEnroe 2021-01-12Process htagml file line by lineJune McEnroe 2021-01-12Split fields by tab onlyJune McEnroe 2021-01-12List both Makefile and html.sh under README.7June McEnroe 2021-01-12Add htagml exampleJune McEnroe 2021-01-12Use mandoc and htagml for bin htmlJune McEnroe 2021-01-12Add htagmlJune McEnroe 2021-01-12Replace causal.agency with a simple mdoc pageJune McEnroe 2021-01-11Publish "Using vi"June McEnroe 2021-01-11Enable diff.colorMovedJune McEnroe 2021-01-10Set less search case-insensitiveJune McEnroe 2021-01-10Set EXINITJune McEnroe 2021-01-09Add c -t flag to print expression typeJune McEnroe 2021-01-05Update taglineJune McEnroe