CLI program that allows you to change your alacritty config file with one command.
Project description
Pycritty
Change your alacritty config on the fly!
Installation:
pip install pycritty
By default, only the program itself will be installed, but you can install
default themes from config/themes
:
pip install --install-option="--themes=onedark,dracula,nord" pycritty
Or if you want them all:
pip install --install-option="--themes=all" pycritty
Usage:
Change your current config:
pycritty set --font UbuntuMono --size 14 --opacity 0.95
Save multiple configs and reuse them later:
pycritty save MyConfig
# 3 bugs later ...
pycritty load MyConfig
Install themes and configs from URLs:
pycritty install -t https://raw.githubusercontent.com/antoniosarosi/pycritty/master/config/themes/breeze.yaml
pycritty set -t breeze
pycritty install -c -n SomeCoolConfig https://raw.githubusercontent.com/antoniosarosi/dotfiles/master/.config/alacritty/config.yaml
pycritty load SomeCoolConfig
Check help for all available options:
pycritty -h
# pycritty subcomand -h
pycritty set -h
Fonts Config
Fonts are configured in ~/.config/alacritty/fonts.yaml
with this format:
fonts:
Alias: Font Name
When applied using pycritty set -f Alias
, the previous format will be
converted into the alacritty equivalent:
font:
normal:
family: Font Name
italic:
family: Font Name
bold:
family: Font Name
You can also specify a different font for each font type:
fonts:
Alias:
normal: Normal Font Name
bold: Bold Font Name
italic: Italic Font Name
Note that the fonts must be installed on your system.
Theme Config
You can make your own custom themes by creating new theme files with the
correct format, ~/.config/alacritty/themes/custom.yaml
should look like
this:
colors:
# Default colors
primary:
background: '0x292d3e'
foreground: '0xbbc5ff'
# Normal colors
normal:
black: '0x101010'
red: '0xf07178'
green: '0xc3e88d'
yellow: '0xffcb6b'
blue: '0x82aaff'
magenta: '0xc792ea'
cyan: '0x89ddff'
white: '0xd0d0d0'
# Bright colors
bright:
black: '0x434758'
red: '0xff8b92'
green: '0xddffa7'
yellow: '0xffe585'
blue: '0x9cc4ff'
magenta: '0xe1acff'
cyan: '0xa3f7ff'
white: '0xffffff'
Then you can apply it using the name of the file:
pycritty set -t custom
Custom scripts
If you want to apply different configs programmatically, you can either use
the cli in a shell script or use pycritty
as a python module:
# Dummy script that changes the theme every 10 minutes
from time import sleep
from pycritty.commands import ListResource, SetConfig
def main():
ls = ListResource()
conf = SetConfig()
while True:
for theme in ls.list_themes():
conf.change_theme(theme) # or conf.set(theme=theme)
conf.apply()
sleep(600)
if __name__ == '__main__':
main()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pycritty-0.3.0.tar.gz
.
File metadata
- Download URL: pycritty-0.3.0.tar.gz
- Upload date:
- Size: 19.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.2 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b18d4b897cb9339775bb7a7f51d7aa0e6345db5cf5e79f45e1afba1324c5c617 |
|
MD5 | e64c76eb26ed46d8bc62d4f359b774b5 |
|
BLAKE2b-256 | b76bdcf94de07bf05e9c5f62bc45e2354ae75895e12517eb116b75e3d71c25ae |