Commit Graph

83 Commits (master)

Author SHA1 Message Date
Přemysl Eric Janouch c22dd67fc1
xC: send missing relay events for newly added servers 1 month ago
Přemysl Eric Janouch 274d5f03e7
xC: give the /away command a proper handler
Multiple words should be passed to the server as a single argument.
1 month ago
Přemysl Eric Janouch b9cdabca5d
xC: fix relay handling of missing log files
Intermediate error messages would trash the prepared static buffer.
2 months ago
Přemysl Eric Janouch 100de5ac2d
xC: fix Readline 6.3 compatibility 2 months ago
Přemysl Eric Janouch 9e993c50e6
xC: don't crash with unknown terminals
It would be possible to avoid using cur_term fields in this case,
but the program would likely be of little use anyway.
3 months ago
Přemysl Eric Janouch b3e9218b23
Fix Cygwin build warnings 3 months ago
Přemysl Eric Janouch abcff46dc4
xC: fix an OpenBSD build warning
sys/cdefs.h makes _XOPEN_SOURCE cause _POSIX_C_SOURCE to be overriden.
3 months ago
Přemysl Eric Janouch 50f70f93bb
xC: fix a harmless copy-paste error 4 months ago
Přemysl Eric Janouch 3f9a365d36
xC: improve the --format mode
Avoid having formatting spill over the rest of the line,
by placing the automatic formatting reset before newlines.

Also handle longer lines properly.
4 months ago
Přemysl Eric Janouch 26ed2dbc77
xC: fully synchronize input history with frontends
The missing parts were:

 - frontends to client
 - client to frontends after the initial sync
 - frontend to other frontends
12 months ago
Přemysl Eric Janouch a7c3ed7cc1
xC: clean up 1 year ago
Přemysl Eric Janouch c4707e2803
xC/xP: send buffer input history during sync
This transfer is currenly quite simplistic,
but it paves the way for further extensions.
1 year ago
Přemysl Eric Janouch 5b57e9b41b
xC/xP: fix unseen message counting
xC: advance unread message counters even with leaked messages,
and don't unnecessarily set the highlighted flag.  Plus clean up.

xP: make leaked non-unimportant messages advance the counter
for unimportant messages, so that the buffer doesn't get emboldened.
1 year ago
Přemysl Eric Janouch f2d8de3ab9
xP: support adding formatting from keyboard
Just like in xC, only with some indication.
1 year ago
Přemysl Eric Janouch e6bf88673f
xP: produce a custom font for IRC formatting
Given that the generated file needs a manual adjustment,
its small size, and the dependencies involved,
it will be checked in to the repository.
1 year ago
Přemysl Eric Janouch d3628928b9
xC/xP: relay and render channel modes 1 year ago
Přemysl Eric Janouch 919b12510b
xC/xP: relay and render channel topics 1 year ago
Přemysl Eric Janouch 8a689c98b4
xC: fix autocomplete in server buffers 1 year ago
Přemysl Eric Janouch 9327333813
xC/xP: show own user's info in frontends 1 year ago
Přemysl Eric Janouch 7806d4bd4e
xC/xP: improve rendering of highlighting actions 1 year ago
Přemysl Eric Janouch c0e1cd57b2
Make sure to always find installed plugins 1 year ago
Přemysl Eric Janouch 21e5d80ab1
xC: improve Readline completion
The autocomplete for /set used to be extremely annoying,
and menu-complete-display-prefix also prevents mistaken highlights.

One downside is that using plain Tab in channels no longer
just inserts the last-talking nickname, one needs to press it twice.
1 year ago
Přemysl Eric Janouch 840b646700
xC: reorganize relay code, improve logging
Even with one forward function declaration down,
it was possible to move most code to a more convenient location.

