Commit Graph

68 Commits (cf83e95114eafc1fc357c68cfedc661482992ac1)

Author SHA1 Message Date
C. McEnroe ba524ed804 Replace a lot of snprintf with a catf implementation 2020-02-16 19:12:19 -05:00
C. McEnroe 3885dd5231 Add 379 to WHOIS responses 2020-02-16 18:42:38 -05:00
C. McEnroe edd8855418 Track EXCEPTS and INVEX modes 2020-02-16 18:31:50 -05:00
C. McEnroe f84ab67311 Apply colorMentions to actions
The first-two-words branch works well for "/me verbs nick".
2020-02-16 05:22:28 -05:00
C. McEnroe 700b5d5870 Replace small integers in size_t with uint 2020-02-15 22:19:55 -05:00
C. McEnroe 83df94b359 Still add nick without prefixes to complete 2020-02-15 22:19:05 -05:00
C. McEnroe 9b1ab69908 Track PREFIX modes and CHANMODES 2020-02-15 05:29:54 -05:00
C. McEnroe cd341076c0 Show prefixes in NAMES and WHOIS replies 2020-02-15 05:04:43 -05:00
C. McEnroe 42d106260b Separate network info from self 2020-02-15 04:54:53 -05:00
C. McEnroe 39a343980b Add /invite 2020-02-14 21:36:58 -05:00
C. McEnroe 8aa6dd86f6 Add /away 2020-02-14 21:10:40 -05:00
C. McEnroe be08880fac Only exit on errorneous nick during registration 2020-02-12 19:30:07 -05:00
C. McEnroe 05579773c8 Add 378 to list of WHOIS responses
It's the one (from freenode anyway) that tells you where you're
connecting from.
2020-02-12 19:14:49 -05:00
C. McEnroe 489df70c37 Add /list 2020-02-12 02:39:23 -05:00
C. McEnroe 3a325d3914 Handle RPL_AWAY 2020-02-12 00:17:28 -05:00
C. McEnroe 7c171b8aff Rename query ID on nick change 2020-02-11 18:23:04 -05:00
C. McEnroe 6a5ebb0bab Don't insert color codes for non-mentions 2020-02-11 18:15:25 -05:00
C. McEnroe 4d532ec738 Take first two words in colorMentions
This lets phrases like "hi june" get colored, but still doesn't get
carried away.
2020-02-11 18:08:05 -05:00
C. McEnroe cc80fae758 Set self.nick to * initially
Allows removing a bunch of checks that self.nick is set, and it's what
the server usually calls you before registration.

Never highlight notices as mentions.
2020-02-11 17:52:55 -05:00
C. McEnroe 83a8952cf5 Move base64 out of chat.h 2020-02-11 17:40:08 -05:00
C. McEnroe ac4876718f Fix whois idle unit calculation
Rookie mistake.
2020-02-11 04:00:25 -05:00
C. McEnroe 36e0bbc4cd Split on <> in colorMentions
This allows it to color the nick in the common case of pasting "<nick>
something they said" into the chat. Technically it should color the
brackets too but that would be too much work.
2020-02-10 20:58:14 -05:00
C. McEnroe 80a79467ef Only automatically switch to expected joins 2020-02-10 20:24:07 -05:00
C. McEnroe 8e55c049b5 Avoid coloring mentions if there are control codes
This was breaking leading color codes.
2020-02-10 03:58:25 -05:00
C. McEnroe fabb89077d Update prompt when own nick changes 2020-02-10 01:29:30 -05:00
C. McEnroe 3436cd1068 Add /whois 2020-02-09 16:45:49 -05:00
C. McEnroe 82cf445858 Add self.nick to completion in Network, not None 2020-02-09 02:16:17 -05:00
C. McEnroe a212a7ae2c Show realname on JOIN if it is different from nick 2020-02-09 00:55:41 -05:00
C. McEnroe b30b93f672 Use fmemopen to build colored mentions string 2020-02-08 23:29:32 -05:00
C. McEnroe ec73174c4c Use unexpected NAMES replies to populate complete 2020-02-08 22:55:11 -05:00
C. McEnroe 9cbec9ca7e Color mentions
Sort of like Textual does, but only in the first part of the messaage,
either before a colon or before a space. Hopefully this makes it less
costly than it would be, and prevents false positives on people with
common nouns for nicks.
2020-02-08 22:51:13 -05:00
C. McEnroe f502260dd0 Scan messages for URLs 2020-02-08 18:29:01 -05:00
C. McEnroe b6bf6d62b0 Only show expected topic/names replies 2020-02-08 03:15:17 -05:00
C. McEnroe b5707af4b8 Handle KICK
See I knew the color cache in complete would be useful in at least one
place!
2020-02-08 00:58:17 -05:00
C. McEnroe f14175ebed Handle QUIT 2020-02-08 00:36:23 -05:00
C. McEnroe 7ebfeea330 Handle NAMES reply 2020-02-08 00:25:09 -05:00
C. McEnroe 58e1d5b4e2 Handle NICK 2020-02-08 00:01:59 -05:00
C. McEnroe 8b7cc1a0ed Clear completion for ID on self-part 2020-02-07 23:44:03 -05:00
C. McEnroe d314523b90 Update completion on join, part, privmsg 2020-02-07 23:33:23 -05:00
C. McEnroe 87e42cc627 Color notices LightGray by default 2020-02-06 22:59:49 -05:00
C. McEnroe 34514cf2ee Render actions in italic
Also render italic as normal if it's unsupported, as that is what would
happen anyway if curses has A_ITALIC but the terminal has no sitm. That
format string is kinda bad.
2020-02-06 18:48:49 -05:00
C. McEnroe e1f10958c9 Never consider notices hot 2020-02-06 04:37:28 -05:00
C. McEnroe 32ec697092 Handle mentions 2020-02-06 04:18:15 -05:00
C. McEnroe 30b3780e57 Route own query messages correctly 2020-02-06 04:01:11 -05:00
C. McEnroe 1e6e533538 Send CAP END if CAP LS doesn't list anything good 2020-02-06 03:44:49 -05:00
C. McEnroe 5e98d83f83 Handle TOPIC and replies 2020-02-06 02:07:39 -05:00
C. McEnroe 5fb492f8cd Handle PART 2020-02-06 01:16:35 -05:00
C. McEnroe db499dc5f5 Send self.join without colon
If someone is weird enough to use channel keys, they can -j '#foo key'.
2020-02-06 01:03:21 -05:00
C. McEnroe 3085779d86 Handle ERROR 2020-02-05 23:27:43 -05:00
C. McEnroe 7414a8a11c Save own username for message echoing 2020-02-05 00:40:24 -05:00