summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--catgirl.14
-rw-r--r--command.c11
2 files changed, 15 insertions, 0 deletions
diff --git a/catgirl.1 b/catgirl.1
index 9314e7a..3f8131f 100644
--- a/catgirl.1
+++ b/catgirl.1
@@ -148,6 +148,10 @@ Send a raw IRC command.
 .Bl -tag -width Ds
 .It Ic /close Op Ar name | num
 Close the named, numbered or current window.
+.It Ic /debug
+Toggle logging in the
+.Sy <debug>
+window.
 .It Ic /window Ar name
 Switch to window by name.
 .It Ic /window Ar num , Ic / Ns Ar num
diff --git a/command.c b/command.c
index e33c57e..1d1c756 100644
--- a/command.c
+++ b/command.c
@@ -23,6 +23,16 @@
 
 typedef void Command(size_t id, char *params);
 
+static void commandDebug(size_t id, char *params) {
+	(void)id;
+	(void)params;
+	self.debug ^= true;
+	uiFormat(
+		Debug, Warm, NULL,
+		"\3%dDebug is %s", Gray, (self.debug ? "on" : "off")
+	);
+}
+
 static void commandQuote(size_t id, char *params) {
 	(void)id;
 	if (params) ircFormat("%s\r\n", params);
@@ -116,6 +126,7 @@ static const struct Handler {
 	Command *fn;
 } Commands[] = {
 	{ "/close", commandClose },
+	{ "/debug", commandDebug },
 	{ "/join", commandJoin },
 	{ "/me", commandMe },
 	{ "/nick", commandNick },
;follow=1'>Stop polling stdin after EOFJune McEnroe 2022-06-02Set TABSIZE=4June McEnroe Absolutely indiscriminately. 2022-06-02Do basic match highlightingJune McEnroe 2022-06-02Clean up parsing a littleJune McEnroe 2022-06-02Don't duplicate path stringJune McEnroe 2022-06-02Use stderr instead of /dev/tty, realloc buffer if lines too longJune McEnroe For some reason I haven't been able to figure out, trying to poll /dev/tty returns POLLNVAL (and this was using 100% CPU looping), but using stderr instead works fine. 2022-06-02Add initial working version of qfJune McEnroe 2022-05-29Set prompt for okshJune McEnroe