Add config guide
- `config.md`
This commit is contained in:
parent
c49a919843
commit
0ce8f9147c
155
config.md
Normal file
155
config.md
Normal file
@ -0,0 +1,155 @@
|
|||||||
|
## Configuration
|
||||||
|
|
||||||
|
### Configuration file
|
||||||
|
|
||||||
|
Popcorn loads a single TOML configuration file from:
|
||||||
|
```
|
||||||
|
~/.config/candywidgets/popcorn/config.toml
|
||||||
|
```
|
||||||
|
If the file is missing or incomplete, built-in defaults are used.
|
||||||
|
|
||||||
|
Tip: You can maintain multiple config files for different themes and symlink the one you want active.
|
||||||
|
|
||||||
|
### General rules for config values
|
||||||
|
|
||||||
|
- Any missing or misconfigured field normally falls back to sane defaults.
|
||||||
|
- Values must be plain integers or strings.
|
||||||
|
- No expressions or functions.
|
||||||
|
- No unit suffixes like "px," "ms," etc.
|
||||||
|
- Dimensions and positions are positive integers in pixels.
|
||||||
|
- Colors are 8-digit `"AARRGGBB"` hex strings.
|
||||||
|
- Leading '#' is ignored. So, `"#675f5f5f"` is equal to `"675f5f5f"`.
|
||||||
|
- Alpha (`AA`) determines transparency (`00`: Invisible, `ff`: Solid)
|
||||||
|
- Invalid or short hex strings may cause Popcorn to exit with errors.
|
||||||
|
- Font names are strings.
|
||||||
|
- If the font is missing or misconfigured, your system may use a fallback.
|
||||||
|
- Time values are positive integers in milliseconds.
|
||||||
|
|
||||||
|
### Sections
|
||||||
|
|
||||||
|
The configuration file has 4 sections that control specific aspects of the popup:
|
||||||
|
|
||||||
|
- `[window]` - Popup placement and timeout settings.
|
||||||
|
- `[ui]` - Base UI geometry and colors.
|
||||||
|
- `[percent_value]` - Styling for percentage text.
|
||||||
|
- `[icon]` - Styling for icon glyph.
|
||||||
|
|
||||||
|
### Section 1: `[window]`
|
||||||
|
|
||||||
|
This section controls popup position and how long it stays visible.
|
||||||
|
|
||||||
|
##### `popup_timeout`
|
||||||
|
- Auto-hide timeout in milliseconds.
|
||||||
|
- Default: `1300`
|
||||||
|
|
||||||
|
##### `pos_x`
|
||||||
|
- Horizontal position of the popup.
|
||||||
|
- Default: `1146`
|
||||||
|
- Adjust based on your screen resolution.
|
||||||
|
- Example: 1366px wide screen - 200px popup width - 20px offset = 1146px
|
||||||
|
|
||||||
|
##### `pos_y`
|
||||||
|
- Vertical position of the popup.
|
||||||
|
- Default: `36`
|
||||||
|
|
||||||
|
Adjust `pos_x` and `pos_y` based on your screen resolution and popup width/height.
|
||||||
|
|
||||||
|
### Section 2: `[ui]`
|
||||||
|
|
||||||
|
Basic popup appearance styling. Set the dimensions according to your screen resolution.
|
||||||
|
|
||||||
|
##### `width`
|
||||||
|
- Width of the popup.
|
||||||
|
- Default: `200`
|
||||||
|
- If you resize the popup, you may need to update `pos_x` and `pos_y` to keep it where you expect.
|
||||||
|
|
||||||
|
##### `height`
|
||||||
|
- Height of the popup.
|
||||||
|
- Default: `50`
|
||||||
|
|
||||||
|
##### `border_radius`
|
||||||
|
- Border radius of the popup.
|
||||||
|
- Default: `5`
|
||||||
|
- Tip:
|
||||||
|
- `0`: Sharp corners, rectangular
|
||||||
|
- `height/2`: Circular sides, pill shape
|
||||||
|
- Between `0` & `height/2`: Rounded corners
|
||||||
|
|
||||||
|
##### `padding`
|
||||||
|
- Distance from the sides to the icon and the percent value.
|
||||||
|
- Default: `7`
|
||||||
|
|
||||||
|
##### `bg_col`
|
||||||
|
- Background color of the popup.
|
||||||
|
- Default: `"675f5f5f"`
|
||||||
|
|
||||||
|
##### `default_fill_color`
|
||||||
|
- Fallback for no or invalid fill color is supplied via CLI arg `--color`
|
||||||
|
- Default: `"ff397979"`
|
||||||
|
|
||||||
|
### Section 3: `[percent_value]`
|
||||||
|
|
||||||
|
Controls the percentage text style (for volume, brightness, battery, etc).
|
||||||
|
|
||||||
|
##### `font_size`
|
||||||
|
- Font size for the percent value.
|
||||||
|
- Default: `35`
|
||||||
|
|
||||||
|
##### `font_color`
|
||||||
|
- Font color for the percentage value.
|
||||||
|
- Default: `"ffffffff"`
|
||||||
|
|
||||||
|
##### `font`
|
||||||
|
- Font family for the percentage value.
|
||||||
|
- Default: `"Iosevka Extrabold"`
|
||||||
|
|
||||||
|
### Section 4: `[icon]`
|
||||||
|
|
||||||
|
Icon glyph styling configuration.
|
||||||
|
|
||||||
|
##### `size`
|
||||||
|
- Font size for the icon glyph.
|
||||||
|
- Default: `35`
|
||||||
|
|
||||||
|
##### `color`
|
||||||
|
- Font color for the icon glyph.
|
||||||
|
- Default: `"ffffffff"`
|
||||||
|
|
||||||
|
##### `font`
|
||||||
|
- Font color for the icon glyph.
|
||||||
|
- Default: `"IosevkaTermSlab Nerd Font Mono"`
|
||||||
|
- Tip: Use Nerd Font icons or another icon font for best results.
|
||||||
|
|
||||||
|
##### `default_icon`
|
||||||
|
- Default glyph used when no or invalid icon is suppliedvia CLI arg `--icon`
|
||||||
|
- Default: `""`
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
Here's a full working configuration example:
|
||||||
|
|
||||||
|
```toml
|
||||||
|
[window]
|
||||||
|
popup_timeout = 1300
|
||||||
|
pos_x = 1146
|
||||||
|
pos_y = 36
|
||||||
|
|
||||||
|
[ui]
|
||||||
|
width = 200
|
||||||
|
height = 50
|
||||||
|
border_radius = 5
|
||||||
|
padding = 7
|
||||||
|
bg_col = "675f5f5f"
|
||||||
|
default_fill_color = "ff397979"
|
||||||
|
|
||||||
|
[percent_value]
|
||||||
|
font_size = 35
|
||||||
|
font_color = "ffffffff"
|
||||||
|
font = "Iosevka Extrabold"
|
||||||
|
|
||||||
|
[icon]
|
||||||
|
size = 35
|
||||||
|
color = "ffffffff"
|
||||||
|
font = "IosevkaTermSlab Nerd Font Mono"
|
||||||
|
default_icon = ""
|
||||||
|
```
|
||||||
Loading…
x
Reference in New Issue
Block a user