- /UPGRADE: - support DCCs - topic time/nick isn't transferred - rewrite to work by fork()ing a new process and transfer file handles with unix sockets. this would allow the scrollback buffers to be transferred with them as well. - current window layout needs to transferred - reconnections aren't transferred(?) - Logging: - /LOG OPEN doesn't autocreate directories.. - /LOG OPEN -targets *!*cras@*.fi - /SET autolog -> /LOG OPEN -targets * (internally, at least) - /LOG OPEN shouldn't really open the file until first line is written in it - /WINDOW LOG OFF doesn't work - autoclosing logs doesn't work too well. Problems are: - after certain inactivity private message logs should be closed - but DCC chats shouldn't be closed until the chat itself is closed - which we can't know really currently, since they don't need to be in queries - channels should be closed when they're left - /WINDOW CLOSE shouldn't close it immediately, since we'll still receive at least the PART message - so, log items should know more about what they are exactly, and when they should be closed. private messages could have the same timeout as now, time_t closetime field updated every time msg is received. channels could do the same when receiving "window item destroy" signal, except with a small timeout. DCC chats are more problematic... - support for mirc/ansi color logging - people want to show ignored stuff in logs.. how? - private messages could show mirc-style "Session Ident: nick (host)" which would update when nick's host changes. Then you wouldn't need to print the host before each msg. - support for logging channel messages from specific people - Awaylogs: - either fully support logging only in servers you're away, or change the awaylog to open immediately after /AWAY command, not based on any away replies from server. Maybe the later would be better, since you would want to set yourself away when connections to all servers were disconnected at the time.. Maybe /AWAY should update status in reconnection records as well?.. - /SET awaylog_auto_delete, after setting yourself unaway - support for using strftime() formats (and $tag etc). only problem with this is that all the different awaylogs would need to be tracked and /CATed when setting yourself unaway - Window item placing: - !channel vs. !12345channel. it's layout saved with full name, but joined with either one - when dcc chat is accepted and query exists from the same nick, replace the query window with the dcc chat window. - closed DCC chats should add temporary window bind to the dcc chat so future chats for same nick would use the same window - DCC - /DCC SEND wildcard support - /DCC GET -4 / -6 with autodetection - When we receive a DCC SEND request, irssi could warn if the file already exists - show estimated time left and kB/s in /DCC list. - implement requesting files with DCC GET from remote client for dcc file servers. good for people behind firewalls. Does this feature exist in other clients, or should I create DCC REQUEST? Same for DCC CHAT.. Maybe it could be just that the port was specified as 0, so the other side would know that it needs to be the one to do listening. - /SET dcc_autoresume ON, and sending the same file again while it's already being downloaded doesn't work too well.. Even autorename doesn't work. - With fast DCC SENDs (90kB/s, FreeBSD) typing get laggy (really?) - /DCC CLOSE #, /DCC would print the IDs - /SET dcc_use_proxy to use IRC proxy for DCC connects as well - support for special vars in /SET dcc_download_path, so $N could be used - Generic chat commands: - /MSG /CTCP /ACTION =dcc_chat,#channel - /ACTION -ircnet with good tab support like in /MSG - -nick -channel parameters to /ACTION - /MSG a,b,#c,#d - it should print the message to #c and #d channel windows and show only "a,b" as target when printing it to msg window.. Or if autoquery is set, it should print them to those windows. Hmm. maybe some multipeople query support? :) /query nick1,nick2 and sending text there would send it to both. Seems to work already but receiving messages from either nick1 or nick2 don't go to that window.. - /^MSG nick creates query with /SET qutocreate_own_query YES - /WHOIS -servertag - /BAN: setting of what netmask to use for banning with IPv6 addresses - Netsplits - BUG: said "+1 more", while the /SETs to control that were set properly, with one guy it only said that +1 more.. - BUG: netsplit quit isn't printed if quit -> join -> quit -> join happens fast (really?) - maybe the "+x more" should be configured in theme file instead in future with the embedded scripting.. At least I'd want to print all the splitted nicks in log files. - per-window listing of splitted servers, it looks very stupid when you see 4 lines of servers splitting in each window but only a few nicks after them. - per-window listing of splitted nicks, so the split messages isn't shown multiple times for each channel with possibly same nicks - /NETSPLIT |<#channel>| - SERVERMODE +ov nick nick is shown instead of just Netjoin @nick because code is stupid. fixed in irssi-rewrite.. - show in query windows - Crashes: - irssi crashes at quit if perl is loaded as module - #1 0x68cc7 in module_file_deinit_gmodule (file=0x110e20) at modules-load.c:356 - i've managed to reproduce the bug, if i make three split windows (/window show 3..5), then set the windows to not be sticky and go to one of the windows, then alt+number to another window then go back the other window the display prints two windows in the same window - irssi -cserver -nnick -> crashes - lib-popt is buggy! - bug as well but not crash: --config=foo --home=bar -c server - /SB CLEAR still crashing sometimes? - make sure irssi works with 0x0 sized terminal. 1x1 sized terminal doesn't work if we use recreate_windows() - /UNLOAD dcc, etc. static modules - Scripts: - print whois in active window - some script to handle ctcp floods, like doing /IGNORE * CTCPS when it happens. - move into scripts: - /SET timestamp_timeout - /MSG completion list should be modifyable from scripts - script to remove nick from list after /IGNORE nick - nick completion list should be modifyable afterwards: - /SET completion_nicks_lowercase (remove from irssi) - /SET completion_nicks_capitalize - /SET completion_nicks_strip (keep only alphanumeric chars) - irchat-like JOIN/PART/QUIT combiner (QUIT: nick1, nick2, nick3), would require the line replacing work properly which it doesn't.. - Irssi proxy: - doesn't propagate your own nickchanges to other clients - better support for CTCP replies / DCC - Misc IRC related things: - better support for !channels (don't log the ID, show nicer in whois, layout save doesn't work, /win item move !channel) - support for mode +q in dancer - also same as +b %xxx modes.. - properly support RFC-1459 charset (ircnet specific option), eg. /QUERY p[ and msgs from p{ aren't placed there. - /BAN -ip, -time [