-
Notifications
You must be signed in to change notification settings - Fork 56
Configuration
ini edited this page Jan 15, 2024
·
23 revisions
Important
Since 1.0.0, you have to define the scheme and format instead of leaving both empty for default values.
- Basic syntax:
{{<key>}} - Colors:
{{colors.<color>.<scheme>.<format>}} - Image:
{{image}} - Custom:
{{custom.<keyword>}}
A - All colors start with the {{colors. prefix
B - The color keyword from here
C - The scheme from here or default
D - The format from here
| Keyword | Keyword |
|---|---|
| primary | error |
| on_primary | on_error |
| primary_container | error_container |
| on_primary_container | on_error_container |
| inverse_primary | surface_dim |
| primary_fixed | surface |
| primary_fixed_dim | surface_bright |
| on_primary_fixed | surface_container_lowest |
| on_primary_fixed_variant | surface_container_low |
| secondary | surface_container |
| on_secondary | surface_container_high |
| secondary_container | surface_container_highest |
| on_secondary_container | on_surface |
| secondary_fixed | on_surface_variant |
| secondary_fixed_dim | outline |
| on_secondary_fixed | outline_variant |
| on_secondary_fixed_variant | inverse_surface |
| tertiary | inverse_on_surface |
| on_tertiary | surface_variant |
| tertiary_container | background |
| on_tertiary_container | on_background |
| tertiary_fixed | shadow |
| tertiary_fixed_dim | scrim |
| on_tertiary_fixed | on_tertiary_fixed_variant |
| source_color |
| Format | Example Output |
|---|---|
| hex | #ffffff |
| hex_stripped | ffffff |
| rgb | rgb(255, 255, 255) |
| rgba | rgba(255, 255, 255, 255) |
| hsl | hsl(0, 0%, 0%) |
| hsla | hsla(0, 0%, 0%, 0.0) |
| red | 255 |
| green | 255 |
| blue | 255 |
| alpha | 255 |
| hue | 255 |
| saturation | 255 |
| lightness | 255 |
You can also get the image path (if it was provided) by using:
{{image}}
Example config:
[config.custom_keywords.font]
find = 'font1'
replace = 'Google Sans'Usage in templates:
{{ custom.font1 }}
Here is a list of different locations for the configuration file:
- Windows:
C:\Users\user\AppData\Roaming\InioX\matugen\config\config.toml - Linux:
/home/user/.config/matugen/config.toml - MacOS:
/Users/user/Library/Application Support/com.InioX.matugen/config.toml
Tip
You can also use a custom configuration path by using the -c argument
| Name | Type | Default | Description |
|---|---|---|---|
| reload_apps | bool | false | Whether to reload apps. |
| set_wallpaper | bool | false | Whether to set the wallpaper (if true, requires wallpaper_tool to be set). |
| wallpaper_tool | String | None | The wallpaper tool to use (Swwww, Swaybg, Feh, Nitrogen). |
@{primary}) |
|||
gtk_theme in config.reload_apps_list.
|
|||
|
|
|||
| swww_options | <Vec> | [] | The options to use for Swwww |
| feh_options | <Vec> | [] | The options to use for Feh |
| Name | Type | Default | Description |
|---|---|---|---|
| kitty | bool | true | Whether to reload kitty. |
| waybar | bool | true | Whether to reload waybar. |
| dunst | bool | true | Whether to reload dunst. |
| gtk_theme | bool | true | Whether to reload the GTK theme. |
# config_directory/config.toml
[config]
reload_apps = true
set_wallpaper = true
wallpaper_tool = 'Swww'
prefix = '@'
swww_options = [
"--transition-type",
"center",
]
run_after = [
[ "echo", "'hello'" ],
[ "echo", "'hello again'" ],
]
[config.reload_apps_list]
waybar = true
kitty = true
gtk_theme = true
dunst = true| Name | Type | Default | Description |
|---|---|---|---|
| mode | Option<Modes> | Mode provided in args | Which scheme to use for the template. |
| input_path | PathBuf | None | Path to the template file. |
| output_path | PathBuf | None | Path to export the template to. |
Note
The mode key will override the mode specified in the arguments, only for that template.
For all available modes, look at the usage.
# config_directory/config.toml
[templates.test] # First way of adding template
input_path = '~/.config/example/template.css'
output_path = '~/.config/example'
mode = "Light" # First letter MUST be upper-case
[templates] # Another way
test2 = { input_path = '~/.config/example/template2.css', output_path = '~/.config/example2' }