Age | Commit message (Collapse) | Author |
|
Evidence this should be factored somehow else so the extra check is
unnecessary.
|
|
|
|
Oops.
|
|
The reason logFmt takes a timestamp as a parameter is to support IRCv3
server-time in the future to accurately log the znc buffer. Hopefully.
|
|
Bring back the beeps! Allow pings from notices. Also factor out
dequoting of part/quit messages.
|
|
|
|
|
|
|
|
Actually uses the rest of the hash state this way.
|
|
|
|
|
|
|
|
|
|
|
|
Closing a channel before parting it is a bit weird, but if I send a PART
on /close, it would get reopened again to show the part message.
|
|
So that /view can't just invent tags.
|
|
This is going to be incompatible with xdg-open since it takes only one
URL at a time. Write a wrapper script.
|
|
|
|
Most significantly so that the sequences don't end up on screen during a
/url.
|
|
|
|
|
|
Tags are now permanently assigned (and I'm betting on never needing more
than 256 of them) and the UI maps tags to a linked list of views for
easy reordering and removal. Currently, views can only be added. Views
don't have a topic window until they need one. All UI code wants to be
functional reactive.
Beeping is temporarily removed until message priorities (status,
message, ping) can be added to the UI. At that point spawning
notify-send should also be possible. Priorities will also help with
unnecessary markers, which will not appear for status messages.
The tab system is now used to send QUIT and NICK messages to all the
relevant tags. Verbose output now goes to its own tag, and sending to
it sends raw IRC.
IRC colors are now listed in chat.h and handler functions for numeric
replies have real names. The color algorithm now uses a real hash
function for hopefully better results. QUIT, PART and KICK messages are
scanned for URLs.
|
|
Look at the cute little state machine!
|
|
Other users with the same username are not self.
The fun effect of this was that I could tab-complete "june_" but not
"june".
|
|
Oops. Had commented it out so I could attach a debugger without exiting
on EINTR.
|
|
Since tabNext starts on match->next, if match gets removed, it should be
set to match->prev so that tabNext will start in the same spot.
|
|
There's a lot of UI missing for it, but it technically works.
|
|
Child processes weren't being reaped before, either. I wanted to have a
function called readEmAndReap but the reaping should actually happen in
a signal handler.
|
|
va_end must be called before the function returns, but errx is noreturn.
|
|
In preparation for multi-channel?
|
|
|
|
Also switch self-brackets to () since [] can appear in nicks.
|
|
|
|
|
|
WEBIRC is now -W.
|
|
|
|
I am disappointed in the lack of compiler attributes for type-checking
variadic functions.
|
|
|
|
Might also add /copy, like /open.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
All of this needs refactoring, probably separating the line editing out
from the actual input handling.
|
|
My own settings have "white" slightly darker than the default color, so
this helps to distinguish my own messages.
|
|
|
|
Otherwise the marker inherits whatever was left on.
|
|
This definitely needs refactoring.
|