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
Přemysl Eric Janouch
2160d03794
xC: slightly clean up character encodings
2022-09-02 14:05:03 +02:00
Přemysl Eric Janouch
36f8c7639f
xC: clean up logging
...
Don't treat rendition as flags, separate the two.
Also treat join and part arrows as rendition.
2022-09-02 12:31:42 +02:00
Přemysl Eric Janouch
74470f1aa4
CMakeLists.txt: improve dependencies of xD-replies
2022-09-02 12:25:37 +02:00
Přemysl Eric Janouch
3af1765261
xC: make alias creation tolerant to prefixed names
...
Those would not work, so skip the first forward slash.
Note that liberty can save arbitrary alias names since 6e93119,
making the removed comment about checking outdated.
2022-08-29 15:22:11 +02:00
Přemysl Eric Janouch
b454920c81
xC: deal with conflicts when renaming buffers
2022-08-29 15:05:02 +02:00
Přemysl Eric Janouch
ef8f25d1dd
xC: deal with any identifier conflicts
...
Invalid UTF-8 converted to UTF-8 may conflict with that
which was valid UTF-8 in the first place.
2022-08-29 14:41:23 +02:00
Přemysl Eric Janouch
313a65180e
xC: fix some corner cases around terminal handling
2022-08-29 14:05:33 +02:00
Přemysl Eric Janouch
91db8e6e54
xC: use the correct way of resetting libedit
...
The only remaining major annoyance is incremental search
seemingly not giving back control.
2022-08-29 10:30:45 +02:00
Přemysl Eric Janouch
dbe95fa298
xC: make libedit history switching more reliable
2022-08-29 09:20:56 +02:00
Přemysl Eric Janouch
9d5e57a501
xC: improve libedit multiline input handling
2022-08-29 08:31:44 +02:00
Přemysl Eric Janouch
4ed6693f57
xC: erase remaining mentions of a "backlog helper"
2022-08-29 08:22:09 +02:00
Přemysl Eric Janouch
bea8d13227
xC: don't autosave when nothing changed
2022-08-29 08:22:09 +02:00
Přemysl Eric Janouch
ecebeace0e
Don't wrap xD-gen-replies in a shell script
...
AWK doesn't seem to be that friendly to shebangs, so let env,
also required for changing LC_ALL, locate it in PATH.
2022-08-29 06:07:49 +02:00
Přemysl Eric Janouch
ca33adeeee
Update README
...
Stop pretending that xD has a future.
2022-08-27 16:53:56 +02:00
Přemysl Eric Janouch
b31e079256
Update README
2022-08-27 16:18:14 +02:00
Přemysl Eric Janouch
57597bf8a2
xC: move TEXT_* constants where they belong
2022-08-27 15:06:28 +02:00
Přemysl Eric Janouch
c0996fcbe7
xC: normalize BSD Editline's history behaviour
...
Now it's a realistically useful frontend.
2022-08-27 15:06:27 +02:00
Přemysl Eric Janouch
03d8ea4c5a
xC: general.save_on_quit -> general.autosave
...
Power outages and similar situations make the former unreliable,
so get rid of any false promise it might seem to give.
2022-08-27 09:15:38 +02:00
Přemysl Eric Janouch
dc002a2db4
xC: revise configuration options
...
This commit constitutes a breaking change to old configurations.
All behaviour.* options have now become general.*, with the following
few renames as exceptions:
- editor_command -> editor
- backlog_helper -> pager
- backlog_helper_strip_formatting -> pager_strip_formatting
2022-08-27 09:15:37 +02:00