Commit Graph

178 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 3b5c3c3b4e degesch: implement /set += / -= 2015-05-03 18:40:51 +02:00
Přemysl Eric Janouch 4841ba5bd0 degesch: halfplement option assignment 2015-05-03 17:38:58 +02:00
Přemysl Eric Janouch 373f6333ef degesch: refactor /help, fix segfault
Forgot to check if the item has a schema.
2015-05-03 16:47:31 +02:00
Přemysl Eric Janouch 4928f9ed62 degesch: add a read-only /set command 2015-05-03 16:47:16 +02:00
Přemysl Eric Janouch e000a6b495 degesch: fix segfault 2015-05-03 06:20:36 +02:00
Přemysl Eric Janouch f308b3fb5d degesch: show help for program options 2015-05-03 05:58:56 +02:00
Přemysl Eric Janouch 1019cc69b2 degesch: don't queue reconnects on bogus config 2015-05-03 00:13:36 +02:00
Přemysl Eric Janouch b31104784c degesch: connect _after_ starting the UI 2015-05-03 00:13:36 +02:00
Přemysl Eric Janouch 6d0fff6a71 degesch: don't require configuration to run
Well, techincally.
2015-05-03 00:13:36 +02:00
Přemysl Eric Janouch c23898166c degesch: use the new configuration
This is a simple, almost 1:1 conversion.  Needs further unfucking.
2015-05-02 23:06:19 +02:00
Přemysl Eric Janouch 7e42399ad0 degesch; user color constants from curses 2015-05-02 20:23:02 +02:00
Přemysl Eric Janouch 852c2ac158 Move some macros to common.c 2015-05-02 03:43:29 +02:00
Přemysl Eric Janouch 57f052a2be Get rid of "All rights reserved" 2015-05-01 23:41:22 +02:00
Přemysl Eric Janouch 6bf57d3450 Start writing a new configuration system
For degesch but in the long term for the rest as well.
2015-05-01 17:33:10 +02:00
Přemysl Eric Janouch 37fa19f4c9 Rename project to uirc3 2015-04-30 01:39:08 +02:00
Přemysl Eric Janouch 950f052d1b degesch: refactor for multiserver
Just some basic preparations before it becomes too costly.
2015-04-30 00:02:14 +02:00
Přemysl Eric Janouch b95b916c37 degesch: further unfucking 2015-04-29 21:43:31 +02:00
Přemysl Eric Janouch 101ab90100 degesch: unfuck terminal attribute handling 2015-04-29 20:56:26 +02:00
Přemysl Eric Janouch 21656d462f degesch: mark some issues 2015-04-28 23:41:13 +02:00
Přemysl Eric Janouch 507d444e0d degesch: fix 8-bit input 2015-04-28 23:40:49 +02:00
Přemysl Eric Janouch 1ff56bfe5a degesch: simplify formatter_flush() 2015-04-28 23:40:49 +02:00
Přemysl Eric Janouch 4013921de7 degesch: add a /nick command
Somehow I've missed it entirely.
2015-04-27 23:06:20 +02:00
Přemysl Eric Janouch 6f890c0388 degesch: fix typo 2015-04-27 23:02:15 +02:00
Přemysl Eric Janouch 0cb50addbe degesch: make sure "You are now known..." works 2015-04-27 22:59:23 +02:00
Přemysl Eric Janouch 412cad9328 degesch: add fast buffer switching
When the user tries to M-n the same buffer, it switches to the last.
2015-04-27 22:51:40 +02:00
Přemysl Eric Janouch cdb1d81982 degesch: detect highlights and display differently 2015-04-27 22:40:33 +02:00
Přemysl Eric Janouch 87c1775129 degesch: imlement NOTICE handling 2015-04-27 21:52:16 +02:00
Přemysl Eric Janouch 6003cc7138 degesch: log outcoming CTCPs 2015-04-27 01:47:21 +02:00
Přemysl Eric Janouch 2f6974c7ca degesch: reply to some CTCPs 2015-04-27 01:36:33 +02:00
Přemysl Eric Janouch 5ad6d7cfbc degesch: implement /me 2015-04-26 23:32:57 +02:00
Přemysl Eric Janouch 21b8e8e539 degesch: implement /list 2015-04-26 23:06:19 +02:00
Přemysl Eric Janouch 54262e2d20 degesch: implement /ctcp, stubplement /me 2015-04-26 22:53:38 +02:00
Přemysl Eric Janouch a66bf15e67 degesch: process CTCP in PRIVMSG
Finally we can display /me.
2015-04-26 22:31:07 +02:00
Přemysl Eric Janouch 9e548889c7 degesch: add a CTCP parser 2015-04-26 22:30:44 +02:00
Přemysl Eric Janouch e734190979 degesch: set the server buffer as default 2015-04-26 18:59:58 +02:00
Přemysl Eric Janouch b7d6933be6 degesch: brevify /help with no arguments 2015-04-26 18:58:39 +02:00
Přemysl Eric Janouch 224073d3b2 degesch: distinguish lines from other buffers 2015-04-26 18:39:38 +02:00
Přemysl Eric Janouch 950d64d229 degesch: little fixes 2015-04-26 18:24:19 +02:00
Přemysl Eric Janouch 864be7cfc5 degesch: add output text formatting 2015-04-26 18:23:43 +02:00
Přemysl Eric Janouch 4393e48145 degesch: encoding fixes
Shouldn't be totally broken anymore.
2015-04-25 14:53:29 +02:00
Přemysl Eric Janouch c38dfced51 degesch: refactor logging a bit 2015-04-25 13:41:10 +02:00
Přemysl Eric Janouch a75fc35295 degesch: refactor handle_command_buffer() a bit 2015-04-25 02:41:52 +02:00
Přemysl Eric Janouch 0141bef3cd degesch: print an extra line in /buffer list 2015-04-25 02:09:58 +02:00
Přemysl Eric Janouch 40510e26c3 degesch: fix warnings 2015-04-25 02:09:42 +02:00
Přemysl Eric Janouch 29da71800a degesch: finish the /help command 2015-04-25 02:08:14 +02:00
Přemysl Eric Janouch 05d21e8f3d degesch: print usage on command syntax failure 2015-04-25 01:49:34 +02:00
Přemysl Eric Janouch b2cfbf1501 degesch: refactor wrap_text()
It wasn't very readable.
2015-04-25 01:35:24 +02:00
Přemysl Eric Janouch 6ef472beb2 degesch: remove cyclic dependency
Between users and channels.
2015-04-25 00:53:07 +02:00
Přemysl Eric Janouch 7c2085d528 degesch: memory management fixes
As well as a one serious bug in passing the completely wrong object.
2015-04-24 23:30:48 +02:00
Přemysl Eric Janouch a4d3023874 degesch: fix a double-free 2015-04-24 22:50:53 +02:00
Přemysl Eric Janouch d4413627e6 degesch: better & working text wrapping
Now we respect word boundaries.
2015-04-24 22:34:44 +02:00
Přemysl Eric Janouch 2a0dcc2add degesch: fix RPL_WELCOME user@host parsing 2015-04-24 22:33:23 +02:00
Přemysl Eric Janouch dd8bb4c206 degesch: less confusing function name 2015-04-23 03:10:34 +02:00
Přemysl Eric Janouch cc6e9306e6 degesch: refactor command handlers 2015-04-23 03:07:48 +02:00
Přemysl Eric Janouch 15032f9ce7 degesch: fix /query 2015-04-23 03:00:19 +02:00
Přemysl Eric Janouch 20c36b4b36 degesch: non-functional changes 2015-04-23 02:59:58 +02:00
Přemysl Eric Janouch c088f081d7 degesch: halfplement /msg, /query, /notice
Which involved some refactoring.
2015-04-23 02:48:25 +02:00
Přemysl Eric Janouch 2633eda69a degesch: better message autosplit 2015-04-23 00:15:01 +02:00
Přemysl Eric Janouch 53b46482f5 degesch: preliminary message autosplitting 2015-04-22 22:41:01 +02:00
Přemysl Eric Janouch f2a2206e49 degesch: parse user@host from RPL_WELCOME 2015-04-22 21:59:50 +02:00
Přemysl Eric Janouch a7ccdc78be degesch: add a note about RPL_ISUPPORT 2015-04-21 22:34:16 +02:00
Přemysl Eric Janouch 295e4c8bf9 degesch: preparations for numerics processing 2015-04-21 22:08:18 +02:00
Přemysl Eric Janouch e937ac12d5 degesch: remove extraneous function argument 2015-04-21 21:55:34 +02:00
Přemysl Eric Janouch d0b7545f1e degesch: implement TOPIC handling 2015-04-21 21:47:34 +02:00
Přemysl Eric Janouch 9c0f0c0e33 degesch: don't require channels to have buffers 2015-04-21 21:36:59 +02:00
Přemysl Eric Janouch e8e039c11c degesch: non-functional changes 2015-04-21 21:36:44 +02:00
Přemysl Eric Janouch 883e777bac degesch: implement PART and KICK handlers 2015-04-21 21:36:16 +02:00
Přemysl Eric Janouch 69582c9e14 degesch: shorten/dedup init_colors() 2015-04-21 20:52:41 +02:00
Přemysl Eric Janouch c69c8048b4 degesch: fix a potential SIGSEGV 2015-04-21 00:40:30 +02:00
Přemysl Eric Janouch 5632eecd42 degesch: get rid of repeating refcounting code
Macros aren't exactly spectacular but they work.
2015-04-21 00:29:07 +02:00
Přemysl Eric Janouch 635c28820d degesch: fix logging a bit
It needs a rewrite.
2015-04-21 00:09:06 +02:00
Přemysl Eric Janouch 0a87e43aff degesch: unfuck reference counting
We really needed weak references for the name map.
2015-04-21 00:04:34 +02:00
Přemysl Eric Janouch 3cfe01e3a7 degesch: fix some object management 2015-04-20 23:37:34 +02:00
Přemysl Eric Janouch c5695a5f6d degesch: fix SIGSEGV on /quit 2015-04-20 23:09:13 +02:00
Přemysl Eric Janouch 5ad6581c57 degesch: halfplement PART handling
Tired.  This thing is enormous.
2015-04-20 23:03:52 +02:00
Přemysl Eric Janouch 590fc6cf26 degesch: mostly implement NICK handling
Except for the corner case where two buffers merge.
2015-04-20 22:53:31 +02:00
Přemysl Eric Janouch 3fa9a67a59 degesch: make a "struct user" for ourselves 2015-04-20 22:09:56 +02:00
Přemysl Eric Janouch a43051132a degesch: log nick changes 2015-04-20 21:56:32 +02:00
Přemysl Eric Janouch b8bfcfde7c degesch: finish QUIT handling 2015-04-20 21:49:46 +02:00
Přemysl Eric Janouch 8e7412eb97 degesch: halfplement NICK and QUIT handlers 2015-04-20 00:08:18 +02:00
Přemysl Eric Janouch 8b279dde81 degesch: disallow /quote from the global buffer 2015-04-19 23:09:01 +02:00
Přemysl Eric Janouch 10f1575677 degesch: fix creation of encoding converters 2015-04-19 23:07:23 +02:00
Přemysl Eric Janouch d01618ceb7 degesch: fix logging 2015-04-19 23:05:49 +02:00
Přemysl Eric Janouch 158f188646 degesch: fix "irc_nickname" and send USERHOST 2015-04-19 22:49:03 +02:00
Přemysl Eric Janouch 51415c1db6 degesch: factor out send_message_to_target()
And check that we're actually connected.
2015-04-19 22:26:30 +02:00
Přemysl Eric Janouch 953bc72e2b degesch: implement PRIVMSG handling 2015-04-19 22:19:52 +02:00
Přemysl Eric Janouch 56ae38b19a degesch: implement JOIN handling 2015-04-19 22:19:26 +02:00
Přemysl Eric Janouch 63d01191b6 degesch: fix sending messages
Now that the data model has changed.
2015-04-19 21:34:52 +02:00
Přemysl Eric Janouch c3d96a8b2d degesch: add some comments 2015-04-19 21:34:33 +02:00
Přemysl Eric Janouch c946c46f1f degesch: implement /join and /part 2015-04-19 21:34:11 +02:00
Přemysl Eric Janouch 392c2e7a5f degesch: fix struct channel_user
A user can have multiple channel modes.
2015-04-19 21:33:13 +02:00
Přemysl Eric Janouch 5502975505 degesch: prepare for user/channel buffers
That is, prepare all the required data structures and their relations.

I'm not particularly good at this, so let's just hope it will work out.
2015-04-19 02:12:59 +02:00
Přemysl Eric Janouch 8c38b1b9b8 degesch: some non-functional changes 2015-04-18 22:09:05 +02:00
Přemysl Eric Janouch da472bc4f6 degesch: count unseen messages 2015-04-18 21:50:42 +02:00
Přemysl Eric Janouch 14077ff209 degesch: capitalize buffer messages
They looked too alien.
2015-04-18 17:51:28 +02:00
Přemysl Eric Janouch 3bf1ffa559 degesch: fix some remaining print_*() 2015-04-18 17:50:56 +02:00
Přemysl Eric Janouch cbda184461 degesch: fix binding Meta keys
At last.
2015-04-18 17:34:35 +02:00
Přemysl Eric Janouch 5dbd6eaa7e degesch: print out some basic help 2015-04-18 17:19:56 +02:00
Přemysl Eric Janouch e65b38bff9 degesch: readline cleanup 2015-04-18 16:10:11 +02:00
Přemysl Eric Janouch 932548ef4b degesch: make readline work better
By randomly poking at it until it stops being a little shit.

Still no Meta keys.
2015-04-18 16:06:10 +02:00