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