Releases: Misterio77/flavours
v0.7.1
v0.7.0
release 0.7.0
v0.6.1
I forgot to bump the cargo package
v0.6.0
This version introduces a couple changes aimed at version controlled reproducible workflows.
-
Flavours will now look for schemes and templates in your configuration directory. Thanks @loiccoyle!
-
You can now add
[[extra_scheme]]and[[extra_templates]]entries to your config to configure schemes and templates sources declaratively. Thanks @Softsun2!
Fix clap compiling issue
Hey!
This release explicitly locks clap version, as to avoid compiling issues reported #38 (caused by cargo install not respecting Cargo.lock).
Base24 support
Hey!
This small release contains a few fixes that have been waiting around to be release, and hopefully fixes #37.
This also includes support for base24 schemes and templates. This is fully backwards compatible, the 8 extra colors can be used by templates as desired (or not used at all), and all have fallback colors when you use a base16 scheme.
I've also renamed the configuration key item to items, this is also backwards compatible and basically just for better semantics.
Add build subcommand, from stdin flag for apply
Hey guys!
You can now use flavours as a traditional base16 builder: the subcommand flavours build builds a given template file using a scheme file. Perfect for any cool automation you can think of.
The flavours apply subcommand now supports a --stdin flag. This can be used in all sorts of ways, but the reasoning for this addition was chaining with flavours generate, allowing you to generate and apply a scheme without writing it to disk first (works great if you have an immutable flavours directory, for example): flavours generate --stdout dark kitties-wallpaper.png | flavours apply --stdin.
I've also revamped how shell completion generation works, no more manual fixing nescessary!
Run hooks inside preferred shell
Hey everyone!
This release includes a new feature, that allows hooks to run inside a shell. This should allow you to use bash (or any other) syntax on your hooks.
The shell is configurable on your config.toml, but defaults to sh -c '{}'. This means it should work by default in any POSIX system. If you use flavours on windows (i'm not sure if someone does?), this will probably be a breaking change, so configure your shell to whatever you use (or set it to {} to get the pre-0.4 behaviour).
Let me know if you have any feedback!
Add lightweight hook mode
Hey folks, a quick and small feature i noticed was interesting when trying out fzf as a scheme chooser.
You can now specify whether configuration items are lightweight or not. They default to light=true, that is, all items are light enough unless you explicitly tell flavours otherwise.
When running apply, you can use flavours apply --light to only run lightweight hooks, that is, skip any hooks you marked as heavy-duty.
This enables you to do some pretty cool stuff, such as using fzf's --preview to seamlessly (really, flavours is insanely fast) preview schemes on the fly (while skipping hooks that take a second or so to run, such as sway's reload), and only run the non-lightweight hooks after you're done selecting.
For anyone interested, this fuzzy selector can easily be done with:
flavours list -l | fzf --preview='flavours apply -l {}'
If you want something more advanced (revert to previous scheme when fzf is closed with esc, run flavours apply on non-lightweight mode after selecting), it's quite simple too:
old="$(flavours current)"
flavours list -l | fzf --preview='flavours apply -l {}' || \
flavours apply "${old}" && \
flavours apply "$(flavours current)"