Commit Graph

490 Commits

Author SHA1 Message Date
a5dae11c4c Add the first cmocka-based unit tests 2021-10-21 20:23:52 +02:00
f8d20378ea Add coverage measurement to GitHub Actions 2021-09-12 10:44:57 +02:00
1b731a08bd Refactor testrunner.sh script for readability 2021-09-11 20:29:40 +02:00
e40fe370e2 Add test coverage measurement to black-box tests 2021-09-09 21:44:49 +02:00
3c56934ddc Remove whitespace check on -c (#92)
Resolves #88
2021-08-31 17:31:43 +02:00
270d3ed7d7 Improve testrunner.sh's handling of whitespace args #92 2021-08-30 16:37:51 +02:00
ab9f123981 Count tab as whitespace in "empty shape" check #92 2021-08-28 15:08:44 +02:00
a02e241cfa Add box designs 'cowsay' and 'tux' (from cowsay) #91
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.
2021-08-25 22:21:42 +02:00
7f54baf409 => take advantage of 'boxes -q "(all)"' when defining boxes-types-alist
=> make boxes-known-modes user customizable
2021-08-12 14:19:25 +02:00
ecb8132569 Amend definition of boxes-types-alist to catch box names containing an
underscore (eg ian_jones)
2021-08-09 11:07:55 +02:00
b96b67878b Add vscode recommended extensions list 2021-08-08 21:05:06 +02:00
121c2c32cb Add latest version badge in README.md 2021-07-16 11:39:04 +02:00
4fc33e7cee Fix quoting of closing comment tags in config 2021-06-18 20:56:08 +02:00
89fea620e3 Update choco package spec 2021-06-16 21:08:56 +02:00
4ced2b4715 Fix bug with :global: parent resolution 2021-06-16 20:52:36 +02:00
47dfac4897 Make 'normand' sample a little narrower 2021-06-15 20:44:27 +02:00
0296c8dd7c v2.1.1 v2.1.1 2021-06-14 21:00:11 +02:00
e5af7dba2d Add new box design 'normand' 2021-06-13 22:35:40 +02:00
d1a318d1c3 Tag some box designs as 'large' in config file
This is for box designs which are best suited for large content,
like figlet fonts or just a lot of text. They want to be BIG!
2021-06-13 22:35:39 +02:00
fe3074524f Add new box design 'weave' 2021-06-13 22:35:39 +02:00
252d080403 Tag 'none' is not allowed 2021-06-13 22:35:39 +02:00
2d3a842728 Refactor lexer and parser for maintainability
- 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
2021-06-13 22:34:53 +02:00
00153f8068 Fix a bug where alias names could be defined twice
This could happen when configs are inherited, but aliases redefined
(a rare case so far).
2021-06-08 22:06:25 +02:00
d6433d3d41 Update some URLs after website redesign 2021-05-29 20:56:55 +02:00
273207893c Update README.md 2021-04-28 10:10:49 +02:00
4daa0f4f46 Fix repo encoding of ISO-8859-15 encoded files #83 2021-04-27 10:51:00 +02:00
b90475eb2c Remove preproc troubleshooting file parser.p #82
It was useful for checking what the pre-processor
did to the parser.c file, but as this invocation
caused problems on macos, we can leave it out.
2021-04-27 10:39:13 +02:00
28e5cef58d Add animated example gif to readme 2021-04-25 13:58:14 +02:00
688a4d107d fix definition of boxes-types-alist to catch up with changed output
layout of "boxes -l"
2021-04-23 11:47:50 +02:00
5d3bdfb9fa Gracefully handle "git describe" failure in Makefile
If the build environment does not have git or the git repo available,
we just leave out the git hash from the version information.
It would be missing anyway, but the empty parentheses
look awkward.
2021-04-21 22:16:59 +02:00
7b7d4b4adf The vim syntax file is now default encoding 2021-04-21 21:08:29 +02:00
d1a1cf1580 Declare our src/Makefile as serial #79
because for some reason, make exhibits very strange behavior
when executing it in parallel jobs
2021-04-20 21:28:30 +02:00
bd0738bd00 Update GitHub issue template 2021-04-19 10:55:59 +02:00
ba5ce91c84 v2.1.0 v2.1.0 2021-04-18 14:13:05 +02:00
b3ece70317 Switch from Travis CI to GitHub Actions 2021-04-17 22:23:54 +02:00
e86c101ad8 Update man page 2021-04-17 20:54:15 +02:00
434d5971bf Extract smaller functions from the main() function #78 2021-04-17 15:31:08 +02:00
82bc084bad Extract tag query functionality into its own, new 'query' module #78 2021-04-17 15:31:04 +02:00
4d0dbcd59b Rename global variable anz_designs to num_designs #78 2021-04-17 15:31:00 +02:00
9d17203f50 Rename anz_lines field in input_t to num_lines #78 2021-04-17 15:30:56 +02:00
a7227c8aa8 Extract reading of input lines into its own, new 'input' module #78 2021-04-17 15:30:51 +02:00
fb010bc7d6 Remove lexer.l special around input_t in boxes.h #78 2021-04-17 15:30:47 +02:00
885bc9d498 Configure todo-tree to find tags which are not at the start of a comment 2021-04-17 15:30:47 +02:00
aa36998f77 Rename ANZ_* constants in shape.h to NUM_* #78
This is more in keeping with English standards, and hopefully
improves maintainability a small bit.
2021-04-17 15:30:42 +02:00
2cc2bc1021 Extract list_designs functionality into its own, new 'list' module #78 2021-04-17 15:30:37 +02:00
9203a76ed6 Add 'vim-common' to Travis package list (provides xxd) 2021-04-17 15:30:36 +02:00
af6f123c99 Extract command line parsing functionality into its own, new 'cmdline' module #78
Also encapsulate this feature better, eliminate side effects,
and refactor into smaller functions.
2021-04-17 15:30:26 +02:00
6427d1efde Test cases for eol control option #60
This also adds the ability to testrunner.sh to pipe the output
through xxd for binary comparisons.
2021-04-11 20:34:52 +02:00
139994f97f Add option to override line terminators #60 2021-04-11 20:34:51 +02:00
8a6d0d3315 Add and use bx_strndup() in 'tools' module for cross-platform compatibility 2021-04-11 20:34:51 +02:00