A small collection of Zig related code and/or tools I've developed.
WTF is a Zig? I'm curious how you wound up here without knowing, but I'll set you up the bomb regardless: Zig is an open-source programming language designed for robustness, optimality, and clarity. Think of it as C, if C had much better error handling semantics, stricter type checking, a lot less undefined behavior, and compile time functions instead of macros. It's pretty great, and you can read more about it at the offical site: ziglang.org.
I used to host an appdir version of Zig here for Linux users, since they otherise either had to use out of date packages or compile from source, but fortunately this is no longer necessary. Instead you can grab a statically linked x64 Linux build, or a Windows build, of the current master directly from Travis CI or AppVeyor respectively:
- Notepad++ UDL for Zig: Looks a bit like unicorn vomit.
- `...` isn't parsed correctly, problem with UDL module
- float literals aren't parsed correctly, problem with UDL module
- Windows API package: Initially created with translate-c but with many automated and manual cleanups. Still a WIP.
- Simple INI library: allows parsing of simple ini configuration files.
Updated 2018.04.03: fix allocator issue in tests on Windows
- errno_to_error.zig: A function to convert Linux errno values from syscalls into zig errors. Useful for wrapping syscalls with `try` instead of using a bunch of boilerplate.
These were derived at least in part from Zig's std.unicode library
- _L(): A comptime function for converting native UTF-8 string literals to UTF-16 string literals, use in place of C's `L"String";` => `_L("String");`.
- A Unicode library: supports encoding and decoding of UTF-8/16/32 codepoints, and WTF codepoints.