summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--catgirl.17
-rw-r--r--input.c13
2 files changed, 20 insertions, 0 deletions
diff --git a/catgirl.1 b/catgirl.1
index 5cb9ae8..62f373e 100644
--- a/catgirl.1
+++ b/catgirl.1
@@ -171,6 +171,13 @@ The default
 is
 .Dq Goodbye .
 .
+.It Ic /raw Op Ar command
+Toggle the
+.Ql -raw-
+view
+and send the raw IRC
+.Ar command .
+.
 .It Ic /topic Op Ar topic
 Show the topic of the current channel
 or set it to
diff --git a/input.c b/input.c
index 4814841..2cd0ca6 100644
--- a/input.c
+++ b/input.c
@@ -49,6 +49,18 @@ param(struct Tag tag, const char *command, char **params, const char *name) {
 
 typedef void (*Handler)(struct Tag tag, char *params);
 
+static void inputRaw(struct Tag tag, char *params) {
+	(void)tag;
+	if (!params || !self.raw) {
+		self.raw ^= true;
+		uiFmt(
+			TagRaw, UIWarm, "Raw view is %s",
+			self.raw ? "enabled" : "disabled"
+		);
+	}
+	if (params) ircFmt("%s\r\n", params);
+}
+
 static void inputMe(struct Tag tag, char *params) {
 	privmsg(tag, true, params ? params : "");
 }
@@ -168,6 +180,7 @@ static const struct {
 	{ "/part", inputPart },
 	{ "/query", inputQuery },
 	{ "/quit", inputQuit },
+	{ "/raw", inputRaw },
 	{ "/topic", inputTopic },
 	{ "/url", inputURL },
 	{ "/view", inputView },
18-09-13 23:44:55 -0400'>2018-09-13Preview with nick in input windowJune McEnroe 2018-09-13Never send PRIVMSG to TagStatus or TagVerboseJune McEnroe 2018-09-13Move color selection to format.cJune McEnroe 2018-09-13Fix len for format->split at end of stringJune McEnroe 2018-09-13Avoid uninitialized x in uiReadJune McEnroe 2018-09-13Add IRCDefault to colors enumJune McEnroe 2018-09-13Return a format->split even at the end of the stringJune McEnroe 2018-09-13Fix weird tab-complete after commaJune McEnroe 2018-09-13Rewrite UI againJune McEnroe 2018-09-12Add note about C-oJune McEnroe 2018-09-12Use formatParse split to position input cursorJune McEnroe 2018-09-12Factor out IRC formatting parsingJune McEnroe 2018-09-11Add /help equivalent to /manJune McEnroe 2018-09-11Don't render every PM as a pingJune McEnroe 2018-09-11Add urlOpenMatchJune McEnroe 2018-09-10Depend on man.sh for chroot.tar targetJune McEnroe 2018-09-10Set LESSSECURE=1 in man.shJune McEnroe 2018-09-10Add /man commandJune McEnroe 2018-09-10Install man page in chrootJune McEnroe 2018-09-10Install man pageJune McEnroe 2018-09-10Split keys into subsections and document colorsJune McEnroe 2018-09-10Add "blank" lines to chatte.1June McEnroe 2018-09-10Document key bindings in chatte.1June McEnroe 2018-09-08Document slash commands in chatte.1June McEnroe