Most logging has thus been fixed to go to buffers.
1 year ago
Přemysl Eric Janouch 126105fa4f
xC: don't abort on accept() failure
Just disable the relay.
1 year ago
Přemysl Eric Janouch e2f3fc2e79
xC: clean up 1 year ago
Přemysl Eric Janouch d5153fe354
xC/xP: implement M-H in the web frontend 1 year ago
Přemysl Eric Janouch d31ab67268
xC: mildly optimize relay traffic 1 year ago
Přemysl Eric Janouch 3b6c29d676
xC: silence some compiler warnings 1 year ago
Přemysl Eric Janouch 96fc12bc4c
xC/xP: send buffer type and server state
Also make PM highlighting behaviour consistent.
1 year ago
Přemysl Eric Janouch 1493d9998b
xC: clean up 1 year ago
Přemysl Eric Janouch 4bc2f736f2
xC: make terminal attributes abstract
And translate them for frontends.

This is very long overdue, and a rather significant cleanup.

Bump liberty.
1 year ago
Přemysl Eric Janouch 0015d26dc8
xC/xP: support hiding unimportant messages at all 1 year ago
Přemysl Eric Janouch 7d5e63be1f
xC: deal with so far unexpected multiline messages
And get rid of an outdated unmarked TODO comment.
1 year ago
Přemysl Eric Janouch e7d0f2380e
xC: split Command.BUFFER_INPUT on newlines 1 year ago
Přemysl Eric Janouch 632ac992ab
xC/xP: only send buffer stats in the initial sync
The client and frontends track these separately,
there is no need for hard synchronization.
1 year ago
Přemysl Eric Janouch 3a165a595b
xC: use the relay protocol's RPC for pings 1 year ago
Přemysl Eric Janouch 4ba28c6ed3
xC/xP: mark highlights and buffer activity
And more or less finalize out the protocol for this use case.
1 year ago
Přemysl Eric Janouch a2d5995cf5
xC: don't autoactivate buffers on forced JOINs 1 year ago
Přemysl Eric Janouch 88a7b1a2d9
xP: resolve various issues, mostly in styling 1 year ago
Přemysl Eric Janouch 2341228efd
xP: implement buffer line leakage
Rather than on redisplay, these get cleared on reconnect.
1 year ago
Přemysl Eric Janouch 5fd76ba6f9
xC: add a trivial /relay command
For there is otherwise no way of getting that information.
1 year ago
Přemysl Eric Janouch 41878a587f
xC: use liberty logging less
These messages cannot be relayed to frontends (they could be,
but it's useful to keep them distinct rather than redirected).
1 year ago
Přemysl Eric Janouch 80089a4d65
xC: describe general.editor parse errors 1 year ago
Přemysl Eric Janouch 2d30b6d115
xC: define critical bindings after el_source()
And use ^C rather than ^G.
1 year ago
Přemysl Eric Janouch cf14cb8122
xC: implement buffer completion in the relay
And actually support completion with non-UTF-8 locales.
We used to ignore the encoding conversion result.
1 year ago
Přemysl Eric Janouch 31e9c6d2d5
xC/xP: pass timestamps with millisecond precision
Future-proofing the protocol.
1 year ago
Přemysl Eric Janouch d7b0b447b7
xC/xP: turn the action asterisk into a rendition 1 year ago
Přemysl Eric Janouch 25ad5ae0ec
xC/xP: fix colour values, and render them with CSS 1 year ago
Přemysl Eric Janouch 10f6072da9
xC: also force monospace for RPL_MOTDSTART
It tends to looks inconsistent without.
1 year ago
Přemysl Eric Janouch 1639235a48
Start X11 and web frontends for xC
For this, we needed a wire protocol.  After surveying available options,
it was decided to implement an XDR-like protocol code generator
in portable AWK.  It now has two backends, per each of:

 - xF, the X11 frontend, is in C, and is meant to be the primary
   user interface in the future.

 - xP, the web frontend, relies on a protocol proxy written in Go,
   and is meant for use on-the-go (no pun intended).

They are very much work-in-progress proofs of concept right now,
and the relay protocol is certain to change.
1 year ago