summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2018-08-03 19:34:19 -0400
committerJune McEnroe <june@causal.agency>2018-08-03 19:34:19 -0400
commit0e99c4891229b7e1c84d476ac9c6848a8098fa84 (patch)
treef3d77e3970ba2edd40bea772149ae34a82524c81
parentContinue on EINTR from poll (diff)
downloadcatgirl-0e99c4891229b7e1c84d476ac9c6848a8098fa84.tar.gz
catgirl-0e99c4891229b7e1c84d476ac9c6848a8098fa84.zip
Handle KICK and NICK
-rw-r--r--chat.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/chat.c b/chat.c
index d616b91..0482c03 100644
--- a/chat.c
+++ b/chat.c
@@ -271,6 +271,17 @@ static void handleQuit(char *prefix, char *params) {
 		color(user), nick, quot, mesg, quot
 	);
 }
+static void handleKick(char *prefix, char *params) {
+	char *nick = prift(&prefix);
+	char *user = prift(&prefix);
+	char *chan = shift(&params);
+	char *kick = shift(&params);
+	char *mesg = shift(&params);
+	uiFmt(
+		"\3%d%s\3 kicked \3%d%s\3 out of \3%d%s\3, \"%s\"",
+		color(user), nick, color(kick), kick, color(chan), chan, mesg
+	);
+}
 
 static void handle332(char *prefix, char *params) {
 	(void)prefix;
@@ -329,6 +340,16 @@ static void handle315(char *prefix, char *params) {
 	);
 }
 
+static void handleNick(char *prefix, char *params) {
+	char *prev = prift(&prefix);
+	char *user = prift(&prefix);
+	char *next = shift(&params);
+	uiFmt(
+		"\3%d%s\3 is now known as \3%d%s\3",
+		color(user), prev, color(user), next
+	);
+}
+
 static void handlePrivmsg(char *prefix, char *params) {
 	char *nick = prift(&prefix);
 	char *user = prift(&prefix);
@@ -359,6 +380,8 @@ static const struct {
 	{ "352", handle352 },
 	{ "366", handle366 },
 	{ "JOIN", handleJoin },
+	{ "KICK", handleKick },
+	{ "NICK", handleNick },
 	{ "NOTICE", handleNotice },
 	{ "PART", handlePart },
 	{ "PING", handlePing },
mp;follow=1'>Do not sort results in scoop by defaultJune McEnroe The -s flag now enables sorting (-g and -l also imply it), while the -S flag now launches the sqlite3 shell. Avoiding sorting by default is much faster and less memory-intensive as it doesn't require loading the entire result set into memory at once. 2020-05-21Expand and clarify documentationJune McEnroe 2020-05-21Execute PAGER with the SHELLJune McEnroe Same as how git executes it. Allows flags to be set in PAGER. 2020-05-21Automatically perform database migrations in litterboxJune McEnroe To simplify upgrades, restarting litterbox should be sufficient. The database can still be explicitly migrated with -m. 2020-05-20Don't install rc scripts on other platformsJune McEnroe Oops, meant to do this in the last commit. 2020-05-20Rewrite build and install like pounce 1.3June McEnroe man pages are no longer compressed! 2020-05-20Update email addressesJune McEnroe 2020-04-23Call updateConsumer from handleError 1.2p1June McEnroe This should prevent continually crashing on the same ERROR in the pounce buffer. 2020-04-20Use . as ${LDLIBS.$@} separatorJune McEnroe 2020-04-05Error on invalid ISUPPORT values 1.2June McEnroe 2020-04-05Only set RCS on FreeBSDJune McEnroe 2020-04-05Log bans and unbansJune McEnroe 2020-04-05Parse mode types from ISUPPORTJune McEnroe 2020-04-05Add unscoop matchers for ban/unban eventsJune McEnroe The IRC and Textual matchers miss bans mixed with other mode changes, but those are rare. 2020-04-05Check unscoop regexps with make testJune McEnroe 2020-04-05Add unscoop -n flag for checking regexpsJune McEnroe 2020-04-05Add Ban and Unban event typesJune McEnroe 2020-04-02Update styleJune McEnroe Replacing declarations followed by while loops with for loops and generating the short option string from the long options. 2020-03-31Update unscoop catgirl matchersJune McEnroe I'm not concerned about keeping the old matchers since I'm almost entirely certain I was the only one who ever used the old version of catgirl, and I already imported those logs. 2020-03-31Fix writing verbose to stderrJune McEnroe 2020-03-02Include <>/-/* around nicks in scoop coloring 1.1June McEnroe 2020-03-02Replace .mk files with configure scriptJune McEnroe 2020-02-28Implement the causal.agency/consumer capabilityJune McEnroe 2020-02-22Include <>/-/* around nicks in coloringJune McEnroe 2020-02-22Use (almost) the full range of IRC colors for nicksJune McEnroe