Curtis McEnroe
3f3fa34d8a
Implement word wrapping
2018-08-06 15:12:13 -04:00
Curtis McEnroe
d6fb797b11
Use wchar_t strings for all of UI
...
vaswprintf is a nightmare.
2018-08-06 14:19:52 -04:00
Curtis McEnroe
ea4c70dae5
Rename line editing functions
2018-08-06 11:22:45 -04:00
Curtis McEnroe
5bb96a79e7
Initialize all possible color pairs
...
This is actually possible with use_default_colors!
2018-08-05 18:34:35 -04:00
Curtis McEnroe
dbed1929dc
Refactor color initialization
2018-08-05 15:00:38 -04:00
Curtis McEnroe
c1283ed18a
Add ^L redraw
2018-08-05 13:42:37 -04:00
Curtis McEnroe
7beb4c9912
Use 16 colors if available
...
Fall back to using bold if there are only 8 colors. This also allowed
bright background colors in 16-color terminals.
I must port this system to torus. I'll be able to remove the awful
termcap patch hack.
2018-08-05 13:28:49 -04:00
Curtis McEnroe
7e02eddcf4
Limit parsed colors to number of mIRC colors
...
Oh boy that's embarrassing.
2018-08-05 11:00:01 -04:00
Curtis McEnroe
6df61b5dda
Show source link on exit
2018-08-04 21:23:28 -04:00
Curtis McEnroe
8fdf2c402d
Implement line editing, scrolling
...
Don't really have a way to implement the M-* keys, and currently missing
C-w.
2018-08-04 20:54:50 -04:00
Curtis McEnroe
ababcbb080
Handle /topic
2018-08-04 18:43:04 -04:00
Curtis McEnroe
fbf78ef22b
Add README
2018-08-04 18:00:54 -04:00
Curtis McEnroe
7b5bc5aa41
Rename ui chat to log
2018-08-04 17:59:43 -04:00
Curtis McEnroe
35589a5624
Rename client to irc
2018-08-04 17:54:46 -04:00
Curtis McEnroe
b163492552
Fix chat draw boundaries
2018-08-04 17:08:15 -04:00
Curtis McEnroe
aca376bc89
Factor out mIRC color parsing
2018-08-04 16:36:25 -04:00
Curtis McEnroe
ea23dcec3b
Scroll the input pad
2018-08-04 16:17:20 -04:00
Curtis McEnroe
f8e5648a9a
Copy /usr/share/locale into chroot
...
Otherwise only ASCII can be entered.
2018-08-04 15:30:27 -04:00
Curtis McEnroe
39507f0f8f
Handle terminal resizing
2018-08-04 15:04:48 -04:00
Curtis McEnroe
6e4f98d6eb
Handle /names and /who
2018-08-04 14:33:57 -04:00
Curtis McEnroe
96888b6c32
Add libedit to chroot
...
Needed by sh.
2018-08-04 14:17:18 -04:00
Curtis McEnroe
95b46b8559
Define A_ITALIC if not defined
...
System ncurses on macOS doesn't define it. At least not in El Capitan.
2018-08-04 13:58:44 -04:00
Curtis McEnroe
5217f876b0
Do not free const string port
2018-08-04 13:43:36 -04:00
Curtis McEnroe
ccdeb0c556
Split source into several files
...
Can't believe I have to do this.
2018-08-04 13:35:29 -04:00
Curtis McEnroe
c6cd59f5c8
Exit on zero read
2018-08-04 01:38:43 -04:00
Curtis McEnroe
fc5bf09c46
Handle nick errors
2018-08-04 01:37:07 -04:00
Curtis McEnroe
7baaff0777
Handle /nick and /quit
...
/quit doesn't actually... quit, right now. The only way to know that the
connection is closed is tls_read returning zero, it seems.
2018-08-04 01:13:06 -04:00
Curtis McEnroe
fe938fba53
Track own nick
2018-08-04 01:12:26 -04:00
Curtis McEnroe
5522529e83
Word all status messages in present
2018-08-04 00:09:39 -04:00
Curtis McEnroe
269662d9ca
Handle input
...
This turned out a lot better than expected. Still a long way to go in
terms of line-editing, but at least backspace works!
2018-08-03 23:54:28 -04:00
Curtis McEnroe
9f17adce80
Track own username
...
So that we can colour our own messages correctly.
2018-08-03 23:00:53 -04:00
Curtis McEnroe
1daf23d8a5
Use a wide pad for the topic
2018-08-03 19:48:15 -04:00
Curtis McEnroe
18dcb256ac
Ignore NOTICEs not sent to the channel
2018-08-03 19:34:28 -04:00
Curtis McEnroe
0e99c48912
Handle KICK and NICK
2018-08-03 19:34:19 -04:00
Curtis McEnroe
a2ea9a9035
Continue on EINTR from poll
...
Resizing the terminal causes it.
2018-08-03 19:22:44 -04:00
Curtis McEnroe
674e527b33
Handle ACTIONs
2018-08-03 19:17:29 -04:00
Curtis McEnroe
6ccaf872fc
Use more octal char literals
...
I might be coming around to octal.
2018-08-03 19:16:46 -04:00
Curtis McEnroe
c609684d2b
Send a WHO in response to NAMES to get usernames
...
Other than this slight hack, I think coloring by username rather than
nick is a much better idea.
2018-08-03 18:58:19 -04:00
Curtis McEnroe
3b490562d4
Colorize nicks and channels
2018-08-03 18:07:19 -04:00
Curtis McEnroe
9e0bcb3805
Add support for mIRC colors
2018-08-03 18:00:48 -04:00
Curtis McEnroe
0a1528796b
Handle bold, italic, underline
2018-08-03 14:18:14 -04:00
Curtis McEnroe
c383f9f3a7
Add prift function for "prefix shift"
...
Forgive me.
2018-08-03 14:12:49 -04:00
Curtis McEnroe
d2d421735e
Link with -lcursesw
2018-08-03 13:36:41 -04:00
Curtis McEnroe
d3e90b6cf2
Use libtls "compat" ciphers
...
irc.mozilla.org, using GnuTLS, doesn't support *any* of the "secure"
ciphers!
2018-08-02 23:59:41 -04:00
Curtis McEnroe
a5009665b0
Add UI and handle some kinds of server messages
...
Seems like handling input is going to be the worst thing ever.
2018-08-02 22:29:10 -04:00
Curtis McEnroe
9c5f273f5c
Add chroot.tar target
2018-08-02 22:02:59 -04:00
Curtis McEnroe
c068321263
Add LICENSE file
2018-08-02 20:55:21 -04:00
Curtis McEnroe
9df93e8301
Start IRC client
...
It dumps lines from the server onto the curses window.
2018-08-02 00:29:35 -04:00