864be7cfc5
degesch: add output text formatting
2015-04-26 18:23:43 +02:00
4393e48145
degesch: encoding fixes
...
Shouldn't be totally broken anymore.
2015-04-25 14:53:29 +02:00
c38dfced51
degesch: refactor logging a bit
2015-04-25 13:41:10 +02:00
a75fc35295
degesch: refactor handle_command_buffer() a bit
2015-04-25 02:41:52 +02:00
0141bef3cd
degesch: print an extra line in /buffer list
2015-04-25 02:09:58 +02:00
40510e26c3
degesch: fix warnings
2015-04-25 02:09:42 +02:00
29da71800a
degesch: finish the /help command
2015-04-25 02:08:14 +02:00
05d21e8f3d
degesch: print usage on command syntax failure
2015-04-25 01:49:34 +02:00
b2cfbf1501
degesch: refactor wrap_text()
...
It wasn't very readable.
2015-04-25 01:35:24 +02:00
6ef472beb2
degesch: remove cyclic dependency
...
Between users and channels.
2015-04-25 00:53:07 +02:00
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
a4d3023874
degesch: fix a double-free
2015-04-24 22:50:53 +02:00
d4413627e6
degesch: better & working text wrapping
...
Now we respect word boundaries.
2015-04-24 22:34:44 +02:00
2a0dcc2add
degesch: fix RPL_WELCOME user@host parsing
2015-04-24 22:33:23 +02:00
dd8bb4c206
degesch: less confusing function name
2015-04-23 03:10:34 +02:00
cc6e9306e6
degesch: refactor command handlers
2015-04-23 03:07:48 +02:00
15032f9ce7
degesch: fix /query
2015-04-23 03:00:19 +02:00
20c36b4b36
degesch: non-functional changes
2015-04-23 02:59:58 +02:00
c088f081d7
degesch: halfplement /msg, /query, /notice
...
Which involved some refactoring.
2015-04-23 02:48:25 +02:00
2633eda69a
degesch: better message autosplit
2015-04-23 00:15:01 +02:00
53b46482f5
degesch: preliminary message autosplitting
2015-04-22 22:41:01 +02:00
f2a2206e49
degesch: parse user@host from RPL_WELCOME
2015-04-22 21:59:50 +02:00
a7ccdc78be
degesch: add a note about RPL_ISUPPORT
2015-04-21 22:34:16 +02:00
295e4c8bf9
degesch: preparations for numerics processing
2015-04-21 22:08:18 +02:00
e937ac12d5
degesch: remove extraneous function argument
2015-04-21 21:55:34 +02:00
d0b7545f1e
degesch: implement TOPIC handling
2015-04-21 21:47:34 +02:00
9c0f0c0e33
degesch: don't require channels to have buffers
2015-04-21 21:36:59 +02:00
e8e039c11c
degesch: non-functional changes
2015-04-21 21:36:44 +02:00
883e777bac
degesch: implement PART and KICK handlers
2015-04-21 21:36:16 +02:00
69582c9e14
degesch: shorten/dedup init_colors()
2015-04-21 20:52:41 +02:00
c69c8048b4
degesch: fix a potential SIGSEGV
2015-04-21 00:40:30 +02:00
5632eecd42
degesch: get rid of repeating refcounting code
...
Macros aren't exactly spectacular but they work.
2015-04-21 00:29:07 +02:00
635c28820d
degesch: fix logging a bit
...
It needs a rewrite.
2015-04-21 00:09:06 +02:00
0a87e43aff
degesch: unfuck reference counting
...
We really needed weak references for the name map.
2015-04-21 00:04:34 +02:00
3cfe01e3a7
degesch: fix some object management
2015-04-20 23:37:34 +02:00
c5695a5f6d
degesch: fix SIGSEGV on /quit
2015-04-20 23:09:13 +02:00
5ad6581c57
degesch: halfplement PART handling
...
Tired. This thing is enormous.
2015-04-20 23:03:52 +02:00
590fc6cf26
degesch: mostly implement NICK handling
...
Except for the corner case where two buffers merge.
2015-04-20 22:53:31 +02:00
3fa9a67a59
degesch: make a "struct user" for ourselves
2015-04-20 22:09:56 +02:00
a43051132a
degesch: log nick changes
2015-04-20 21:56:32 +02:00
b8bfcfde7c
degesch: finish QUIT handling
2015-04-20 21:49:46 +02:00
8e7412eb97
degesch: halfplement NICK and QUIT handlers
2015-04-20 00:08:18 +02:00
8b279dde81
degesch: disallow /quote from the global buffer
2015-04-19 23:09:01 +02:00
10f1575677
degesch: fix creation of encoding converters
2015-04-19 23:07:23 +02:00
d01618ceb7
degesch: fix logging
2015-04-19 23:05:49 +02:00
158f188646
degesch: fix "irc_nickname" and send USERHOST
2015-04-19 22:49:03 +02:00
51415c1db6
degesch: factor out send_message_to_target()
...
And check that we're actually connected.
2015-04-19 22:26:30 +02:00
953bc72e2b
degesch: implement PRIVMSG handling
2015-04-19 22:19:52 +02:00
56ae38b19a
degesch: implement JOIN handling
2015-04-19 22:19:26 +02:00
63d01191b6
degesch: fix sending messages
...
Now that the data model has changed.
2015-04-19 21:34:52 +02:00
c3d96a8b2d
degesch: add some comments
2015-04-19 21:34:33 +02:00
c946c46f1f
degesch: implement /join and /part
2015-04-19 21:34:11 +02:00
392c2e7a5f
degesch: fix struct channel_user
...
A user can have multiple channel modes.
2015-04-19 21:33:13 +02:00
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
8c38b1b9b8
degesch: some non-functional changes
2015-04-18 22:09:05 +02:00
da472bc4f6
degesch: count unseen messages
2015-04-18 21:50:42 +02:00
14077ff209
degesch: capitalize buffer messages
...
They looked too alien.
2015-04-18 17:51:28 +02:00
3bf1ffa559
degesch: fix some remaining print_*()
2015-04-18 17:50:56 +02:00
cbda184461
degesch: fix binding Meta keys
...
At last.
2015-04-18 17:34:35 +02:00
5dbd6eaa7e
degesch: print out some basic help
2015-04-18 17:19:56 +02:00
e65b38bff9
degesch: readline cleanup
2015-04-18 16:10:11 +02:00
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
869781c33a
degesch: make it work to some extent
...
GNU Readline still ignores our Meta keyseqs.
2015-04-18 03:25:10 +02:00
583262ae67
degesch: printing to buffers etc.
2015-04-17 23:28:16 +02:00
511c56d2fc
degesch: stub IRC command handlers
2015-04-17 22:53:35 +02:00
0d63e59beb
degesch: add irc_to_utf8()
...
And use it.
2015-04-17 22:22:46 +02:00
6c4e7f8fdc
degesch: fix irc_process_message()
2015-04-17 22:11:36 +02:00
f9125c38c0
degesch: prepare for printing to buffers
2015-04-17 22:10:43 +02:00
5b9dadcc58
degesch: leak lines from related buffers
2015-04-17 21:48:56 +02:00
7fed628d58
degesch: inline a condition
2015-04-17 21:44:44 +02:00
61ebbe245b
degesch: factor out make_prompt()
2015-04-17 21:40:08 +02:00
8cb55e81b3
degesch: actually send messages
2015-04-17 21:33:52 +02:00
954a9e127a
degesch: more user command handling
...
It's become obvious that I really, really need to finish printing
to buffer first, as I keep adding new TODO comments.
2015-04-17 21:29:18 +02:00
2d91a27714
degesch: factor out buffer_{previous,next}()
2015-04-17 21:26:08 +02:00
e5b52fcd76
degesch: factor out buffer_get_index()
2015-04-17 21:19:51 +02:00
2d4adaefbf
degesch: enhance the prompt
...
- prepend the buffer's index
- don't show modes if they're empty
- don't show the nick in the global buffer
2015-04-16 21:29:35 +02:00
75b2fc1da2
degesch: factor out buffer_goto()
...
And make M-[0-9] ding if there's no such buffer.
2015-04-16 21:20:25 +02:00
0c96563545
degesch: fix quoting a slash
2015-04-16 20:51:50 +02:00
c421532e6e
degesch: some more progress
...
Whoa, this thing is huge.
Started implementing the basis for IRC and user command handlers.
2015-04-16 01:04:32 +02:00
08c0027397
degesch: more buffer-related stuff
2015-04-15 21:22:01 +02:00
51ca5c79e4
degesch: show active buffers in prompt
2015-04-15 21:22:01 +02:00
23298f3a0e
degesch: fix reading in the configuration
2015-04-15 21:22:01 +02:00
06857c6bbb
degesch: add an error buffer line type
2015-04-15 21:22:01 +02:00
c2c9d4dc58
degesch: update TODO/FIXME comments
2015-04-15 21:22:01 +02:00
ba9e51fb9f
degesch: reorder configuration
2015-04-15 21:22:01 +02:00
92ca2df285
degesch: fix Travis CI build
2015-04-15 02:40:11 +02:00
0114d57a0c
degesch: fix Travis CI build (hopefully)
2015-04-15 02:28:57 +02:00
4a0c774e75
degesch: more GNU Readline work
...
I'm not so sure anymore I will be able to achieve my goals with this library.
It's really a terrible mess. A consistent and neatly formatted terrible mess.
2015-04-15 02:10:21 +02:00
3df841f088
degesch: steady progress
...
I'm sorry, I can't do reasonable commit messages in this stage of development.
It's all a total mess slowly converging to an alpha version.
2015-04-13 00:09:10 +02:00
3864cca21d
degesch: actually do add the client
...
Mostly consists of some ZyklonB and some json-rpc-shell code.
The part that actually makes it an IRC client is still unfinished.
2015-04-12 04:53:29 +02:00