walltheme
1.0.0
Walltheme是在Rust中实现的终端主题生成器。它从图像中提取颜色,并将其应用于预定义的模板,以生成终端模拟器,文本编辑器和其他应用程序的主题。该工具支持所有标准颜色(黑色,红色,白色等),并包含专门针对Zellij的额外橙色。
Walltheme配备了几个模板和示例脚本,以促进自定义。
# Clone the repository
mkdir -p ~ /.cache/walltheme/ && mkdir -p ~ /.config/walltheme/templates
git clone https://github.com/JoseMM2002/walltheme.nvim.git
cd walltheme
# Build the project
cargo install --path . 生成一个主题:
walltheme < image-path >walltheme ~ /Pictures/wallpaper.png此命令从wallpaper.png中提取颜色,使用~/.config/walltheme/templates的模板生成配置文件,然后将它们保存到~/.cache/walltheme/ 。
Walltheme使用模板格式化生成的主题文件。占位符被提取的颜色代替。此模板是由车把生成的。
#{{black_hex}}
#{{red_hex}}
#{{green_hex}}
#{{blue_hex}}
rgb{{black_rgb}}
rgb{{red_rgb}}
rgb{{green_rgb}}
rgb{{blue_rgb}}
rgba{{black_rgba}}
rgba{{red_rgba}}
rgba{{green_rgba}}
rgba{{blue_rgba}}
如果模板还需要某些配置作为oh-my posh的括号,则可以使用以下语法:
{{keep "info to keep betwwen braces"}}
Walltheme包括:
模板位于templates/目录中。要使用它们,请将所需模板复制到~/.config/walltheme/templates/并根据需要进行修改。
您可以通过创建或修改位于~/.config/walltheme/config config文件来自定义walltheme。该文件允许您微调主题生成的行为,包括调色板设置和阈值。
[ general ]
mix_factor = 0.7 # from 0 to 1
distance_threshold = 0.5 # from 0 to 1
palette_quality = 16 # from 1 to 255
palette_max_colors = 8 # from 1 to 255
brighter_factor = 0.8 # from 0 to 1
bright_min = 20 # from 0 to 255
opacity_target = 50 # from 0 to 255
stdout_template = " colors.sh "mix_factor :混合颜色的混合因子。distance_threshold :颜色距离过滤的阈值。palette_quality :调色板提取的质量。palette_max_colors :提取的最大颜色数量。brighter_factor :调节颜色亮度的因素。bright_min :最小亮度阈值。stdout_template :标准输出的模板。opacity_target :颜色的目标不透明度。您可以设置这些选项以适合您的偏好和工作流程。
我的设置的一个示例是在scripts/examples/目录中。它包括一个脚本,该脚本设置墙纸并为小猫,韦巴尔和Zellij生成主题。
为了将其与Neovim集成,我制作了一个使用生成的主题来设置Colorscheme的插件。您可以找到它walltheme.nvim
欢迎捐款!随时打开问题或提交拉动请求。
git checkout -b feature/your-feature 。git commit -m "Add your feature" 。git push origin feature/your-feature 。该项目已根据MIT许可获得许可。有关更多详细信息,请参见许可证文件。
特别感谢Pywal等工具和终端主题社区的灵感。



