Commit Graph

195 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 492815c8fc
lxdrgen-go: fix compatibility with 32-bit targets
Alpine 3.20 Success Details
2024-11-09 17:06:46 +01:00
Přemysl Eric Janouch aacf1b1d47
lxdrgen-go: improve usability
Alpine 3.20 Success Details
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
Přemysl Eric Janouch 49d7cb12bb
Fix calloc argument order
Alpine 3.20 Success Details
2024-08-08 09:34:33 +02:00
Přemysl Eric Janouch fdf845d0bd
const-qualify configuration schema items in tests 2024-08-08 09:21:16 +02:00
Přemysl Eric Janouch 75fc6f1c37
const-qualify configuration schema items
Alpine 3.20 Success Details
2024-08-08 08:53:49 +02:00
Přemysl Eric Janouch 8a8437634a
MPD client: fix argument quoting
Alpine 3.20 Success Details
2024-08-07 22:04:00 +02:00
Přemysl Eric Janouch e78b410a6a
MPD client: save the protocol version 2024-08-07 22:03:08 +02:00
Přemysl Eric Janouch bf44e827e8
liberty-xui: mention libgrapheme 2024-07-10 17:38:39 +02:00
Přemysl Eric Janouch 8386af0420
Silence an OpenBSD linker warning
Alpine 3.19 Success Details
2024-04-10 17:54:34 +02:00
Přemysl Eric Janouch f04cc2c61e
Add MinGW-w64 CMake toolchain files
Alpine 3.19 Success Details
2024-04-09 17:01:07 +02:00
Přemysl Eric Janouch 969a4cfc3e
liberty-xui: clip terminal drawing 2024-02-27 00:27:54 +01:00
Přemysl Eric Janouch ad5b2fb8cd
asciiman: mildly improve compatibility
git manual pages render a little bit more sensibly now.
2024-02-12 10:57:23 +01:00
Přemysl Eric Janouch 2a1f17a8f7
liberty-xdg: add desktop entry parser tests
And fix a discovered bug.
2024-02-10 12:49:01 +01:00
Přemysl Eric Janouch 8d56fae41b
liberty-xdg: actually make libpng optional 2024-02-10 12:20:44 +01:00
Přemysl Eric Janouch 0239a4242a
liberty-xdg: fix usage of volatile 2024-02-10 10:16:27 +01:00
Přemysl Eric Janouch 1966b81b4d
liberty-xui: tolerate zero-area ConfigureNotify
Happens when launching from a fullscreen window in i3.
2024-02-10 10:07:09 +01:00
Přemysl Eric Janouch 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
Přemysl Eric Janouch f32bcbd7f4
Add helper functions for reading binary numbers
And make use of them.
2024-02-10 07:02:54 +01:00
Přemysl Eric Janouch c5424e6992
Comment on write_file_safe()'s actual safety 2024-02-10 06:16:27 +01:00
Přemysl Eric Janouch cb9d162a26
Add a CMake module for icon conversions 2024-02-10 05:39:15 +01:00
Přemysl Eric Janouch 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
Přemysl Eric Janouch 7a0cb13a1a
MPD client: fix build on OpenIndiana 2023-07-24 08:33:45 +02:00
Přemysl Eric Janouch b6c54073cd
Find ncursesw on OpenIndiana 2023-07-24 08:09:08 +02:00
Přemysl Eric Janouch 62166f9679
lxdrgen-cpp-win32: fix return value handling 2023-07-10 09:34:42 +02:00
Přemysl Eric Janouch 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
Přemysl Eric Janouch f78f8a70f1
lxdrgen-swift: fix prefix handling
"Any prefix will work, so long as it's 'Relay'."
2023-07-06 11:01:51 +02:00
Přemysl Eric Janouch be9a3e693e
lxdrgen-swift: fix warnings with exhaustive unions 2023-07-06 06:54:23 +02:00
Přemysl Eric Janouch 53197b51e5
Add a Swift backend for LibertyXDR 2023-07-06 06:54:22 +02:00
Přemysl Eric Janouch 8466d0d850
CMakeLists.txt: link properly 2023-07-04 08:08:29 +02:00
Přemysl Eric Janouch 4c2874649d
liberty-xui: fix build on systems without A_ITALIC 2023-07-04 06:40:54 +02:00
Přemysl Eric Janouch 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
Přemysl Eric Janouch 091f92bab3
liberty-xui: fix a build warning
On macOS, TIOCGWINSZ seems to be defined earlier.
2023-06-28 16:24:59 +02:00
Přemysl Eric Janouch 556c25855e
Fix a CMake warning 2023-06-20 01:24:29 +02:00
Přemysl Eric Janouch 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
Přemysl Eric Janouch 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
Přemysl Eric Janouch 29bf109a51
asciiman: improve attribute handling 2022-10-09 18:43:37 +02:00
Přemysl Eric Janouch 0e86ffe7c3
asciiman: fixes, improve mandoc compatibility 2022-10-09 01:01:08 +02:00
Přemysl Eric Janouch cbeb4e3133
Improve documentation 2022-10-04 01:46:41 +02:00
Přemysl Eric Janouch 0f3ed14575
asciiman: support attribute passing 2022-09-30 18:13:01 +02:00
Přemysl Eric Janouch 089593bb0f
asciiman: render libertyxdr.adoc properly 2022-09-30 15:01:14 +02:00
Přemysl Eric Janouch 035bfe5e81
Document the recently added scripts 2022-09-30 03:09:04 +02:00
Přemysl Eric Janouch 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
Přemysl Eric Janouch 4c3837ae2c
cmake-parser: clean up 2022-09-28 00:06:51 +02:00
Přemysl Eric Janouch af2756ee01
Add a rudimentary CMake script parser 2022-09-27 23:27:06 +02:00
Přemysl Eric Janouch 688c458095
asciiman: fix the first line of output 2022-09-25 21:11:45 +02:00
Přemysl Eric Janouch 34460ca715
asciiman: improve command escaping 2022-09-25 20:55:51 +02:00
Přemysl Eric Janouch 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
Přemysl Eric Janouch 22a121383f
Allow for overriding feature test macros 2022-09-11 00:44:14 +02:00
Přemysl Eric Janouch 0e89bb9f46
Add some consts to function arguments 2022-09-01 12:44:58 +02:00
Přemysl Eric Janouch 63aed8f0fd
Fix up the PEG change from the last commit
This is not a regular expression.
2022-08-14 19:09:52 +02:00