● Customisation option 'boxes-known-modes' was being incorrectly added to the internal Emacs 'Customize' meta-group.
● Fixed by creating a new 'Boxes' group for use by this package. Note that backwards compatibility is preserved for
those who have already customised this option.
● Added type declaration for 'boxes-known-modes', which as well as fixing a compiler warning, enables completion and
type-checking on user-entered values.
● Put the other user-settable variables as customisation options in the new 'Boxes' group.
● Fixed a bunch of compiler warnings.
● Removed / modified obsolete or unnecessary code (like requiring the deprecated package 'cl' etc).
By default Clang16 will not allow implicit function declarations, which
would let this build fail with it.
Fix#106
Signed-off-by: Pascal Jaeger <pascal.jaeger@leimstift.de>
The `u32_move` will try to read `input.lines[j].num_chars - c + 1` `u32`
octets from `input.lines[j].mbtext + input.lines[j].posmap[c]`. That
means, it needs access memory at address
`input.lines[j].mbtext + input.lines[j].posmap[c] + input.lines[j].num_chars - c`
while the max range is `input.lines[j].mbtext + input.lines[j].num_chars`,
which is out-of-bound because `input.lines[j].posmap[c] > c` obviously.
Fix#103
One can now run "make static" to get a binary that is statically linked
to libunistring and pcre2. Both libraries are downloaded first,
so they don't need to be available on the machine.
- Structure unit tests into multiple modules
- Add setup/teardown of fixtures
- Add ability to capture and check stdout and stderr
- Add mock handling to Makefile
Cowsay and every cowsay implementation in a new language doesn't support different width characters, and the odds of cowsay getting an update are very low. Step on cowsay's toes and provide a cow that doesn't break for chinese, japanese, korean users. Used with permission by Tony Monroe.
- Speedmode is now purely a parser thing
- Lexer start condition SPEEDMODE is no longer needed
- Added lexer start condition BOX to distinguish box def content
- DELIMs are now purely a lexer thing
- No shared state between lexer and parser for DELIMs anymore
- Fix bug where speedmode could terminate in a SAMPLE block
- All lexer start conditions now exclusive
- Improved debug output
- Renamed parser token YDELWORD to YDELIMSPEC