* style: remove extra space
* feat: handle xrm_Char in config parser
Handle the `xrm_Char` case in the (rasi theme) config file parser. This
should properly handle configuration like
```
matching-negate-char: "\0";
```
and
```
matching-negate-char: "-";
```
* refactor: don't handle mem in xrm_Char case
`mem` shouldn't ever be set when `XrmOption` is `type` `xrm_Char`.
Therefore, there is no need to check it and free it. Remove that logic.
* refactor: further condense logic
* style: s/Everythin/Everything/
* style: s/parsing an section/parsing a section/
...and missing period.
* feat(lexer): add CHAR token
Add a `CHAR` token that takes things of the form `'<char>'` or some
specific backslash escape sequences like `'\''` and `'\0'`. For now,
save it as a `T_STRING`.
* refactor: define char property type
* feat(parser): add cval and T_CHAR
* refactor: use char property for xrm_Char
Instead of using strings for property elements of type char, use
characters, which were recently added to the grammar.
* Initial test to allow math in distances.
Support + and -
Needs spaces around + and -.
* [THEME] Fix printing theme with math in distance.
* [Theme] use calc() syntax.
* [Theme] Add * and / to calc().
* [Theme] Fix the precedense ordering in parsing. Also avoid making copies.
* [Theme] Don't print unneeded ().
* [Theme] Add modulo to calc.
* Add test for hidden meta data in script mode
The purpose of this is to provide support for "hidden" fields on a
script item that work for search but don't get displayed. This is
mostly to provide something similar to the optional display (but still
matchable) fields in drun like "categories" or "keywords". This also
enables the choice to display unicode icons but still allow for
searching for the keywords without needing to print them.
* Ignore the output file from test runs
* Add support for the "meta" field on script entries
This fields provides a matchable but unprinted string for entries in a
script mode list match. This means you can use one thing but provide
multiple options that can match that item without polluting the list
view or make confusing output.
* Add new test to test suite file