1
0
mirror of https://github.com/irssi/irssi.git synced 2024-10-27 05:20:20 -04:00
irssi/TODO

177 lines
8.3 KiB
Plaintext
Raw Normal View History

- BUG: when dcc sending and other side aborts, irssi sometimes eats 100%
of cpu until the send is cancelled? (I couldn't reprodure this..)
- /msg tab completion could work better with multiple servers .. it could
go through all the nicks who sent you message in all servers. the server
tag would go after nick, like nick/tag. would need to fix /msg to work
with that too.
- /last -away could check lastlog of the messages that came after we set
ourself away last time. /last -new could also work better .. by marking
the line where the last /last occured, not by going through the whole
text buffer
- /^command would hide the output of the command. Maybe also some
/password command so that it would ask you to type the password to
entry line and would hide it with asterisks, good if people spy on you :)
- commands to move channels and servers in the config list, to set the
join/connect order of them.
- nick/channel lists at right side of the text version of irssi. Ctrl-N
for example could hide/show them. add mouse support for it.
- make nick/text completion more modular so that for example you could add
a check in fe-dcc.c to complete with file names if the line begins with
/dcc send. also command completion would be nice. automatic command
completion would be nice too (/win clo = /window close).
- statusbar:
- you can't configure it in any way!
- move it to fe-common, make some "statusbar" signal .. maybe
statusbar items could be printed with printformat() and statusbar
would be just another small window? .. or maybe not exactly, but
something like that :)
- when starting to run out of space some items could be made smaller,
activity for example .. make some generic flag for items to use.
- runtime loadable modules aren't working
- "Netjoins: nick1, nick2, nick3 .." - just as the "Netsplit quits" text
except prints when people join back.
- there's something wrong with netsplits. it sometimes forgets to print
some of the nicks.
- some problems with finding curses? in openbsd it should be -lcurses,
not -lncurses..
- line-split.c: check that 64k limit is working and not crashing irssi!
- Some problems with idle notify lists, "cras [IRCNet] [@] [] just stopped
idling" was print to screen with some NULL arguments in text..
- /SB GOTO, /SB HOME and /SB END don't set gui->ypos right.
- When doing a /REHASH, logs are closed?, window logs are entirely removed?
(also, check that window logs work right if window's refnum changes)
- theme problems:
- you can't change theme
- some small help about what each format does
- /rehash could re-read them
- don't keep all themes in memory, just the one in use.
- use different themes in different channels/queries?
- logging messages could be printed with a different theme
- Make /SET HOLD_MODE
- /CAT should pause on every screenful of text, this should be some kind of
printtext_multiline_paused() function which would use some callback to
ask for new text.
- /msg =dcc_chatti,#kanava doesn't work - fix it somehow that also different
chat plugins could use the same /msg command. /CTCP too.
- Better support for copy+pasting text to irssi:
- detection: first line isn't a /command. next line is followed quickly
after it, 0.2 sec or something. after pasting is detected, all unknown
/commands are sent as normal messages.
- fix copypasting from netscape, strip all spaces at the start and end
of the line, join multiple lines to one.
- /NOTIFY -once - notify only once when the user comes to IRC, forget this
after it.
- /NOTIFY -comment xxx - add a comment to notify. print the comment when
user comes to irc.
- "Should we check people in notify list when you're away" option
- Implement /EXEC and /ON commands
- All those options to /WHO and /LIST commands
Sorry for a big update - I still don't have internet connection at home and this is what I've been doing a few weeks now.. :) You really shouldn't upgrade to this version without keeping a backup of the working one, since this will break everything and at least notify list is broken - probably something else too. * On the way to 0.8.0 .. Major rewriting/rearranging code. There's some changes in behaviour because I'm trying to make Irssi a bit more compatible with EPIC. * libPropList isn't needed anymore - I'm using my own configuration library. This is mostly because different proplists worked a bit differently everywhere and several people had problems with it. It's also yet another extra library that you needed to compile Irssi. New configuration library has several advantages: You can add comments to configuration file and they also stay there when it's saved. It's not nearly as vulnerable as proplist. If some error occurs, instead of just not reading anything it will try to continue if possible. Also the error messages are written to irssi's text window instead of stdout. It can be managed more easily than proplist - setting/getting the configuration is a lot more easier. * Coding style changes - I'm not using gint, gchar etc. anymore, they're just extra pain when moving code to non-glib projects and syntax hilighting doesn't work by default with most editors ;) Indentation style was also changed to K&R because of some political reasons ;) And I'm already starting to like it.. :) It forces me to split code to different functions more often and the result is that the code gets more readable. And finally I'm also using nst' all over the place. + /EVAL <commands> - Expand all the special variables from string and run it. Commands can be split with ; character. See docs/SPECIAL_VARS for more info. + Aliases are parsed just like /EVAL - arguments are in $0..$9. + Text formats are also parsed like /EVAL, arguments used to be in $1..$9, now they're in $0..$8 so it messes up existing themes.. + /SET [key [value]] - no more the '=' character. Boolean values also need to be changed with ON/OFF/TOGGLE values (not yes/no). Settings aren't saved to disk until you use /SAVE. + /TOGGLE <key> [ON/OFF] - same as /SET <key> TOGGLE git-svn-id: http://svn.irssi.org/repos/irssi/trunk@163 dbcabf3a-b0e7-0310-adc4-f8d773084564
2000-04-14 07:27:14 -04:00
- autorun.ircnet
*** Bugs
- multiple dcc connections from different irc networks from same nick
doesn't work. Maybe create "server nick" and "refer nick" variables to
DCC_REC?
*** GTK UI
- %| doesn't work with irssi text widget
- some problems when using multiple windows with focus being all the time in
one of the windows and it can't be changed to different window?! Probably
has something to do with click to focus.
- split windows are buggy, destroying them doesn't really work well..
- mirc ctcp togglemenuitem isn't updated right
*** Big things
- session saving thing.. specify what channels/queries/dcc chats to open in
which window (real/tabbed/in same window with some other), what irc net
channels goes to where, what channels/queries to open at startup, etc.
use dialog with gtktree widget to change it.
- some sort of address book? our own irssi ctcp to ask for other irssi users
for their information (of course not without asking (except optionally))..
could be nice also to automatically update it, keep track of all seen
users gathered when joining channels, whois, who, etc. commands.
automatically updating information could be host masks, nicks, ips, seen in
channels, operator in channels, .. user specified checks like last topic or
mode changes or even msgs to you/some channel/with some keyword. great for
spying people ;) maybe even useful sometimes..
.. but what database would be best for this?
- GTK version: icons to toolbars, accelerators to menus
- Windows style MDI windows are possible with GtkFixed .. Some people would
like this.. too much job for me, it would need building the MDI windows
ourself (title bar, borders, resizing, etc.)
- online help, documentation, ...
- plugins:
- scheme, tcl, python scripting? eggdrop/epic compatible scripting?
- IRC bot, eggdrop is too old, needs a replacement ;) (started)
- DCC file server, I'm not too excited about this, maybe someone else
wants to do it..
- Multiplayer games! :) Chess, tic-tac-toe, othello, battleship, tetris,
etc. Existing games should probably be used .. though there doesn't
seem to be any of these (except tetris) for gnome right now..
- audio / video chat :)
*** Needs rethinking ..
* Notify list GUI
- _one_ popup dialog could open which lists all nicks in notifylist, maybe
sorted by arrival time, display the dates, latest joined could be with
different color? etc.
- nick-specific options:
- pop up the dialog
- run some command (like /exec as soon as I get that done :)
* common api for statusbar handling
- it should work just as well in text mode and gui, colors could be done
with the normal % formats. GUI just ignores the colors..
- display number of ops, voices, normals and ircops in statusbar
* API for creating/modifying menus and toolbar, especially from plugins
- at least one configurable menu ("usermenu"), or maybe make the whole
menubar user configurable
*** Little things
- /savewindows - save the current channel/query positions to file and
load them at startup.
- multi-DCC - open multiple sockets to transfer the file
- autoaway when idling
- nickserv support (automatic /msg nickserv identify password)
- itext:
- save/find text
- text selection draws the entire selection every time you move the
mouse...
- if some other window has got much text, switching to it first time
takes some time..?
- editor in setup for ~/.irssi/startup
- gui help
- change signal handling in gui-gnome so that the actual drawing and
functionality are in different signals, so that plugin could change the
whole look and feel of irssi.
- currently irssi sends USERHOST commands every now and then to find out
who are away and who are not.. optionally it could instead just watch if
someone hasn't written anything to channel in n minutes and mark it "away"
to nicklist.
- check new irssi versions with http rather than with irssibot..
- implement requesting files with DCC GET from remote client for dcc file
servers. good for people behind firewalls.
- gnome statubar:
- clock?
- dcc transfer meter (gtk progressbar)
- you could configure which events (whois, notify, etc.) to show in what
windows (all, current, status, msgs)
- dcc send: allow selection of multiple files to send (also for dnd from
gmc!) Allow dropping files to anywhere in irssi.
- /timer, /clones
- {}|~ are same as []\^ (not in all irc networks) - does this really affect
irssi at all..?