Skip to content
Newer
Older
100644 60 lines (30 sloc) 3.64 KB
2841a07 File detailing plans for future development
Sound and Fury authored
1 ==quIRC:future plans==
2
3 Scripting language. Under development in branch 'script'.
92ce65a plans: input editing
Sound and Fury authored
4
7a10068 plans: some new ideas, and removal of some completed items
Sound and Fury authored
5 curses. The current hardwired ANSI-escapes code for painting the screen is clumsy. However, it's tailored to my needs, and now that it's neatly packaged away, it should be easier to cope with. So, I may just stick with it.
92ce65a plans: input editing
Sound and Fury authored
6
b5829d6 PASS (--pass) and related stuff, also call termsize() at startup
ec429 authored
7 Need to fix the problem of the conn_rest not getting called for eg worldofspectrum (why is this happening?)
b85b526 plans: new bugs to fix. Also added 'wontfix' file
Sound and Fury authored
8
e2e96fa Proper handling of RPL_ISUPPORT PREFIX
ec429 authored
9 Handle CTCP correctly, on both receive (rx_privmsg()) and send (talk()).
10
b85b526 plans: new bugs to fix. Also added 'wontfix' file
Sound and Fury authored
11 Fix possible issue with CTCP. Funny stuff (including random characters) happened when eg spike1 sent a CTCP PONG to the channel.
12
9db3adc plans: various bugs and papercuts
ec429 authored
13 Fix issue with an infinite loop in irc_rx of bytes==0 from recv(). Don't fully understand what causes it.
14
12afd24 Improved conference mode handling
ec429 authored
15 Make hidden lines (quiet mode, conference mode, etc.) be stored in scrollback. Filter on render; that way changes are retroactive.
020eb42 Fix warnings on Fedora (size_t, %zu and friends)
ec429 authored
16
e2e96fa Proper handling of RPL_ISUPPORT PREFIX
ec429 authored
17 Optionally fold runs of the same type of message. Eg.: =foo=bar=baz= have joined #whatever.
18
19 Make getaddrinfo() calls use getaddrinfo_a(). They currently block everything on connect, which means that /server can cause existing connections to ping off. (However, getaddrinfo_a() is not portable and some 64-bit libc have bugs, so we need a switch to disable its use.)
20
21 Handle \ in tab-completion. It should be expanded to \\.
9db3adc plans: various bugs and papercuts
ec429 authored
22
23 Make /close on server tabs close the associated channel tabs. /disconnect the same, presumably.
24
e2e96fa Proper handling of RPL_ISUPPORT PREFIX
ec429 authored
25 /realsname cmd to display the real server name (which we already store, anyway).
26
020eb42 Fix warnings on Fedora (size_t, %zu and friends)
ec429 authored
27 Store nicks uncrushed in unproc. Makes '/set mnln' retroactive.
12afd24 Improved conference mode handling
ec429 authored
28
e2e96fa Proper handling of RPL_ISUPPORT PREFIX
ec429 authored
29 Option for no hanging indent (wordline() tabx=0).
30
dda963a plans: const-correctness
ec429 authored
31 Const-correctness. There are a lot of functions taking a char * that should take a const char *.
32
3818df6 Doc updates: Conference mode, also some older changes (channel keys)
ec429 authored
33 Remember channel keys for /rejoin. An argument to /rejoin overrides (but doesn't overwrite unless the /rejoin succeeds).
34
7fbe18a Makefile fixes (should fix gitlessing tarballs) & some plans
ec429 authored
35 Modes. It's really about time I got those sorted out.
36
b85b526 plans: new bugs to fix. Also added 'wontfix' file
Sound and Fury authored
37 Proper handling of Unicode in character-based things like cursor-movement, backspace.
38
e2e96fa Proper handling of RPL_ISUPPORT PREFIX
ec429 authored
39 Use unicode-charmap (somewhere in system i18n) to find out character widths, for wordline().
40
8bd79a8 Fix quit on select error (regression introduced by rev fbc2ee1)
ec429 authored
41 Improve the parsing of mirc-colour-codes (to fix things like \003124 which currently gets eaten entirely). The relevant code is in bits.c.
42
3bd29fe plans & propagate doc updates to plaintext readme
ec429 authored
43 /dump command. Pipes a screendump (or better still, unprocessed text) into program of choice.
44
7f9e1a0 plans: note some issues needing fixing
ec429 authored
45 /clear command.
46
47 Short commands (sufficient-prefix matching, like /cle).
48
e70c6b1 Attempt to fix connection issues with eg. worldofspectrum
Sound and Fury authored
49 Logging & Persistent backscroll.
50
03f16c2 plans: runtime buffer resizing
Sound and Fury authored
51 Runtime buffer resizing.
52
7a10068 plans: some new ideas, and removal of some completed items
Sound and Fury authored
53 Interface separation. It should be possible to write decoupled interface modules which may access the buffers at a variety of depths (eg. pre-formatting) and through a variety of methods (such as mmap(2), a serialised textual IPC format, etc.).
92ce65a plans: input editing
Sound and Fury authored
54
b0003d6 Fix append_char() bug (unterminated empty string)
Sound and Fury authored
55 quoting/escaping tables. Instead of duplicative hard-baked logic, we should have a data-driven system with a single point of truth.
56
0ecdb9e plans: may not need /http command
ec429 authored
57 http links. Command /http <n>, opens the nth previous link in web browser. Links considered to be any word starting "http://"; words are delimited by whitespace. The actual command run is set with $BROWSER,--browser=,/set browser; %s is replaced with the URL. If no browser is registered, return an error. The count <n> is local to each buffer; the most recent link is number 0. If <n> not specified, defaults to 0. Also /http <url> opens <url> in web browser, and /http <n><TAB> replaces <n> with the corresponding <url> (so you can check it's the right link, and ^C it if not). May be unnecessary since you can use /dump command instead
4067034 plans: /http command to follow links
Sound and Fury authored
58
4050262 Use a post-commit hook to update version.h (with the Makefile)
Sound and Fury authored
59 Pidfiles and attaching. When you run quirc, if there is an existing quirc process running, your new instance should simply signal that process to open the requested server/channel in a new tab, and the new instance should then close (after emitting a suitable diagnostic).
Something went wrong with that request. Please try again.