3.3 KiB
Dcol and Wallbash
Overview
This document provides an explanation of the color configuration used for theming HyDE. It covers primary colors, text colors, and accent colors. Each color can be specified in either hexadecimal or RGBA format.
Color Identifiers
By default, while wallpaper caching, it will produce 4 primary colors, 4 text colors, and 9 accent colors for each primary color.
dcol_mode: This identifier determines whether the theme is in dark or light mode.dcol_pryX: These are the primary colors, withXranging from 1 to 4.dcol_txtX: These are the inverted primary colors used for text, withXranging from 1 to 4.dcol_XaxY: These are the accent colors for each primary color, withXranging from 1 to 4 andYranging from 1 to 9._rgba: This suffix indicates that the color is in RGBA format. If the suffix is not present, the color is in hexadecimal format.
Usage
To use the cache color configuration:
- Replace the prefix
dcol_withwallbash_to allow the Wallbash script to parse and change values. - Consider the
wallbash_prefix as a placeholder for the dominant color value. - Wrap the color identifier with angle brackets (
<...>) to indicate replacement with the corresponding value, e.g.,<wallbash_pry1>. - Use this example as a template.
This allows you to create a template for configurations, using the dominant color or wallpaper, and let the Wallbash script convert it for you.
Creating a *.dcol Template
A template requires three parts:
- Target file
- Script/command (optional)
- Contents
The basic format:
| target | command |
|---|---|
| contents |
Note: target|command should always be on line 1 of every template file. We will call it
header line.
Target File
Structure your template and determine the target configuration location. This can be:
${cacheDir}/wallbashwith post-processing using a script.- An expected path, e.g., beside
kitty.conffor Kitty, sourced byinclude theme.conf.
Use environment variables to handle directories dynamically:
${confDir}=$XDG_CONFIG_HOMEor$HOME/.config/${cacheDir}/wallbash=HYDE_CACHE_DIR/wallbash=$HOME/.cache/hyde
Optional Script/Command
After filling the target file with contents, you can run arbitrary commands/scripts for post-processing. Use the WALLBASH_SCRIPTS variable to navigate to Wallbash's script directory, e.g., WALLBASH_SCRIPTS/your_script.sh.
Caution: Only add templates from trusted authors to avoid executing bad code.
Contents
These are the contents of the file, containing Wallbash placeholders, e.g., <wallbash_pry1>.
The ~/.config/hyde/wallbash/* directory contains three main directories:
always
Templates in ./wallbash/always/ are executed during:
- Theme switch
- Wallpaper switch
- Mode switch
More information here.
theme
Templates in ./wallbash/theme/ are executed during:
- Theme switch
- Mode switch
More information here.
scripts
For customization, store your scripts in ./wallbash/scripts. Use the $WALLBASH_SCRIPTS variable to navigate this directory.