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 },