Commit Graph

486 Commits

Author SHA1 Message Date
Thomas Jensen
f93639f1e4
Add tests for tag handling #23 2021-04-11 20:27:17 +02:00
Thomas Jensen
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
Thomas Jensen
6039b059da
Review tag assignments in config file #23 2021-04-11 20:27:16 +02:00
Thomas Jensen
f147c8f6fc
Enable querying of the design list by tag #23 2021-04-11 20:27:15 +02:00
Thomas Jensen
95673257d9
Document new tag query option in man page #23 2021-04-06 22:13:41 +02:00
Thomas Jensen
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
Thomas Jensen
aab643acbc
Add array_contains0() and array_count0() function to tools module 2021-04-06 22:13:41 +02:00
Thomas Jensen
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
Thomas Jensen
e360bfde4e
Use pre-built flex and bison on Windows for MinGW 2021-04-06 22:13:40 +02:00
Thomas Jensen
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
Thomas Jensen
79ab9baa6d
Beautify config file a little 2021-04-06 22:13:39 +02:00
Thomas Jensen
419dbdf850
Update .gitignore 2021-04-06 22:13:39 +02:00
Thomas Jensen
418991143e
Add spell checking annotations to Vim syntax file 2021-04-06 22:13:39 +02:00
Thomas Jensen
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
Thomas Jensen
9e56dec538
Improve vim syntax file with support for different string delimiters #64 2021-04-06 22:13:38 +02:00
Thomas Jensen
a407f22913
Support aliases in vim syntax file #30 2021-04-06 22:13:38 +02:00
Thomas Jensen
0d2cb14b95
Add some defines for compilation on Windows 2021-04-06 22:13:38 +02:00
Thomas Jensen
08cf6a5396
Flush stderr after parsing
This helps test cases find consistent output on all platforms
2021-04-06 22:13:37 +02:00
Thomas Jensen
157f4a136b
Normalize leading line break in sample text 2021-04-06 22:13:37 +02:00
Thomas Jensen
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
Thomas Jensen
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
Thomas Jensen
5650f251fd
Add test cases for design alias names #30 2021-03-30 20:34:33 +02:00
Thomas Jensen
44f4c8adaa
Add support of alias names for designs #30 2021-03-30 20:34:20 +02:00
Thomas Jensen
4dcd1322a7
Support new keyword "parent" in Vim syntax file #5 2021-03-22 21:31:41 +01:00
Thomas Jensen
749033001f
Add more test cases for multiple config files #5 2021-03-22 21:31:34 +01:00
Thomas Jensen
97b62dd09a
Support multiple configuration files #5
Main implementation
2021-03-22 21:31:27 +01:00
Thomas Jensen
46aab3faa6
Add config file location to each design #5 2021-03-22 20:45:46 +01:00
Thomas Jensen
9315e62528
Add 'parent' keyword to parser/lexer #5
Also major parser/lexer rework to support being called multiple
times.  Switch to reentrant and parameterizable parser.
2021-03-22 20:45:45 +01:00
Thomas Jensen
425d354bc0
Move generated boxes.h to 'out/'
Also rename boxes.h.in to boxes.in.h to make file type detection easier
2021-03-22 20:45:45 +01:00
Thomas Jensen
614ea31237
Add function array_contains() to 'tools' module 2021-03-22 20:45:45 +01:00
Thomas Jensen
5c7680fbdb
Increase LINE_MAX_BYTES from 4096 to 16382 2021-03-22 20:45:44 +01:00
Thomas Jensen
f27bac6465
Add and update some project settings 2021-03-22 20:45:38 +01:00
Thomas Jensen
97a2e2d76d
Add global_only argument to discover_config_file() 2021-03-19 16:41:36 +01:00
Thomas Jensen
365dcea348
Improve testrunner when BOXES env var already set 2021-03-19 16:40:55 +01:00
Thomas Jensen
278246bde7
Move most generated files and binaries to 'out' dir
Better separation of sources and binaries
Fewer files in 'src' dir
2021-03-19 16:40:54 +01:00
Thomas Jensen
5cb5435119
Extract config file discovery code into new module 'discovery' 2021-03-19 16:40:54 +01:00
Thomas Jensen
6779b74e9a
Add docs on config file discovery to man page #69 2021-03-19 16:40:54 +01:00
Thomas Jensen
3f401a551a
Remove skip-test feature from testrunner.sh
It was quite cool, but we don't need it right now.
2021-03-19 16:40:54 +01:00
Thomas Jensen
d952bd6eea
Unify config file search order Linux/Unix and Windows #69
This means we have some XDG support on Windows, too,
although some global locations like /etc/xdg are unlikely to exist.
2021-03-19 16:40:53 +01:00
Thomas Jensen
68098e4480
Add test cases and test runner improvements for testing #69 2021-03-19 16:40:53 +01:00
Thomas Jensen
033c879ae6
Add helper function concat_strings_alloc() to tools module 2021-03-19 16:40:53 +01:00
Thomas Jensen
877336a114
Add support for XDG base directories #69
for config file discovery. Also, the config file is searched in
more places, and can have more names. Details in issue comments.
2021-03-19 16:40:53 +01:00
Thomas Jensen
58148de27f
Fix initialization of tabpos data in boxes.c 2021-03-19 16:40:00 +01:00
Thomas Jensen
e106e1412a
Fix bug where tabpos data was not properly initialized in tools/expand_tabs_into() 2021-03-14 12:25:29 +01:00
Thomas Jensen
b38e8f527b
Explicitly set UTF-8 charset in unicode test cases (forgot 114) #73 2021-02-19 10:34:48 +01:00
Thomas Jensen
c8e0474f56
Update creation of choco package in Makefile 2021-02-18 21:35:20 +01:00
Thomas Jensen
e68de92a6f
Fix number of blank lines after title in box design list 2021-02-16 11:36:59 +01:00
Thomas Jensen
1fae201e47
Clean misc/getopt.o along with other object files 2021-02-16 10:51:46 +01:00
Thomas Jensen
622890ab2f
Add HTML page creation from man page to Makefile 2021-02-15 21:35:52 +01:00
Thomas Jensen
3f171adb22
v2.0.0 2021-02-15 21:10:57 +01:00