diff options
| -rw-r--r-- | TODO | 13 | ||||
| -rw-r--r-- | src/irc.c | 5 |
2 files changed, 7 insertions, 11 deletions
@@ -12,6 +12,7 @@ FujiChat features, we're almost at parity! Other stuff: +- Server /ping command is iffy (see do_server_pong() in irc.c). - Bug: *no idea* how this happened. I typed /quit, then reconnected, and got "USER: not enough parameters" from the server. Can't reproduce. @@ -21,15 +22,11 @@ Other stuff: - In the config, under SDX, saying "N" to "Settings OK" and then reloading the config causes screen corruption (reported by TheDoctor, not tried it myself). -- /ping nick works, but /ctcp nick ping doesn't put the timestamp in - the request. - "User has kicked <yourname> from #channel", the name should be replaced by "you". - Gracefully handle nicks/channels whose lengths are stupid long. At least we shouldn't overflow any buffers. - Channel tab completion for the [server] screen. -- Auto-reconnect on error, with backoff timer. Do not - reconnect if user types /quit though. - At least one keyboard macro (for ChanServ auth). More would be nice, if we can afford the RAM. - Error numerics should go to the current screen (?). @@ -70,8 +67,6 @@ Other stuff: Config file and initial config: -- BUG: yn() doesn't get passed the default value, it always defaults - to Y. - The config tool should be rewritten in asm, for size. It doesn't need to be fast, but it needs to *load* fast. - The config UI should be nicer. Dialog/curses style, arrows to move, and @@ -81,11 +76,9 @@ Config file and initial config: - There should be a preset list of servers to choose from, or the user can enter his own. - There should be a file selector for load/save config. -- Allow user to manually read MOTD even if hide_motd is set. More prefs: -- CTCP VERSION response? -- 5 channels/queries for screens 2-7. -- List of non-screen channels to join. +- CTCP VERSION response? Do we need it? +- List of non-screen channels to join (config asks for this, client doesn't use). - Ignore list (maybe). - Connect macro (log in to bot). @@ -22,6 +22,7 @@ int msg_argcount; char irc_away = 0; char bell_type; +char hide_motd; static char msgbuf[MAX_MSG] = { 0 }; static char *msg; /* with source removed */ @@ -406,13 +407,14 @@ static void do_numeric(void) { case RPL_MOTD: /* FIXME: this prevents the user using /MOTD on purpose, too */ - if(!conf->hide_motd) + if(!hide_motd) do_catchall(0); break; /* don't print, but do trigger rejoin */ case RPL_ENDOFMOTD: case ERR_NOMOTD: + hide_motd = 0; cmd_rejoin_chans(); break; @@ -899,6 +901,7 @@ static void keystroke(void) { /* only exits on error (e.g. connection closed, which might be via /QUIT). */ void irc_loop(void) { + hide_motd = conf->hide_motd; while(1) { if(conf->atract_away) { if(!irc_away && (OS.atract & 0x80)) { |
