Split /raw and /quote

/quote is common in other IRC clients.
weechat-hashes
Curtis McEnroe 2019-07-02 18:57:57 -04:00
parent 906440968e
commit fdbc6f2fda
No known key found for this signature in database
GPG Key ID: CEA2F97ADCFCD77C
2 changed files with 13 additions and 9 deletions

View File

@ -141,7 +141,7 @@ Open a private message view.
.It Ic /quit Op Ar message
Quit IRC.
.
.It Ic /raw Ar command
.It Ic /quote Ar command
Send a raw IRC command.
.
.It Ic /topic Op Ar topic

20
input.c
View File

@ -83,6 +83,11 @@ static void inputQuit(struct Tag tag, char *params) {
ircQuit(params ? params : "Goodbye");
}
static void inputQuote(struct Tag tag, char *params) {
(void)tag;
if (params) ircFmt("%s\r\n", params);
}
static void inputTopic(struct Tag tag, char *params) {
if (params) {
ircFmt("TOPIC %s :%s\r\n", tag.name, params);
@ -143,14 +148,12 @@ static void inputOpen(struct Tag tag, char *params) {
static void inputRaw(struct Tag tag, char *params) {
(void)tag;
if (!self.raw || !params) {
self.raw ^= true;
uiFmt(
TagRaw, UIWarm, "%s window is %s",
TagRaw.name, (self.raw ? "enabled" : "disabled")
);
}
if (params) ircFmt("%s\r\n", params);
(void)params;
self.raw ^= true;
uiFmt(
TagRaw, UIWarm, "\3%d%s\3 %s raw mode!",
colorGen(self.user), self.nick, (self.raw ? "engages" : "disengages")
);
}
static void inputURL(struct Tag tag, char *params) {
@ -195,6 +198,7 @@ static const struct {
{ "/part", inputPart },
{ "/query", inputQuery },
{ "/quit", inputQuit },
{ "/quote", inputQuote },
{ "/raw", inputRaw },
{ "/topic", inputTopic },
{ "/url", inputURL },