summary refs log tree commit diff
diff options
context:
space:
mode:
authorC. McEnroe2020-02-06 01:05:09 -0500
committerC. McEnroe2020-02-06 01:05:09 -0500
commit9a585188c546ab65633707c3a3e17dbef1d8e3dc (patch)
treec3e0ad76c7f2a9102bdf7ac7ad9d8d627a8a5996
parentdb499dc5f50dba23c2ab218d439cfce51c41bc6b (diff)
Add /join command
-rw-r--r--catgirl.14
-rw-r--r--command.c6
2 files changed, 9 insertions, 1 deletions
diff --git a/catgirl.1 b/catgirl.1
index 91c4ff4..bf6ccc7 100644
--- a/catgirl.1
+++ b/catgirl.1
@@ -1,4 +1,4 @@
-.Dd February  5, 2020
+.Dd February  6, 2020
 .Dt CATGIRL 1
 .Os
 .
@@ -120,6 +120,8 @@ Log in with the server password
 .Sh COMMANDS
 .Ss Chat Commands
 .Bl -tag -width Ds
+.It Ic /join Ar channel
+Join a channel.
 .It Ic /me Op Ar action
 Send an action message.
 .It Ic /notice Ar message
diff --git a/command.c b/command.c
index e4f035f..3215322 100644
--- a/command.c
+++ b/command.c
@@ -17,6 +17,7 @@
 #include <ctype.h>
 #include <stdio.h>
 #include <stdlib.h>
+#include <string.h>
 
 #include "chat.h"
 
@@ -59,6 +60,10 @@ static void commandMe(size_t id, char *params) {
 	commandPrivmsg(id, buf);
 }
 
+static void commandJoin(size_t id, char *params) {
+	ircFormat("JOIN %s\r\n", (params ? params : idNames[id]));
+}
+
 static void commandQuit(size_t id, char *params) {
 	(void)id;
 	set(&self.quit, (params ? params : "Goodbye"));
@@ -78,6 +83,7 @@ static const struct Handler {
 	const char *cmd;
 	Command *fn;
 } Commands[] = {
+	{ "/join", commandJoin },
 	{ "/me", commandMe },
 	{ "/notice", commandNotice },
 	{ "/quit", commandQuit },