Commit Graph

464 Commits

Author SHA1 Message Date
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
f620c1b19b Extract full_parse_required() in parsecode.c for maintainability 2021-04-11 20:34:51 +02:00
04283eb697 Remove undocumented contentpos feature
It is no longer needed, as we have MBCS support for input now.
2021-04-11 20:34:50 +02:00
09d5ebcbb4 Untangle -l and -q options #23
Both are now used stand-alone for their respective purposes.
2021-04-11 20:34:41 +02:00
76880f1c3c Extract parser.y's C code into new parsecode module
We took the larger pieces only, with the aim of making parser.y more
readable and making it easier to understand the syntax rules.
Also, some IDEs (such as CLion and vscode) don't support yacc/bison
syntax to the full extent, so we have better IDE support in a C file.
2021-04-11 20:27:17 +02:00
f93639f1e4 Add tests for tag handling #23 2021-04-11 20:27:17 +02:00
542e6bd4dd Update box design 'right', undeprecate
I still don't like it, but it shows a particular kind of box that has only a
right side, which is good on a technical level.
2021-04-11 20:27:17 +02:00
6039b059da Review tag assignments in config file #23 2021-04-11 20:27:16 +02:00
f147c8f6fc Enable querying of the design list by tag #23 2021-04-11 20:27:15 +02:00
95673257d9 Document new tag query option in man page #23 2021-04-06 22:13:41 +02:00
27adf5b6ba Add argument to -q option for tag queries #23
-q is no longer undocumented,
but can officially be used in combination with -l
2021-04-06 22:13:41 +02:00
aab643acbc Add array_contains0() and array_count0() function to tools module 2021-04-06 22:13:41 +02:00
b51724f3b1 Handle tags as a real list in memory and config file #23
The previous keyword-based syntax remains supported for
forwards compatibility reasons.
2021-04-06 22:13:40 +02:00
e360bfde4e Use pre-built flex and bison on Windows for MinGW 2021-04-06 22:13:40 +02:00
b01fdcecf5 Prepare config file for some alias names #30
They are not activated yet because some people periodically update
their box design configs from the boxes master branch on GitHub.
If we activated the alias names, and the user still has pre-2.1.0
boxes, the file would parse as broken. As soon as we think that
everybody has access to boxes v2.1.0, we will activate the aliases.
Of course you can already do this in your local config at any time
if you already have boxes v2.1.0.
2021-04-06 22:13:40 +02:00
79ab9baa6d Beautify config file a little 2021-04-06 22:13:39 +02:00
419dbdf850 Update .gitignore 2021-04-06 22:13:39 +02:00
418991143e Add spell checking annotations to Vim syntax file 2021-04-06 22:13:39 +02:00
53d8b3ce05 Improve Vim syntax file DELIM statement #63
Where DELIM is used to change the escape character
for strings, Vim now colors the strings correctly.
2021-04-06 22:13:39 +02:00
9e56dec538 Improve vim syntax file with support for different string delimiters #64 2021-04-06 22:13:38 +02:00
a407f22913 Support aliases in vim syntax file #30 2021-04-06 22:13:38 +02:00
0d2cb14b95 Add some defines for compilation on Windows 2021-04-06 22:13:38 +02:00
08cf6a5396 Flush stderr after parsing
This helps test cases find consistent output on all platforms
2021-04-06 22:13:37 +02:00
157f4a136b Normalize leading line break in sample text 2021-04-06 22:13:37 +02:00
f6913d6684 Change order of includes in discovery module
This helps avoid a conflict between windows.h and unistd.h
2021-04-06 22:13:37 +02:00
5a47af57ae Remove boxes.spec, which had become outdated #76
A better example of an RPM spec file can be found in Fedora package
https://src.fedoraproject.org/rpms/boxes/blob/rawhide/f/boxes.spec
2021-04-06 22:12:42 +02:00
5650f251fd Add test cases for design alias names #30 2021-03-30 20:34:33 +02:00