Commit Graph

1241 Commits

Author SHA1 Message Date
Přemysl Eric Janouch add670212f
xP: remember buffer input selections 2022-09-11 01:01:53 +02:00
Přemysl Eric Janouch 95aa89ee97
xP: bind M-h to toggle history, and adjust focus 2022-09-10 20:39:03 +02:00
Přemysl Eric Janouch 0bc2c12eec
xP: handle the M-Tab binding from xC 2022-09-10 19:36:49 +02:00
Přemysl Eric Janouch 3330683ad6
xP: handle M-a and M-! bindings from xC 2022-09-10 19:34:01 +02:00
Přemysl Eric Janouch 0015d26dc8
xC/xP: support hiding unimportant messages at all 2022-09-10 19:01:42 +02:00
Přemysl Eric Janouch 7d5e63be1f
xC: deal with so far unexpected multiline messages
And get rid of an outdated unmarked TODO comment.
2022-09-10 18:51:27 +02:00
Přemysl Eric Janouch e7d0f2380e
xC: split Command.BUFFER_INPUT on newlines 2022-09-10 18:51:27 +02:00
Přemysl Eric Janouch 36529a46fd
xP: also scroll to bottom on window resize 2022-09-10 18:10:08 +02:00
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.
2022-09-10 17:38:33 +02:00
Přemysl Eric Janouch d29e2cbfe8
xP: detect links in the log 2022-09-10 17:18:22 +02:00
Přemysl Eric Janouch 240fac4d90
xP: only allow vertical textarea resizing 2022-09-10 17:08:14 +02:00
Přemysl Eric Janouch c06894b291
xP: fix command sequence number generation 2022-09-10 17:05:39 +02:00
Přemysl Eric Janouch 9eaf78f823
xP: open links in a new tab/window 2022-09-10 17:05:39 +02:00
Přemysl Eric Janouch 5f02dddd11
xP: advance unread marker when the log is visible 2022-09-10 17:05:39 +02:00
Přemysl Eric Janouch 6f4a3f4657
xP: advance unread marker in an inactive tab 2022-09-10 17:05:39 +02:00
Přemysl Eric Janouch 6387145adc
xP: improve line wrapping 2022-09-10 17:05:38 +02:00
Přemysl Eric Janouch f3cc137342
xC-gen-proto: reduce enums to single bytes
That's already way more than we can possibly use.
2022-09-10 16:06:35 +02:00
Přemysl Eric Janouch 8c8e06b015
xP: enhance mobile experience
The left column used to jump around, and phones were near-unusable.
2022-09-08 17:11:10 +02:00
Přemysl Eric Janouch d7b6967b6f
xP: allow setting a fixed WS URI
For reverse proxies.
2022-09-08 17:11:01 +02:00
Přemysl Eric Janouch 8c3ee80b21
xC/xP: finalize and implement Event.PING 2022-09-08 02:45:37 +02:00
Přemysl Eric Janouch 3a165a595b
xC: use the relay protocol's RPC for pings 2022-09-08 01:48:46 +02:00
Přemysl Eric Janouch 4ba28c6ed3
xC/xP: mark highlights and buffer activity
And more or less finalize out the protocol for this use case.
2022-09-08 01:28:51 +02:00
Přemysl Eric Janouch 45aa0e8dfb
xP: remember to differentiate today 2022-09-07 19:23:47 +02:00
Přemysl Eric Janouch a2d5995cf5
xC: don't autoactivate buffers on forced JOINs 2022-09-07 19:10:49 +02:00
Přemysl Eric Janouch 2075c38fd1
xP: use an industry-standard name for a button 2022-09-07 17:33:38 +02:00
Přemysl Eric Janouch 88a7b1a2d9
xP: resolve various issues, mostly in styling 2022-09-07 17:26:43 +02:00
Přemysl Eric Janouch 2341228efd
xP: implement buffer line leakage
Rather than on redisplay, these get cleared on reconnect.
2022-09-07 15:34:52 +02:00
Přemysl Eric Janouch 2e3005d88b
xP: abort autocomplete when no longer applicable 2022-09-07 15:10:17 +02:00
Přemysl Eric Janouch 2b13f891c9
xP: clean up 2022-09-07 14:45:44 +02:00
Přemysl Eric Janouch d55402234c
xP: add a temporary lock for autoscroll 2022-09-07 13:53:28 +02:00
Přemysl Eric Janouch e3149b9abf
xP: support showing buffer logs 2022-09-07 13:53:28 +02:00
Přemysl Eric Janouch 976e7bfbb4
xP: separate input buffers 2022-09-07 13:04:30 +02:00
Přemysl Eric Janouch 5fd76ba6f9
xC: add a trivial /relay command
For there is otherwise no way of getting that information.
2022-09-07 13:01:34 +02:00
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).
2022-09-07 13:01:30 +02:00
Přemysl Eric Janouch 80089a4d65
xC: describe general.editor parse errors 2022-09-07 13:01:29 +02:00
Přemysl Eric Janouch 93b66b6a26
xP: scroll to bottom and focus the input on switch 2022-09-06 22:33:00 +02:00
Přemysl Eric Janouch ee1750c23c
xP: clean up 2022-09-06 22:33:00 +02:00
Přemysl Eric Janouch f5104c807d
xP: indicate connection state 2022-09-06 20:17:40 +02:00
Přemysl Eric Janouch 2c49a72d94
Update README 2022-09-06 19:59:22 +02:00
Přemysl Eric Janouch 8cd94b30f6
xP: implement tab completion
Currently it only goes for the longest common prefix.

Refactor WebSocket handling into an abstraction for our protocol.

The Go code generater finally needed fixing.
2022-09-06 19:41:05 +02:00
Přemysl Eric Janouch 2d30b6d115
xC: define critical bindings after el_source()
And use ^C rather than ^G.
2022-09-06 17:02:36 +02:00
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.
2022-09-06 17:02:02 +02:00
Přemysl Eric Janouch 31e9c6d2d5
xC/xP: pass timestamps with millisecond precision
Future-proofing the protocol.
2022-09-06 14:39:01 +02:00
Přemysl Eric Janouch d2af6cf64c
xP: convert links to link elements 2022-09-06 14:36:30 +02:00
Přemysl Eric Janouch d7b0b447b7
xC/xP: turn the action asterisk into a rendition 2022-09-05 23:22:09 +02:00
Přemysl Eric Janouch 25ad5ae0ec
xC/xP: fix colour values, and render them with CSS 2022-09-05 23:22:09 +02:00
Přemysl Eric Janouch 10f6072da9
xC: also force monospace for RPL_MOTDSTART
It tends to looks inconsistent without.
2022-09-05 23:07:20 +02:00
Přemysl Eric Janouch aceac26cbb
Fix up xP's module path, mention the licence 2022-09-05 23:07:20 +02:00
Přemysl Eric Janouch e250ae8255
Fix up README 2022-09-05 23:07:19 +02:00
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.
2022-09-05 14:26:00 +02:00