rofi/source/rofi-types.c
Jason Kim a4c5a92199
Support rasi config character type options (#1131)
* 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.
2020-05-17 14:50:38 +02:00

33 lines
581 B
C

#include "rofi-types.h"
/**
* Name of the property type
*/
const char * const PropertyTypeName[P_NUM_TYPES] = {
/** Integer */
"Integer",
/** Double */
"Double",
/** String */
"String",
/** Character */
"Character",
/** Boolean */
"Boolean",
/** Color */
"Color",
/** Padding */
"Padding",
/** Link to global setting */
"Reference",
/** Position */
"Position",
/** Highlight */
"Highlight",
/** List */
"List",
/** Orientation */
"Orientation",
/** Inherit */
"Inherit",
};