aacf1b1d47
lxdrgen-go: improve usability
...
Turning union tags into read-only methods of actual types:
- eliminates duplicated JSON unmarshalling of tags,
- makes AppendTo/ConsumeFrom symmetrical in nature,
- eliminates duplicated AppendTo code,
- eliminates trivial AppendTo methods for subtypes without fields,
- gives us an opportunity to use a more specific interface than "any"
(the type being anonymous is an acknowledged inconvenience).
Implementing our own json.Marshalers some time ago
(for performance reasons) has made this easier to implement.
Also rename "Interface" fields to more suitable "Variant".
2024-11-07 11:01:41 +01:00
49d7cb12bb
Fix calloc argument order
2024-08-08 09:34:33 +02:00
fdf845d0bd
const-qualify configuration schema items in tests
2024-08-08 09:21:16 +02:00
75fc6f1c37
const-qualify configuration schema items
2024-08-08 08:53:49 +02:00
8a8437634a
MPD client: fix argument quoting
2024-08-07 22:04:00 +02:00
e78b410a6a
MPD client: save the protocol version
2024-08-07 22:03:08 +02:00
bf44e827e8
liberty-xui: mention libgrapheme
2024-07-10 17:38:39 +02:00
8386af0420
Silence an OpenBSD linker warning
2024-04-10 17:54:34 +02:00
f04cc2c61e
Add MinGW-w64 CMake toolchain files
2024-04-09 17:01:07 +02:00
969a4cfc3e
liberty-xui: clip terminal drawing
2024-02-27 00:27:54 +01:00
ad5b2fb8cd
asciiman: mildly improve compatibility
...
git manual pages render a little bit more sensibly now.
2024-02-12 10:57:23 +01:00
2a1f17a8f7
liberty-xdg: add desktop entry parser tests
...
And fix a discovered bug.
2024-02-10 12:49:01 +01:00
8d56fae41b
liberty-xdg: actually make libpng optional
2024-02-10 12:20:44 +01:00
0239a4242a
liberty-xdg: fix usage of volatile
2024-02-10 10:16:27 +01:00
1966b81b4d
liberty-xui: tolerate zero-area ConfigureNotify
...
Happens when launching from a fullscreen window in i3.
2024-02-10 10:07:09 +01:00
f8c6ac2ed1
Make liberty-xui load PNG program icons
...
X11 applications now have a dependency on libpng.
This makes use of a new related liberty-xdg module,
which can be used separately.
2024-02-10 10:07:09 +01:00
f32bcbd7f4
Add helper functions for reading binary numbers
...
And make use of them.
2024-02-10 07:02:54 +01:00
c5424e6992
Comment on write_file_safe()'s actual safety
2024-02-10 06:16:27 +01:00
cb9d162a26
Add a CMake module for icon conversions
2024-02-10 05:39:15 +01:00
db6357db9a
CMakeLists.txt: declare compatibility with 3.27
...
Sadly, the 3.5 deprecation warning doesn't go away after this.
2023-08-01 03:22:17 +02:00
7a0cb13a1a
MPD client: fix build on OpenIndiana
2023-07-24 08:33:45 +02:00
b6c54073cd
Find ncursesw on OpenIndiana
2023-07-24 08:09:08 +02:00
62166f9679
lxdrgen-cpp-win32: fix return value handling
2023-07-10 09:34:42 +02:00
2edc9c6fd1
Add a C++ backend for LibertyXDR
...
Also change the C backend so that it also de/serializes
unions without any other fields besides the tag.
2023-07-07 16:43:52 +02:00
f78f8a70f1
lxdrgen-swift: fix prefix handling
...
"Any prefix will work, so long as it's 'Relay'."
2023-07-06 11:01:51 +02:00
be9a3e693e
lxdrgen-swift: fix warnings with exhaustive unions
2023-07-06 06:54:23 +02:00
53197b51e5
Add a Swift backend for LibertyXDR
2023-07-06 06:54:22 +02:00
8466d0d850
CMakeLists.txt: link properly
2023-07-04 08:08:29 +02:00
4c2874649d
liberty-xui: fix build on systems without A_ITALIC
2023-07-04 06:40:54 +02:00
717c301207
lxdrgen: fix decapitalization
...
decapitalize() is typically called on snaketocamel() output,
which always makes the first letter uppercase.
2023-06-28 16:24:59 +02:00
091f92bab3
liberty-xui: fix a build warning
...
On macOS, TIOCGWINSZ seems to be defined earlier.
2023-06-28 16:24:59 +02:00
556c25855e
Fix a CMake warning
2023-06-20 01:24:29 +02:00
d01a1ff034
Turn liberty-tui into a terminal/X11 hybrid
...
Importing code from nncmpp, adjusting it to work with hex as well.
2023-06-19 13:06:12 +02:00
bd1013f16a
Parse block attribute list lines
...
This code is of strategic importance, but its output is so far unused.
2023-06-11 10:02:16 +02:00
29bf109a51
asciiman: improve attribute handling
2022-10-09 18:43:37 +02:00
0e86ffe7c3
asciiman: fixes, improve mandoc compatibility
2022-10-09 01:01:08 +02:00
cbeb4e3133
Improve documentation
2022-10-04 01:46:41 +02:00
0f3ed14575
asciiman: support attribute passing
2022-09-30 18:13:01 +02:00
089593bb0f
asciiman: render libertyxdr.adoc properly
2022-09-30 15:01:14 +02:00
035bfe5e81
Document the recently added scripts
2022-09-30 03:09:04 +02:00
ebbe7a1672
Import protocol code generator from xK, add tests
...
Also add a VIM syntax highlighting file.
This also fixes some previously untriggered bugs.
2022-09-30 03:06:36 +02:00
4c3837ae2c
cmake-parser: clean up
2022-09-28 00:06:51 +02:00
af2756ee01
Add a rudimentary CMake script parser
2022-09-27 23:27:06 +02:00
688c458095
asciiman: fix the first line of output
2022-09-25 21:11:45 +02:00
34460ca715
asciiman: improve command escaping
2022-09-25 20:55:51 +02:00
9883caf849
Add a stupid AsciiDoc to manual page converter
...
Most of my projects that could need it make use of liberty.
2022-09-25 20:07:10 +02:00
22a121383f
Allow for overriding feature test macros
2022-09-11 00:44:14 +02:00
0e89bb9f46
Add some consts to function arguments
2022-09-01 12:44:58 +02:00
63aed8f0fd
Fix up the PEG change from the last commit
...
This is not a regular expression.
2022-08-14 19:09:52 +02:00
f545be725d
Extend string syntax in config
...
And actually test the results of string parsing.
2022-08-14 18:14:21 +02:00