Add -q/quiet option to raise default message visibility threshold
Silencing all windows with `M-+' (across multiple catgirl instances) can be cumbersome, so provide an option to hide events, JOIN/PART noise, etc. by default (each window's threshold will persist across load/save cycles, i.e. when using the `-s/save' option). Started out as `-v | visibility = threshold' to set a specific level, the idea of a simpler toggle comes from june, who also squashed other bugs (as usual).master
parent
773d5bbdc0
commit
f8e3414af0
|
@ -1,4 +1,4 @@
|
||||||
.Dd July 2, 2021
|
.Dd July 20, 2021
|
||||||
.Dt CATGIRL 1
|
.Dt CATGIRL 1
|
||||||
.Os
|
.Os
|
||||||
.
|
.
|
||||||
|
@ -8,7 +8,7 @@
|
||||||
.
|
.
|
||||||
.Sh SYNOPSIS
|
.Sh SYNOPSIS
|
||||||
.Nm
|
.Nm
|
||||||
.Op Fl KRelv
|
.Op Fl KRelqv
|
||||||
.Op Fl C Ar copy
|
.Op Fl C Ar copy
|
||||||
.Op Fl H Ar hash
|
.Op Fl H Ar hash
|
||||||
.Op Fl I Ar highlight
|
.Op Fl I Ar highlight
|
||||||
|
@ -323,6 +323,11 @@ Connect to
|
||||||
.Ar port .
|
.Ar port .
|
||||||
The default port is 6697.
|
The default port is 6697.
|
||||||
.
|
.
|
||||||
|
.It Fl q | Cm quiet
|
||||||
|
Raise the default message visibility threshold
|
||||||
|
for new windows,
|
||||||
|
hiding general events.
|
||||||
|
.
|
||||||
.It Fl r Ar real | Cm real No = Ar real
|
.It Fl r Ar real | Cm real No = Ar real
|
||||||
Set realname to
|
Set realname to
|
||||||
.Ar real .
|
.Ar real .
|
||||||
|
|
2
chat.c
2
chat.c
|
@ -257,6 +257,7 @@ int main(int argc, char *argv[]) {
|
||||||
{ .val = 'n', .name = "nick", required_argument },
|
{ .val = 'n', .name = "nick", required_argument },
|
||||||
{ .val = 'o', .name = "print-chain", no_argument },
|
{ .val = 'o', .name = "print-chain", no_argument },
|
||||||
{ .val = 'p', .name = "port", required_argument },
|
{ .val = 'p', .name = "port", required_argument },
|
||||||
|
{ .val = 'q', .name = "quiet", no_argument },
|
||||||
{ .val = 'r', .name = "real", required_argument },
|
{ .val = 'r', .name = "real", required_argument },
|
||||||
{ .val = 's', .name = "save", required_argument },
|
{ .val = 's', .name = "save", required_argument },
|
||||||
{ .val = 't', .name = "trust", required_argument },
|
{ .val = 't', .name = "trust", required_argument },
|
||||||
|
@ -300,6 +301,7 @@ int main(int argc, char *argv[]) {
|
||||||
break; case 'n': nick = optarg;
|
break; case 'n': nick = optarg;
|
||||||
break; case 'o': printCert = true;
|
break; case 'o': printCert = true;
|
||||||
break; case 'p': port = optarg;
|
break; case 'p': port = optarg;
|
||||||
|
break; case 'q': uiThreshold = Warm;
|
||||||
break; case 'r': real = optarg;
|
break; case 'r': real = optarg;
|
||||||
break; case 's': save = optarg;
|
break; case 's': save = optarg;
|
||||||
break; case 't': trust = optarg;
|
break; case 't': trust = optarg;
|
||||||
|
|
1
chat.h
1
chat.h
|
@ -292,6 +292,7 @@ void commandCompleteAdd(void);
|
||||||
|
|
||||||
enum Heat { Ice, Cold, Warm, Hot };
|
enum Heat { Ice, Cold, Warm, Hot };
|
||||||
enum { TimeCap = 64 };
|
enum { TimeCap = 64 };
|
||||||
|
extern enum Heat uiThreshold;
|
||||||
extern struct Time {
|
extern struct Time {
|
||||||
bool enable;
|
bool enable;
|
||||||
const char *format;
|
const char *format;
|
||||||
|
|
4
ui.c
4
ui.c
|
@ -127,6 +127,8 @@ static struct Window *windowRemove(uint num) {
|
||||||
return window;
|
return window;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum Heat uiThreshold = Cold;
|
||||||
|
|
||||||
static uint windowFor(uint id) {
|
static uint windowFor(uint id) {
|
||||||
for (uint num = 0; num < windows.len; ++num) {
|
for (uint num = 0; num < windows.len; ++num) {
|
||||||
if (windows.ptrs[num]->id == id) return num;
|
if (windows.ptrs[num]->id == id) return num;
|
||||||
|
@ -136,7 +138,7 @@ static uint windowFor(uint id) {
|
||||||
window->id = id;
|
window->id = id;
|
||||||
window->mark = true;
|
window->mark = true;
|
||||||
window->time = uiTime.enable;
|
window->time = uiTime.enable;
|
||||||
window->thresh = Cold;
|
window->thresh = uiThreshold;
|
||||||
window->buffer = bufferAlloc();
|
window->buffer = bufferAlloc();
|
||||||
completeAdd(None, idNames[id], idColors[id]);
|
completeAdd(None, idNames[id], idColors[id]);
|
||||||
return windowPush(window);
|
return windowPush(window);
|
||||||
|
|
Loading…
Reference in New Issue