about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-02-08 02:33:41 -0500
committerJune McEnroe <june@causal.agency>2020-02-08 02:33:41 -0500
commit2cacf15314be31b33a61007ba6e063ced96c3d41 (patch)
treef1486130d1848f3da683fef0e0692f7bfe3e0795
parentAdd /close (diff)
downloadcatgirl-2cacf15314be31b33a61007ba6e063ced96c3d41.tar.gz
catgirl-2cacf15314be31b33a61007ba6e063ced96c3d41.zip
Add /debug
-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 },