WallTheMe é um gerador de temas terminais implementado em ferrugem. Ele extrai cores de uma imagem e as aplica a modelos predefinidos para gerar temas para emuladores de terminais, editores de texto e outras aplicações. A ferramenta suporta todas as cores padrão (preto, vermelho, branco, etc.) e inclui uma cor laranja extra especificamente para Zellij .
O WallTheMe vem com vários modelos e scripts de exemplo para facilitar a personalização.
# 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 . Para gerar um tema:
walltheme < image-path >walltheme ~ /Pictures/wallpaper.png Este comando extrai cores do wallpaper.png , gera arquivos de configuração usando modelos de ~/.config/walltheme/templates e os salva em ~/.cache/walltheme/ .
O WallTheMe usa modelos para formatar os arquivos de temas gerados. Os espaços reservados são substituídos por cores extraídas. Esses modelos são gerados pelo guidão.
#{{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}}
Se o modelo também precisar de aparelhos para algumas configurações como Oh-My-Posh, você poderá usar a seguinte sintaxe:
{{keep "info to keep betwwen braces"}}
O WallTheMe inclui modelos para:
Os modelos estão localizados nos templates/ diretório. Para usá -los, copie o modelo desejado para ~/.config/walltheme/templates/ e modifique -o conforme necessário.
Você pode personalizar o WallTheMe criando ou modificando um arquivo config localizado em ~/.config/walltheme/config . Este arquivo permite ajustar o comportamento da geração do tema, incluindo configurações de paleta e limites.
[ 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 : Mix Factor for Blending Colors.distance_threshold : limiar para filtragem de distância de cor.palette_quality : Qualidade da extração da paleta.palette_max_colors : número máximo de cores para extrair.brighter_factor : fator para ajustar o brilho da cor.bright_min : limiar mínimo de brilho.stdout_template : modelo para saída padrão.opacity_target : opacidade de destino para cores.Você pode definir essas opções para se adequar às suas preferências e fluxo de trabalho.
Um exemplo para minha configuração está nos scripts/examples/ diretórios. Inclui um script que define o papel de parede e gera temas para Kitty, Waybar e Zellij.
Para integrar isso ao Neovim, eu havia feito um plug -in que usa o tema gerado para definir o ColorScheme. Você pode encontrá -lo walltheMe.nvim
As contribuições são bem -vindas! Sinta -se à vontade para abrir um problema ou enviar uma solicitação de tração.
git checkout -b feature/your-feature .git commit -m "Add your feature" .git push origin feature/your-feature .Este projeto está licenciado sob a licença do MIT. Consulte o arquivo de licença para obter mais detalhes.
Agradecimentos especiais a ferramentas como Pywal e inspiração nas comunidades de termos de terminais.



