Commit Graph

1345 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 807a8c37d9
Bump liberty, improve fallback manual page output 2022-09-30 18:17:23 +02:00
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.
2022-09-30 17:36:29 +02:00
Přemysl Eric Janouch 46d68eacce
Move protocol code generators to liberty
This part of the project is now more or less stable.
2022-09-30 03:24:24 +02:00
Přemysl Eric Janouch 86278c154c
Clean up protocol code generators 2022-09-30 03:24:13 +02:00
Přemysl Eric Janouch 941ee2f10c
xP: fix automatic scrolling down
Showing channel logs cancelled the AbortController forever.
Thus store it within vnodes.
2022-09-28 21:29:08 +02:00
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.
2022-09-28 21:20:59 +02:00
Přemysl Eric Janouch 4d99690b89
xS: parse project version from CMakeLists.txt 2022-09-27 23:48:12 +02:00
Přemysl Eric Janouch 7c74e6615d
xD: use SHA-256 for certificate fingerprints
Just like xS.  2.0.0 is the ideal time for such a breaking change.
2022-09-26 13:58:08 +02:00
Přemysl Eric Janouch 614fd98fc1
Update README 2022-09-26 13:42:45 +02:00
Přemysl Eric Janouch 5863040f93
Update documentation, clean up 2022-09-26 13:24:24 +02:00
Přemysl Eric Janouch f891e5ca63
Merge hid IRCd from haven as xS
Given that this project already contains a Go binary,
it only makes sense to put the IRCds back together.
2022-09-26 12:41:47 +02:00
Přemysl Eric Janouch 8344b09c4f
hid: rename to xS before merge into xK 2022-09-26 12:23:58 +02:00
Přemysl Eric Janouch 4d50ed111a
Bump liberty, make use of its new asciiman.awk 2022-09-25 21:02:51 +02:00
Přemysl Eric Janouch e15c9cba43
xP: use a dotted border for button focus
It's visible enough.
2022-09-25 11:08:50 +02:00
Přemysl Eric Janouch 66370387bc
Update documentation 2022-09-23 20:35:56 +02:00
Přemysl Eric Janouch 2bc3ac7b0d
Update screenshots
It's been five years since the previous xC screenshot was made.
2022-09-23 19:00:31 +02:00
Přemysl Eric Janouch 2c54f5a5dd
xP: make the overlay actually overlay 2022-09-23 19:00:31 +02:00
Přemysl Eric Janouch f2d8de3ab9
xP: support adding formatting from keyboard
Just like in xC, only with some indication.
2022-09-23 09:42:24 +02:00
Přemysl Eric Janouch 67d52a2d89
xP: fix up link detection
Allow balanced parantheses at the end of a link.
2022-09-23 09:42:23 +02:00
Přemysl Eric Janouch ef3d1cc409
xP: add formatting buttons
And fix autoscroll autoenabler, as well as toolbar padding.

Only add the basic toggles, which should be well supported.
2022-09-23 09:41:29 +02:00
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.
2022-09-22 20:18:55 +02:00
Přemysl Eric Janouch 4a2740313c
Give up on the X11 frontend for now
There seem to be only a few things it could bring to the table,
compared to xP, making it barely worth the effort:

 - saner keyboard controls,
 - GVIM integration,
 - slightly improved resource usage.
2022-09-21 18:30:25 +02:00
Přemysl Eric Janouch d3628928b9
xC/xP: relay and render channel modes 2022-09-21 16:32:35 +02:00
Přemysl Eric Janouch 1f0e0b1ce4
xP: only care about RPC results if requested
This prevents "No response" errors from firing for most commands.
2022-09-21 14:31:16 +02:00
Přemysl Eric Janouch 919b12510b
xC/xP: relay and render channel topics 2022-09-21 12:15:27 +02:00
Přemysl Eric Janouch 414859d309
xP: improve paging 2022-09-21 07:34:17 +02:00
Přemysl Eric Janouch 5a7f2d16df
xP: clean up DOM attributes 2022-09-21 06:23:59 +02:00
Přemysl Eric Janouch b8061b665d
Silence spurious compiler warnings 2022-09-21 05:21:45 +02:00
Přemysl Eric Janouch 807bdea2ea
Update README 2022-09-20 19:08:14 +02:00
Přemysl Eric Janouch 8a689c98b4
xC: fix autocomplete in server buffers 2022-09-20 17:34:01 +02:00
Přemysl Eric Janouch 9327333813
xC/xP: show own user's info in frontends 2022-09-20 17:24:30 +02:00
Přemysl Eric Janouch 7806d4bd4e
xC/xP: improve rendering of highlighting actions 2022-09-20 15:30:07 +02:00
Přemysl Eric Janouch c0e1cd57b2
Make sure to always find installed plugins 2022-09-19 04:26:35 +02:00
Přemysl Eric Janouch 00184811ea
xP: make the prompt look more xC-like 2022-09-19 03:18:31 +02:00
Přemysl Eric Janouch ec20fdef7b
xP: show all completion options 2022-09-18 05:54:23 +02:00
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.
2022-09-18 02:48:28 +02:00
Přemysl Eric Janouch ff243c1d11
xP: implement Readline's M-l, M-u, M-c 2022-09-18 01:59:11 +02:00
Přemysl Eric Janouch e2ef7d668c
xP: implement Readline's M-b and M-f 2022-09-18 01:10:03 +02:00
Přemysl Eric Janouch b979257c3a
xP: implement Readline's M-< and M-> 2022-09-18 01:10:03 +02:00
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.
2022-09-17 00:32:14 +02:00
Přemysl Eric Janouch 126105fa4f
xC: don't abort on accept() failure
Just disable the relay.
2022-09-17 00:31:23 +02:00
Přemysl Eric Janouch e2f3fc2e79
xC: clean up 2022-09-17 00:31:23 +02:00
Přemysl Eric Janouch b55bae50df
Update some documentation 2022-09-16 03:52:49 +02:00
Přemysl Eric Janouch 430968e5d5
xP: make non-connected states more apparent 2022-09-16 03:19:48 +02:00
Přemysl Eric Janouch d5153fe354
xC/xP: implement M-H in the web frontend 2022-09-16 02:52:16 +02:00
Přemysl Eric Janouch ee76186bef
xP: abandon the idea of a configuration file 2022-09-16 01:21:35 +02:00
Přemysl Eric Janouch 6f39aa6615
xP: use the binary protocol for incoming events
And batch event messages together as much as possible.

JSON has proven itself to be really slow
(for example, encoding/json.Marshaler is a slow interface),
and browsers have significant overhead per WS message.

Commands are still sent as JSON, sending them in binary
would be a laborious rewrite without measurable merits.

The xP server now only prints debug output when requested,
because that was another source of major slowdowns.
2022-09-16 00:51:11 +02:00
Přemysl Eric Janouch e87cc90b5e
xP: improve comments in protocol code generator 2022-09-15 05:12:07 +02:00
Přemysl Eric Janouch 98b0a4ef3d
xP: further optimize JSON marshalling 2022-09-15 03:16:16 +02:00
Přemysl Eric Janouch 9cf44aa4dd
xP: speed up log decoding 2022-09-15 02:32:58 +02:00