Přemysl Eric Janouch
13d2ff115b
xM: improve the bundle icon a bit
3 months ago
Přemysl Eric Janouch
9e4692bb09
xM: generate and use a bundle icon
3 months ago
Přemysl Eric Janouch
1c4343058d
Add a Cocoa frontend for xC
...
Some work remains to be done to get it to be even as good
as the Win32 frontend, but it's generally usable.
3 months ago
Přemysl Eric Janouch
e5156cddbf
xW: render leaked lines a bit more accurately
...
There is no need to reset all text attributes, just the colour.
4 months ago
Přemysl Eric Janouch
34521e61c1
xP/xW: fix buffer rename handling
...
Maintaining string pointers to the current/last buffer
means that renames invalidate them.
4 months ago
Přemysl Eric Janouch
c22dd67fc1
xC: send missing relay events for newly added servers
4 months 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.
4 months ago
Přemysl Eric Janouch
2f19e5a733
xW: improve command sending
4 months ago
Přemysl Eric Janouch
b9cdabca5d
xC: fix relay handling of missing log files
...
Intermediate error messages would trash the prepared static buffer.
4 months ago
Přemysl Eric Janouch
f60ca43156
xW: do not unnecessarily enter compatibility mode
4 months ago
Přemysl Eric Janouch
afe4e61f08
xW: mark a footgun
...
These messages are used by IsDialogMessage(), and use the WM_USER range.
4 months ago
Přemysl Eric Janouch
8d9d1c60ec
xW: make Up/Down go through input history
...
The input field isn't multiline, so this doesn't pose an issue.
Otherwise, we'd have to check if we're on the top line first.
5 months ago
Přemysl Eric Janouch
8c1464822b
xW: don't delay sending out pongs
5 months ago
Přemysl Eric Janouch
fcd1b8e011
xW: improve beeping
...
This adds yet another build dependency,
but it's better than the alternatives of handling it in code.
5 months ago
Přemysl Eric Janouch
3d345987c3
xW: cleanup
5 months ago
Přemysl Eric Janouch
3e37efd9cd
xW: show a connect dialog when run without args
5 months ago
Přemysl Eric Janouch
efb25b8aae
xW: un-highlight the icon when activating buffers
5 months ago
Přemysl Eric Janouch
e72793e315
xW: make newline before unread marker conditional
5 months ago
Přemysl Eric Janouch
5a412ab6e2
xW: handle WM_SYSCOLORCHANGE
5 months ago
Přemysl Eric Janouch
81bc578773
xW: add missing date change handling
5 months ago
Přemysl Eric Janouch
100de5ac2d
xC: fix Readline 6.3 compatibility
5 months ago
Přemysl Eric Janouch
c157d3369f
xP: make Page Up/Down in editor scroll the buffer
...
Just like in xW recently. It is unlikely that the user would want
to use these keys to move the cursor. Ctrl+Home/End still work,
as does holding Up/Down arrows.
Also stop using the deprecated and somewhat cryptic keyCode.
5 months ago
Přemysl Eric Janouch
8b5ea67aff
xW: fix Clang build
5 months ago
Přemysl Eric Janouch
6f02af814f
xW: store the largest program icon in PNG format
...
This shaves off about half a megabyte.
5 months ago
Přemysl Eric Janouch
90859107c8
xW: set version information
5 months ago
Přemysl Eric Janouch
0219dbd026
Add a Win32 frontend for xC
...
This has been more of an exercise. The performance of Msftedit.dll
is rather abysmal, and its interface isn't the most accomodating.
That said, the frontend is quite usable, at least on Windows 10+.
5 months ago
Přemysl Eric Janouch
1da4699a7a
Cleanup
5 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.
5 months ago
Přemysl Eric Janouch
b3e9218b23
Fix Cygwin build warnings
5 months ago
Přemysl Eric Janouch
bc8867eb22
Fix the integration test
...
IRCv3 capabilities broke it a bit.
Also change it so that it doesn't destroy existing configuration.
5 months ago
Přemysl Eric Janouch
ec33adba35
Update README.adoc
5 months ago
Přemysl Eric Janouch
6f596f1dcb
Move project version to file, add xS manual page
...
So far Go applications remain independent to handle Nix's inability
to easily combine them with the CMake part.
There is also no "install" target, because any packagers will want to
adjust installation paths manually, and there is no configure step.
5 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.
5 months ago
Přemysl Eric Janouch
8d9ce92758
README.adoc: update package information
5 months ago
Přemysl Eric Janouch
4bb9449e47
Fix the static analysis test
...
Adjust its query so that it doesn't cause a particular false positive.
6 months ago
Přemysl Eric Janouch
50f70f93bb
xC: fix a harmless copy-paste error
6 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.
7 months ago
Přemysl Eric Janouch
9932b35a10
xP: highlight hovered buffer list items
...
To make it apparent which one would be closed by a middle click.
8 months ago
Přemysl Eric Janouch
af5f209c53
xP: make middle click close buffers
...
As if they were tabs, to save pointless typing.
8 months ago
Přemysl Eric Janouch
6bfe577f1b
xP: make the buffer list selectable by Vimium
8 months ago
Přemysl Eric Janouch
1079189381
xP: render date changes as they happen
11 months ago
Přemysl Eric Janouch
c58b772905
xP: use the correct log function
11 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
1 year ago
Přemysl Eric Janouch
4b7258cba0
xP: fix ESC H detection on Macintosh systems
1 year ago
Přemysl Eric Janouch
9dc3dd02f3
xP: disable WebSocket compression on Safari
...
Wildly known to be broken.
1 year ago
Přemysl Eric Janouch
a7c3ed7cc1
xC: clean up
1 year ago
Přemysl Eric Janouch
807a8c37d9
Bump liberty, improve fallback manual page output
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
46d68eacce
Move protocol code generators to liberty
...
This part of the project is now more or less stable.
1 year ago
Přemysl Eric Janouch
86278c154c
Clean up protocol code generators
1 year ago
Přemysl Eric Janouch
941ee2f10c
xP: fix automatic scrolling down
...
Showing channel logs cancelled the AbortController forever.
Thus store it within vnodes.
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
4d99690b89
xS: parse project version from CMakeLists.txt
1 year ago
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.
1 year ago
Přemysl Eric Janouch
614fd98fc1
Update README
1 year ago
Přemysl Eric Janouch
5863040f93
Update documentation, clean up
1 year ago
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.
1 year ago
Přemysl Eric Janouch
8344b09c4f
hid: rename to xS before merge into xK
1 year ago
Přemysl Eric Janouch
4d50ed111a
Bump liberty, make use of its new asciiman.awk
1 year ago
Přemysl Eric Janouch
e15c9cba43
xP: use a dotted border for button focus
...
It's visible enough.
1 year ago
Přemysl Eric Janouch
66370387bc
Update documentation
1 year ago
Přemysl Eric Janouch
2bc3ac7b0d
Update screenshots
...
It's been five years since the previous xC screenshot was made.
1 year ago
Přemysl Eric Janouch
2c54f5a5dd
xP: make the overlay actually overlay
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
67d52a2d89
xP: fix up link detection
...
Allow balanced parantheses at the end of a link.
1 year ago
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.
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
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.
1 year ago
Přemysl Eric Janouch
d3628928b9
xC/xP: relay and render channel modes
1 year ago
Přemysl Eric Janouch
1f0e0b1ce4
xP: only care about RPC results if requested
...
This prevents "No response" errors from firing for most commands.
1 year ago
Přemysl Eric Janouch
919b12510b
xC/xP: relay and render channel topics
1 year ago
Přemysl Eric Janouch
414859d309
xP: improve paging
1 year ago
Přemysl Eric Janouch
5a7f2d16df
xP: clean up DOM attributes
1 year ago
Přemysl Eric Janouch
b8061b665d
Silence spurious compiler warnings
1 year ago
Přemysl Eric Janouch
807bdea2ea
Update README
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
00184811ea
xP: make the prompt look more xC-like
1 year ago
Přemysl Eric Janouch
ec20fdef7b
xP: show all completion options
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
ff243c1d11
xP: implement Readline's M-l, M-u, M-c
1 year ago
Přemysl Eric Janouch
e2ef7d668c
xP: implement Readline's M-b and M-f
1 year ago
Přemysl Eric Janouch
b979257c3a
xP: implement Readline's M-< and M->
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
b55bae50df
Update some documentation
1 year ago
Přemysl Eric Janouch
430968e5d5
xP: make non-connected states more apparent
1 year ago
Přemysl Eric Janouch
d5153fe354
xC/xP: implement M-H in the web frontend
1 year ago
Přemysl Eric Janouch
ee76186bef
xP: abandon the idea of a configuration file
1 year ago
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.
1 year ago
Přemysl Eric Janouch
e87cc90b5e
xP: improve comments in protocol code generator
1 year ago
Přemysl Eric Janouch
98b0a4ef3d
xP: further optimize JSON marshalling
1 year ago
Přemysl Eric Janouch
9cf44aa4dd
xP: speed up log decoding
1 year ago
Přemysl Eric Janouch
b53fc1918f
xP: fix log JSON serialization
1 year ago
Přemysl Eric Janouch
92f2f6895b
xP: use buffered reads
1 year ago
Přemysl Eric Janouch
c1d2e38840
xP: generate our own JSON marshallers
...
For non-trivial types, which are expensive to serialize
with encoding/json's struct reflection.
1 year ago
Přemysl Eric Janouch
f89f21a47f
xP: pass all events through one handler
...
This is a mild clean up.
1 year ago
Přemysl Eric Janouch
fa85ea8208
xP: parallelize event reception and sending
...
Still trying to make the frontend load tolerably fast,
still unsuccessfully.
1 year ago
Přemysl Eric Janouch
b728235b6c
xP: move to a WebSocket package with compression
...
Compression happens to be broken in Safari,
though luckily there are friendlier browsers one can use.
1 year ago
Přemysl Eric Janouch
d31ab67268
xC: mildly optimize relay traffic
1 year ago
Přemysl Eric Janouch
b2b3093e0e
xP: remove debugging protocol logs from JS
1 year ago
Přemysl Eric Janouch
a551e911ab
xP: adjust buffer list iteration and styling
...
M-a and M-! should iterate, rather than keep jumping back
to the same buffers.
The current item wasn't visible enough,
and it jumped around in my 1.5-scale Firefox.
1 year ago
Přemysl Eric Janouch
a61789637a
xP: deal with macOS/Blink for good
1 year ago
Přemysl Eric Janouch
8968100a28
xP: improve favicon behaviour
...
Make it black when disconnected, and orange when the document
is hidden but the current tab is highlighted.
1 year ago
Přemysl Eric Janouch
3b6c29d676
xC: silence some compiler warnings
1 year ago
Přemysl Eric Janouch
b4ee523628
xP: bind buffer iteration to M-PageUp/PageDown
1 year ago
Přemysl Eric Janouch
c3a52b9e4c
xP: indicate hidden buffer lines
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
36f77e74fb
xP: change the favicon when highlighted
1 year ago
Přemysl Eric Janouch
23deca45c9
xP: fix non-ASCII text completion
1 year ago
Přemysl Eric Janouch
62773acaa0
xP: beep on highlight
...
800 Hz seems like it could match a POST beep.
1 year ago
Přemysl Eric Janouch
7e3919e25d
xP: add basic buffer input history
...
Bind M-p and M-n as in xC.
Also make all our bindings reachable on macOS.
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
add670212f
xP: remember buffer input selections
1 year ago
Přemysl Eric Janouch
95aa89ee97
xP: bind M-h to toggle history, and adjust focus
1 year ago
Přemysl Eric Janouch
0bc2c12eec
xP: handle the M-Tab binding from xC
1 year ago
Přemysl Eric Janouch
3330683ad6
xP: handle M-a and M-! bindings from xC
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
36529a46fd
xP: also scroll to bottom on window resize
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
d29e2cbfe8
xP: detect links in the log
1 year ago
Přemysl Eric Janouch
240fac4d90
xP: only allow vertical textarea resizing
1 year ago
Přemysl Eric Janouch
c06894b291
xP: fix command sequence number generation
1 year ago
Přemysl Eric Janouch
9eaf78f823
xP: open links in a new tab/window
1 year ago
Přemysl Eric Janouch
5f02dddd11
xP: advance unread marker when the log is visible
1 year ago
Přemysl Eric Janouch
6f4a3f4657
xP: advance unread marker in an inactive tab
1 year ago
Přemysl Eric Janouch
6387145adc
xP: improve line wrapping
1 year ago
Přemysl Eric Janouch
f3cc137342
xC-gen-proto: reduce enums to single bytes
...
That's already way more than we can possibly use.
1 year ago
Přemysl Eric Janouch
8c8e06b015
xP: enhance mobile experience
...
The left column used to jump around, and phones were near-unusable.
1 year ago
Přemysl Eric Janouch
d7b6967b6f
xP: allow setting a fixed WS URI
...
For reverse proxies.
1 year ago
Přemysl Eric Janouch
8c3ee80b21
xC/xP: finalize and implement Event.PING
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
45aa0e8dfb
xP: remember to differentiate today
1 year ago
Přemysl Eric Janouch
a2d5995cf5
xC: don't autoactivate buffers on forced JOINs
1 year ago
Přemysl Eric Janouch
2075c38fd1
xP: use an industry-standard name for a button
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
2e3005d88b
xP: abort autocomplete when no longer applicable
1 year ago
Přemysl Eric Janouch
2b13f891c9
xP: clean up
1 year ago
Přemysl Eric Janouch
d55402234c
xP: add a temporary lock for autoscroll
1 year ago
Přemysl Eric Janouch
e3149b9abf
xP: support showing buffer logs
1 year ago
Přemysl Eric Janouch
976e7bfbb4
xP: separate input buffers
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
93b66b6a26
xP: scroll to bottom and focus the input on switch
1 year ago
Přemysl Eric Janouch
ee1750c23c
xP: clean up
1 year ago
Přemysl Eric Janouch
f5104c807d
xP: indicate connection state
1 year ago
Přemysl Eric Janouch
2c49a72d94
Update README
1 year ago
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.
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
d2af6cf64c
xP: convert links to link elements
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
aceac26cbb
Fix up xP's module path, mention the licence
1 year ago
Přemysl Eric Janouch
e250ae8255
Fix up README
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
Přemysl Eric Janouch
2160d03794
xC: slightly clean up character encodings
1 year ago
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.
1 year ago
Přemysl Eric Janouch
74470f1aa4
CMakeLists.txt: improve dependencies of xD-replies
1 year ago
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.
1 year ago
Přemysl Eric Janouch
b454920c81
xC: deal with conflicts when renaming buffers
1 year ago
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.
1 year ago
Přemysl Eric Janouch
313a65180e
xC: fix some corner cases around terminal handling
1 year ago
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.
1 year ago
Přemysl Eric Janouch
dbe95fa298
xC: make libedit history switching more reliable
1 year ago
Přemysl Eric Janouch
9d5e57a501
xC: improve libedit multiline input handling
1 year ago
Přemysl Eric Janouch
4ed6693f57
xC: erase remaining mentions of a "backlog helper"
1 year ago
Přemysl Eric Janouch
bea8d13227
xC: don't autosave when nothing changed
1 year ago
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.
1 year ago
Přemysl Eric Janouch
ca33adeeee
Update README
...
Stop pretending that xD has a future.
1 year ago
Přemysl Eric Janouch
b31e079256
Update README
1 year ago
Přemysl Eric Janouch
57597bf8a2
xC: move TEXT_* constants where they belong
1 year ago
Přemysl Eric Janouch
c0996fcbe7
xC: normalize BSD Editline's history behaviour
...
Now it's a realistically useful frontend.
1 year ago
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.
1 year ago
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
1 year ago
Přemysl Eric Janouch
a32916ffcf
xC: label code sections better
...
Introduce tildes as a new sublevel of markers.
1 year ago
Přemysl Eric Janouch
f7be510d26
xC: make fancy-prompt.lua alignment more reliable
...
And generally clean up that script.
1 year ago
Přemysl Eric Janouch
83764d1e1b
Fix xB.adoc parsing with current libasciidoc
1 year ago
Přemysl Eric Janouch
a717782480
Build with AsciiDoc as well as Asciidoctor
1 year ago
Přemysl Eric Janouch
c50c959f4d
Bump copyright years
1 year ago
Přemysl Eric Janouch
0dd7536b5a
Update README
1 year ago
Přemysl Eric Janouch
0750096827
xC: expand behaviour.editor_command examples
1 year ago
Přemysl Eric Janouch
49d9980662
xC: improve backlog helper capabilities
...
Snippets now receive positional parameters in the form of the buffer's
name in the locale encoding, and a filename if applicable
(we keep passing stdin along with the filename, which happens to
work out well for less(1)).
The default value of the configuration option also no longer uses
the "long prompt", which used to unhelpfully tell position in terms
of lines, but rather sets its own prompt that counts pages,
and makes sure to indicate the source buffer.
The main motivation behind this change is to make the 'v' command
work in less(1). LESSSECURE must be omitted from the snippet
for this to work.
Bump liberty to receive a config parser that allows for less
convoluted escaping.
1 year ago
Přemysl Eric Janouch
2f7fbcdc5d
CMakeLists.txt: fix a typo
1 year ago
Přemysl Eric Janouch
ef0cbe9a59
Rename the project
...
It is about to see some extensions, obsoleting the number three.
1 year ago
Přemysl Eric Janouch
1238233556
hid: bump the FD limit
1 year ago
Přemysl Eric Janouch
2d8808d795
utm-filter.lua: mention the passing of fbclid
1 year ago
Přemysl Eric Janouch
9c31fb69df
hid: make note of a deprecation
2 years ago
Přemysl Eric Janouch
a51c247d69
hid: add WebIRC support
...
Such clients can only be identified through STATS L.
It's a bit weird to abuse the "port" field this way,
but right now, it serves its purpose.
2 years ago
Přemysl Eric Janouch
f26e6361f3
hid: implement WALLOPS
2 years ago
Přemysl Eric Janouch
60d52ad479
xC, xD: add basic WALLOPS support
2 years ago
Přemysl Eric Janouch
b358f53ec3
Bump version, update NEWS
2 years ago
Přemysl Eric Janouch
2eb315f5c4
utm-filter.lua: add Facebook to the filter
2 years ago
Přemysl Eric Janouch
851c2ee548
CMakeLists.txt: fix macOS build
2 years ago
Přemysl Eric Janouch
f9848ed627
Update README
2 years ago
Přemysl Eric Janouch
686a39df38
CMakeLists.txt: slightly modernize
2 years ago
Přemysl Eric Janouch
9cea3fca91
Update NEWS
2 years ago
Přemysl Eric Janouch
5165f76b7c
xC: quote text coming from a bracketed paste
...
Not having this has caused me much annoyance over the years.
2 years ago
Přemysl Eric Janouch
92ac13f3c6
xC: allow passing the cursor position to editors
...
Add a configuration option to set a custom editor command,
different from EDITOR or VISUAL--those remain as defaults.
Implement substitutions allowing to convey cursor information
to VIM and Emacs (the latter of which is fairly painful to cater to),
and put usage hints in the configuration option's description.
This should make the editing experience a bit more seamless
for users, even though the position is carried over in one way only.
No sophisticated quoting capabilities were deemed necessary,
it is a lot of code already. The particular syntax is inspired
by .desktop files and systemd.
["/bin/sh", "-c", "vim +$2go \"$1\"", filename, position, line, column]
would be a slightly simpler but cryptic way of implementing this.
2 years ago
Přemysl Eric Janouch
df4ca74580
xC: make libedit autocomplete less miserable
...
Omitting even this hack was a huge hit to overall usability.
2 years ago
Přemysl Eric Janouch
9e297244a4
Update .gitignore
2 years ago
Přemysl Eric Janouch
d32ba133c0
Add clang-format configuration, clean up
2 years ago
Přemysl Eric Janouch
ce3976e1ec
xC: normalize ^J behaviour to follow Readline
...
For some reason Editline inserts it verbatim,
but in a more broken manner than it has with ^V^J.
2 years ago
Přemysl Eric Janouch
e5ed89646b
xC: fix newer libedit (2021-08-29)
2 years ago
Přemysl Eric Janouch
5e728f6d31
Bump version, update NEWS
2 years ago
Přemysl Eric Janouch
766f68e070
Bump liberty
2 years ago
Přemysl Eric Janouch
3dc5242d43
Bump liberty
...
Importing some minor unimportant fixes.
2 years ago
Přemysl Eric Janouch
fd9d5db1d2
xD: bump the soft file descriptor limit
...
By default it's a mere thousand connections, which is unnecessarily
crippling our advertised ability to handle lots of them.
Thanks for the advice, Lennart.
2 years ago
Přemysl Eric Janouch
cb480b4c71
xC: show orphan outcoming actions differently
...
It's hard to think of anything actually good here.
This would be an exceptionally rare thing to do, anyway.
2 years ago
Přemysl Eric Janouch
59cc423694
xC: abandon Freenode, embrace IRCnet
...
You're not fucking supposed to require a fucking registration
on fucking IRC networks.
2 years ago
Přemysl Eric Janouch
9323089d66
xC: mIRC didn't invent all IRC formatting
...
So let's not confuse ourselves.
2 years ago
Přemysl Eric Janouch
de7df1f60d
xC: refactor parsing of IRC formatting
2 years ago
Přemysl Eric Janouch
b082e82b62
xC: fix displaying IRC colours above 16
...
First, we indexed the colour array without a required offset.
Second, the data type was too small and overflowed negative.
Detected during a refactor, which this is a part of.
2 years ago
Přemysl Eric Janouch
b8dbc70a9c
xC: respect text formatting when autosplitting
2 years ago
Přemysl Eric Janouch
e0ad67a921
Bump version, update NEWS
2 years ago
Přemysl Eric Janouch
565edc15b4
README.adoc: be consistent in emphasizing
2 years ago
Přemysl Eric Janouch
4073b7329f
hid: reflect the original project's new name
...
Better keep all schizophreny in my own head, rather than all projects.
2 years ago
Přemysl Eric Janouch
5d285ffb96
xB: fix up the special IPC command's name
...
To reflect the new disorder.
2 years ago
Přemysl Eric Janouch
50057d5149
Come up with sillier names for the binaries
...
I'm not entirely sure, but it looks like some people might not like
jokes about the Holocaust.
On a more serious note, the project has become more serious over
the 7 or so years of its existence.
2 years ago
Přemysl Eric Janouch
1f64710e79
NEWS: improve wording
...
The phrase "input line" has already been used once in the file.
2 years ago
Přemysl Eric Janouch
027bf8666e
degesch: never bump our own chanuser
...
With IRCv3.2 echo-message, each successfully sent message would
move us to the front of the list used for chanuser autocomplete.
Such behaviour seems useless.
Also abandon the idea of bumping on other kinds of messages.
2 years ago
Přemysl Eric Janouch
7c7e12d8d5
degesch: start with lexically ordered chanusers
...
This makes nick autocompletion start in a non-arbitrary state.
2 years ago
Přemysl Eric Janouch
3cb93d24e8
degesch: order nick autocomplete by time
2 years ago
Přemysl Eric Janouch
acddfe2cfa
degesch: cleanup
2 years ago
Přemysl Eric Janouch
051c43a072
NEWS: fix a garbled up entry
...
Try not to commit, push and tag releases tired.
2 years ago
Přemysl Eric Janouch
0fe0b56280
Bump version, update NEWS
2 years ago
Přemysl Eric Janouch
f0281cf028
test-nick-colors: fix and streamline
...
A recent addition of an N_ELEMENTS macro invocation broke it.
2 years ago
Přemysl Eric Janouch
da5dd4eb91
degesch: make /ban and /unban respect EXTBAN
3 years ago
Přemysl Eric Janouch
10cb6651c0
degesch: expand/analyze a few TODO comments
3 years ago
Přemysl Eric Janouch
7f28dcd1ef
degesch: make "/help /command" work
...
Works for aliases as well. Resolves a TODO entry.
3 years ago
Přemysl Eric Janouch
61c52d793c
degesch: fix a GCC compiler warning
3 years ago
Přemysl Eric Janouch
b4dd0052ff
degesch: pick colours based on relative luminance
...
Replaces the inaccurate Rec. 709 luma we used to use before.
This is the first feature here that requires libm, which doesn't
seem to be a particularly great sacrifice.
Moreover, I've rectified that the input isn't linear in sRGB,
and then was even normalized wrong for the luma formula.
3 years ago
Přemysl Eric Janouch
e3c47c33fa
degesch: implement -=/+= for multiple values
...
It didn't make sense to have these unimplemented,
though perhaps += shouldn't enforce a set.
Sadly, autocomplete is fairly difficult for -= of multiple items.
3 years ago
Přemysl Eric Janouch
80c1e8f8eb
degesch: make /deop and /devoice default to self
...
It's pretty annoying to type `/mode -o <user>`, for little reason.
3 years ago
Přemysl Eric Janouch
c5f49ab1e6
censor.lua: strip colours, configurable formatting
...
Colour parsing code taken from prime.lua, and modified to strip.
3 years ago
Přemysl Eric Janouch
6f62b9c0c7
degesch: make CHGHOST update our own userhost info
...
I've almost forgotten that we use this for message spliting.
3 years ago
Přemysl Eric Janouch
c1d69e3630
degesch: add support for IRCv3 chghost
...
This is somewhat similar to a nick change.
3 years ago
Přemysl Eric Janouch
c75ef167f2
degesch: document the SASL EXTERNAL support
...
So far it's only been mentioned in the NEWS file,
which is definitely not sufficient.
It would be good to move this kind of stuff out from README.adoc.
3 years ago
Přemysl Eric Janouch
ddffc71abe
degesch: factor out irc_try_finish_cap_negotiation()
...
Too much repeated, non-obvious code.
3 years ago
Přemysl Eric Janouch
5a0b2d1c57
degesch: add trivial SASL EXTERNAL support
...
Just set `tls_cert`, and add `sasl` to `capabilities`.
3 years ago
Přemysl Eric Janouch
bb451a5050
degesch: support CAP DEL, request cap-notify
...
It doesn't require much effort to cancel capabilities, plus with
the newer version we get the respective notification anyway.
3 years ago
Přemysl Eric Janouch
61f15ead8a
degesch: don't CAP REQ when already registered
...
The list may later be requested manually, which shouldn't have
an unexpected side-effect.
3 years ago
Přemysl Eric Janouch
17f430043a
degesch: IRCv3.2 capability negotiation
...
We can receive and display capability values now.
3 years ago
Přemysl Eric Janouch
735096d76d
degesch: add a /squery command for IRCnet
3 years ago
Přemysl Eric Janouch
1ba59e6ee0
degesch: fix back-parsing outgoing CAP REQ
...
The bug has apparently been there since the beginning.
3 years ago
Přemysl Eric Janouch
f9ba682c0e
degesch: reset away-notify on disconnect
...
Forgotten to do it when adding the support for it.
3 years ago
Přemysl Eric Janouch
8e8ffe2c73
degesch: don't switch to channels while typing
...
We might just always set the highlighted bit on,
it would be consistent with PMs.
3 years ago
Přemysl Eric Janouch
d05c85833d
degesch: make a second SIGINT force-quit
...
Also fixed the possibility of eating a sequence of signals
as we reset the indicators /after/ we took action,
which creates a time window for races.
3 years ago
Přemysl Eric Janouch
2336340ad8
Bump version, update NEWS
3 years ago
Přemysl Eric Janouch
8f5dec0456
degesch: buffer creation cleanup
3 years ago
Přemysl Eric Janouch
3dc6ee9a5b
degesch: sanitize IRC nicknames/channel names
...
Don't trust the IRCd to have them in a subset of UTF-8.
3 years ago
Přemysl Eric Janouch
821ce04915
degesch: implement autocompletion for /set
...
It was super annoying to just slightly modify strings and
string arrays, now you can have existing values filled in.
complete_word() looks a bit cleaner now as well.
3 years ago
Přemysl Eric Janouch
2fe3b95ecd
README.adoc: improve backlog helper invocation
...
When fancy-prompt.lua is enabled, tho prompt is two-lined
and a simple PageUp would skip one line of content.
It works slightly better than it should: when there's under
a page of content to scroll, there is no shift at all.
3 years ago
Přemysl Eric Janouch
32c99c9d66
kike: avoid crash with a wildcard address
...
A most unfortunate 06d3b3b
regression, mostly stemming from
forgetting why the `break` was in place and not documenting it.
3 years ago
Přemysl Eric Janouch
cd7133e173
README.adoc: minor documentation update
3 years ago
Přemysl Eric Janouch
b4ed52015a
degesch: mark some issues for later resolution
3 years ago
Přemysl Eric Janouch
271689da99
fancy-prompt.lua: allow non-ASCII buffer names
...
It may theoretically bite us in the ass with non-UTF-8-compliant
IRC servers, and certainly with double-width characters.
3 years ago
Přemysl Eric Janouch
38c23d0d38
degesch: fix fancy-prompt.lua with libedit
...
Partly by unifying the interface for prompt hooks to match GNU Readline.
3 years ago
Přemysl Eric Janouch
439af8884c
degesch: make PageUp actually scroll a page up
...
Now that the input to the backlog helper is wrapped the same way
as what we display. There's a slight issue always triggered by
fancy-prompt.lua where a multiline prompt/command line makes less(1)
go too high up but it's nothing too important.
3 years ago
Přemysl Eric Janouch
8ccf38ad76
Minor rebranding
...
There's nothing experimental about this project anymore. It's stable.
Maybe we should add a photo of Hitler or something.
3 years ago
Přemysl Eric Janouch
47a4c8beca
CMakeLists.txt: clean up OpenBSD support
...
A few things might have changed.
3 years ago
Přemysl Eric Janouch
1de4a2ae34
Bump version, update NEWS
3 years ago
Přemysl Eric Janouch
53cc52e320
Add real manual pages
...
To some extent they duplicate the README but from a different angle.
3 years ago
Přemysl Eric Janouch
cbe4009308
degesch: fix Lua 5.3 build
...
Regression from the last release.
3 years ago
Přemysl Eric Janouch
06d3b3bd2b
kike: ensure NULL binds to both IPv4 and IPv6
3 years ago
Přemysl Eric Janouch
132e4a38b8
kike: document the "operators" setting usefully
...
Now our user just needs to be able to guess that it's a hex string.
3 years ago
Přemysl Eric Janouch
8429995cb6
ZyklonB: don't look for plugins in /usr/lib
...
It's quite unlikely that this project will ever see compiled plugins.
3 years ago
Přemysl Eric Janouch
03ed097353
ZyklonB: use XDG paths by default
...
Install plugins to /usr/share rather than /usr/lib since they're
arch-independent. Many precedents can be found for scripted plugins
in /usr/share and fewer for /usr/lib.
Look for plugins in all XDG data directories and repurpose
the "plugin_dir" setting to override this behaviour.
This adds some complexity to the bot but unifies the project.
It might make sense to remove the "plugin_dir" setting.
3 years ago
Přemysl Eric Janouch
b68e5ceedc
README.adoc: fix GPL notice
3 years ago
Přemysl Eric Janouch
0d0d0b6863
CMakeLists.txt: omit end{if,foreach} expressions
...
Their usefulness was almost negative.
3 years ago
Přemysl Eric Janouch
577fd1b446
CMakeLists.txt: clean up and fix build rules
...
The multiple-output custom command ran separately for each binary.
3 years ago
Přemysl Eric Janouch
500c83231f
Bump minimum CMake version to 3.0
...
A nice, round number.
3 years ago
Přemysl Eric Janouch
4b7649211a
Bump copyright years
3 years ago
Přemysl Eric Janouch
9afa4944b6
Bump liberty
...
Testing in production is discouraged.
3 years ago
Přemysl Eric Janouch
e58ce1f02e
Bump liberty, test UTF-8 sanitization
3 years ago
Přemysl Eric Janouch
98e95de90e
degesch: add a hidden LOMEM compile option
3 years ago
Přemysl Eric Janouch
383f6af344
Improve OpenSSL integration
...
Ensure the error stack is cleared after errors are processed.
Also handle NULL returns safely.
Makes the debug mode spew more data, though almost none of
the contexts is in reaction to network peer data.
3 years ago
Přemysl Eric Janouch
13c85aa361
degesch: comment about improving word wrapper
3 years ago
Přemysl Eric Janouch
419b02e9f7
degesch: slightly cut down memory usage
...
The worst offenders are actually OpenSSL and Lua, this is
mostly about a preventable surprise.
This is more correct because we mix escape sequences for
attributes with text, however in practice no one will use
shit-jizz with degesch.
It is also a clean-up: "struct line_char" has been almost
halved in size. We used to use it as a cache and now we
recompute the multibyte sequence.
Of course, it'd be best to get rid of the linked list but
it would take a very long time to rewrite the algorithm.
Plus, it's not certain that it could be improved by much.
The change in "struct line_char_attrs" is merely cosmetical.
3 years ago
Přemysl Eric Janouch
c89032e4e0
degesch: silence the compiler
3 years ago
Přemysl Eric Janouch
474657c7b3
degesch: fix processing WHO replies
...
We don't want to print the reply for ourselves
nor for unknown or PM-only users.
3 years ago
Přemysl Eric Janouch
323a372389
degesch: update an outdated comment
3 years ago
Přemysl Eric Janouch
76f4e6faa6
degesch: cleanup
...
Channels now need a reference to the server,
so don't pass it to functions.
3 years ago
Přemysl Eric Janouch
2c48bc9959
degesch: watch away statuses with away-notify/WHO
...
We're not going to implement polling. Polling is complex.
Freenode supports away-notify.
3 years ago
Přemysl Eric Janouch
e1a4fab40d
degesch: don't eat NAMES for unknown channels
3 years ago
Přemysl Eric Janouch
1ff80ddd10
degesch: stubplement TAGMSG
3 years ago
Přemysl Eric Janouch
12c8ace6a1
degesch: clarify handling of unexpected JOINs
...
I got confused about safety.
3 years ago
Přemysl Eric Janouch
49706efe86
degesch: improve a function name
...
3_3_3_3_4 looks awful and it wasn't even precise.
3 years ago
Přemysl Eric Janouch
9d8a7a10d0
Tolerate cut-off UTF-8 messages
...
I've had this happen to me on Russian channels and it's highly
annoying because you lose the entire message. On the contrary,
this at worst screws up the last few characters of it.
Closes #2
3 years ago
Přemysl Eric Janouch
73c3ca3633
Bump liberty
3 years ago
Přemysl Eric Janouch
559232ccb5
kike: fix up debug messages
3 years ago
Přemysl Eric Janouch
6837fdb7c4
Bump liberty
...
We've moved most of our configuration test in there.
3 years ago
Přemysl Eric Janouch
2759c311fa
kike: use read/write rather than recv/send
...
read/write support non-sockets, otherwise they're the same here.
This is in preparation for fuzzing.
3 years ago
Přemysl Eric Janouch
529a46ad41
degesch: add support for crossed-out text
...
Assuming that sgr0 includes rmxx behaviour, which should be true.
3 years ago
Přemysl Eric Janouch
f9ef123171
degesch: support more colours
3 years ago
Přemysl Eric Janouch
f51dd936f5
degesch: prefer British spelling in comments
...
Let's say the rest is in Oxford spelling, not sure about it.
3 years ago
Přemysl Eric Janouch
7ce1615021
prime.lua: skip colour sequences, add config
...
Colour sequence skipping is somewhat involved, we might want to
add a helper generator to the "degesch" Lua library, in the form of
{substring, is_formatting}.
formatter_parse_mirc() isn't useful, a pure Lua implementation
would be more appropriate (where do we put that?)
3 years ago
Přemysl Eric Janouch
270d9017e9
degesch: improve ad-hoc IRC parsers in plugins
3 years ago
Přemysl Eric Janouch
ee5cac4f21
degesch: add a plugin to highlight prime numbers
3 years ago
Přemysl Eric Janouch
59ac02d91f
Bump liberty
...
resolve_relative_runtime_unique_filename() used to have a bug.
3 years ago
Přemysl Eric Janouch
d78cf10f04
degesch: fix prompt not showing up after change
...
When a backlog helper was running and the prompt changed,
it failed to restore within input_rl_show().
Since before input_rl_show() is called the prompt is empty
and in input_rl__restore() it will be changed to the new
version, just skip invoking any Readline functions within
input_rl_set_prompt() when the prompt is hidden. Simple
and straight-forward.
This bug is what I hinted at in the previous commit.
3 years ago
Přemysl Eric Janouch
572a7cb804
README.adoc: update degesch instructions
...
There is still one outstanding issue with the backlog helper, though...
3 years ago
Přemysl Eric Janouch
03e8ad0a3e
degesch: enable wrapping in the backlog by default
...
The main issue has been eliminated.
3 years ago
Přemysl Eric Janouch
f665f147ff
degesch: resolve the issue with less(1) and SO/SI
...
Now that I've learnt what exactly these characters are and how they
ended up in attribute strings, we can just eliminate them and disable
`backlog_helper_strip_formatting`. Saner defaults, again.
I've also added skipping of terminfo delay sequences, so now it's less
of an issue to pipe raw attribute sequences into backlog helpers.
3 years ago
Přemysl Eric Janouch
9819b75b64
degesch: make the unread marker look a bit fancier
...
Upstreamed after who knows how long, in a slightly modified form.
The marker looks fairly ugly without this and defaults should be
desirable.
It's possible to get the previous behaviour by resetting the separator
character in the configuration to an empty string. It might be
a better idea in general to just disallow this value with a special
validation callback, so that there's only one way to do it.
However given that without fancy-prompt.lua, an optional plugin,
the long line stands out considerably, it might actually be a good
idea to keep the old behaviour as the default. I'm torn.
Right now we don't care about the situation where the string occupies
more than one terminal cell or is some Unicode BS. User's problem.
3 years ago
Přemysl Eric Janouch
f716e7601f
degesch: fix a typo
3 years ago
Přemysl Eric Janouch
eea761d9f7
degesch: make use of arguments in _new() functions
3 years ago
Přemysl Eric Janouch
dd8e543a20
degesch: save some memory on channel users
...
`struct str` was mostly unnecessary, we can save 16+ bytes,
while performance and code readability is mostly unchanged.
3 years ago
Přemysl Eric Janouch
dc8b580574
degesch: expand comment about character encoding
3 years ago
Přemysl Eric Janouch
2d9856cca8
Bump liberty, use iscntrl_ascii()
3 years ago
Přemysl Eric Janouch
289193dd1a
kike: silence an annoying build warning
3 years ago
Přemysl Eric Janouch
405848deeb
degesch: remove unnecessary quotes from macro defs
...
The behaviour is defined by the standard.
3 years ago
Přemysl Eric Janouch
b9991d4766
degesch: update comment to reflect reality
3 years ago
Přemysl Eric Janouch
1ff82ee907
Update NEWS, bump version
3 years ago
Přemysl Eric Janouch
57e92fbb85
Update copyright years
3 years ago
Přemysl Eric Janouch
a04dfc59fe
README: improve libasciidoc compatibility
3 years ago
Přemysl Eric Janouch
7f69655c54
README: discourage from using libedit
3 years ago
Přemysl Eric Janouch
444f97b357
degesch: work around a libedit attribute issue
3 years ago
Přemysl Eric Janouch
ed7130a664
degesch: fix a libedit crash
3 years ago
Přemysl Eric Janouch
ba1c2357af
degesch: fix Lua 5.4 build
...
Not sure about how well it works yet.
Lua 5.3 is still made preferential by the order of pkgconfig lookup.
3 years ago
Přemysl Eric Janouch
a48023553e
degesch: fix a pointer operation in the libedit layer
3 years ago
Přemysl Eric Janouch
d29317b29c
Bump liberty
3 years ago
Přemysl Eric Janouch
deb096a0e9
Name change
3 years ago
Přemysl Eric Janouch
722fc48a30
CMakeLists.txt: add a comment
3 years ago
Přemysl Eric Janouch
6421892ef3
Name change
3 years ago
Přemysl Eric Janouch
6287e20919
degesch: fix log reopening after a buffer rename
4 years ago
Přemysl Eric Janouch
07d59db5ab
degesch: clean up unused functions
4 years ago
Přemysl Eric Janouch
2909b017fb
Fix handling terminal resizes while the terminal is suspended
...
GNU Readline has a misfeature.
4 years ago
Přemysl Eric Janouch
64d4009427
degesch: fix getpwuid usage
...
The "entry not found" case doesn't have to touch errno.
4 years ago
Přemysl Eric Janouch
a1994865a9
hid: mention Go 1.12 alternative to TLS autodetection
5 years ago
Přemysl Eric Janouch
4179a9bd49
Update NEWS, bump version
5 years ago
Přemysl Eric Janouch
aa4e86c2a0
degesch: add a comment about ENOTCONN
5 years ago
Přemysl Eric Janouch
5bbe9ceef8
Update NEWS
5 years ago
Přemysl Eric Janouch
f80226620c
kike: fix wildcard handling in WHOIS
5 years ago
Přemysl Eric Janouch
2fccfb10f7
kike: allow STATS with no parameters
...
We were in plain conflict with RFC 2812 for no apparent reason.
5 years ago
Přemysl Eric Janouch
c285f3a266
hid: clean up/finalize logging
5 years ago
Přemysl Eric Janouch
e2c34afbc6
hid: move off of the log package
...
We don't spam with useless messages without -debug any longer.
5 years ago
Přemysl Eric Janouch
e2c8fb6e33
hid: port logging facilities
...
Though the regular mode now has timestamps and a new mode for systemd
has been added.
5 years ago
Přemysl Eric Janouch
5c7ac9a92b
hid: cleanups
...
No functional changes.
5 years ago
Přemysl Eric Janouch
3fee7e8051
hid: port IRC tests from liberty, fix tag parsing
5 years ago
Přemysl Eric Janouch
09d7a10b69
hid: rename connCloseWrite to connCloseWriter
5 years ago
Přemysl Eric Janouch
e9bcd0fa53
hid: add the first tests
...
This has actually revealed a problem in the SSL 2.0 detection.
5 years ago
Přemysl Eric Janouch
3815795d59
hid: fix SSL 2.0 autodetection
5 years ago
Přemysl Eric Janouch
fd1538251a
hid: add support for customized replies
5 years ago
Přemysl Eric Janouch
ffad1f15a5
hid: unify exit codes with the flag package
5 years ago
Přemysl Eric Janouch
765b741a67
hid: cleanups
5 years ago
Přemysl Eric Janouch
ab66a60703
hid: fix listener shutdown
5 years ago
Přemysl Eric Janouch
9ee07873ea
hid: fix nickname verification in the user MODE message
5 years ago
Přemysl Eric Janouch
7ee7dc5f9b
hid: port default formatting strings to fmt
5 years ago
Přemysl Eric Janouch
fea801ac7a
hid: ircSendToRoommates -> ircNotifyRoommates
...
Should be clearer.
5 years ago
Přemysl Eric Janouch
cbdbfc3d64
hid: figured out how to port timeouts
5 years ago
Přemysl Eric Janouch
3610f98d67
hid: another round of general code cleanups
5 years ago
Přemysl Eric Janouch
b9eddabedd
kike: explicit conversion from pointer to boolean
...
In practice the values in the map may only be 1 or 0, so it doesn't
matter, but in C it is better to be safe than sorry.
5 years ago
Přemysl Eric Janouch
50ed74a740
kike: break out properly on errors in MODE processing
...
We used to only abort the inner loop, which was insufficient.
5 years ago
Přemysl Eric Janouch
3ca08badc2
kike: reset user modes while processing USER
...
Since the processing always succeeds and registration cannot be undone,
this doesn't seem to fix any real issue.
5 years ago
Přemysl Eric Janouch
b0f5b8c10d
kike: do nothing on equivalent renicks
5 years ago
Přemysl Eric Janouch
d87d533078
kike: code cleanups
5 years ago
Přemysl Eric Janouch
3c47e5b354
kike: fix grammar in hostname validation
...
This has an entry in RFC 2812 errata, although it's held for document
update. We can afford the strictness.
5 years ago
Přemysl Eric Janouch
54d3406175
kike: fix grammar in config item description
5 years ago
Přemysl Eric Janouch
f79dd027e9
kike: add a comment about identifier encoding
5 years ago
Přemysl Eric Janouch
e77495f316
hid: bringup of what we have this far
5 years ago
Přemysl Eric Janouch
2f841d214f
hid: port configuration and initialization
...
All the basic elements should be there now, we just need to port PING
timers and fix some remaining issues and we're basically done.
5 years ago
Přemysl Eric Janouch
051bbedc2f
hid: port IRC 3.2 message tag parsing, unused
5 years ago
Přemysl Eric Janouch
404aa8c9cc
hid: use time.Time and time.Duration
...
It improves the code significantly over explicit int64 conversions.
Despite carrying unnecessary timezone information, time.Time also
carries a monotonic reading of time, which allows for more precise
measurement of time differences.
5 years ago
Přemysl Eric Janouch
90129ee2bc
hid: port MODE, STATS, LINKS, KILL
...
Now all the commands have been ported but we desperately need to parse
a configuration file for additional settings yet.
5 years ago
Přemysl Eric Janouch
50e7f7dca5
hid: port PART, KICK, INVITE, JOIN, AWAY, ISON, ADMIN, DIE
5 years ago
Přemysl Eric Janouch
3322fe2851
hid: port PRIVMSG, NOTICE, NAMES, WHO, WHOIS/WAS, TOPIC, SUMMON, USERS
5 years ago
Přemysl Eric Janouch
208a8fcc7e
hid: first round of mixed fixes and cleanups
5 years ago
Přemysl Eric Janouch
2d287752d4
hid: add a work in progress IRC daemon
...
The port is more than viable but it's also sort of all-or-nothing
and versioning needs have come before I've had a chance to finish it.
5 years ago