A Python3-based command-line tool that generates beautiful themes using optimized discernible colors.
Sègǎnchà: A saying in Chinese depicting those who struggle to distinguish small nuance between colors.
Light themes generated with --background 95 and --temperature 4500, 5000 and 5300
Dark themes generated with --background 20 and --temperature 4000, 5000 and 6000
After installed CMake, run the following command to install segancha from PyPI
pip3 install seganchasGenerate demo page
segancha # generate ./segancha-default/
cd segancha-default/demo/Generate warm & dark theme extension for VSCode and install it
segancha --name my-warm-night --temperature 4500 --profile vscode
rsync -a segancha-my-warm-night/vscode/ ~/.vscode/extensions/-
-b,--background LbThe luminosity (in LAB color coordinates) of the background. With a value less than 50, it's considered as a dark theme.Range:
[0, 100]. Default:7. -
-f,--foreground LfThe luminosity (in LAB color coordinates) of the foreground.Range:
[0, 100]. Default:93. -
-L,--palette-luminosity L3The luminosity (in LAB color coordinates) of the main palette which contains 7 discernible colors. Use a negative value to let the algorithm to figure out a suitable value.Range:
[0, 100]. Default:-1 -
--maxC maxCThe maximal chroma (in LCH color coordinates) of the colors of all palettes. Use a negative value to disable this constraint.Range:
> 0. Default:-1 -
-T,--temperature TThe temperature (in Kelvin) of the white point and all gray colors. Be aware that high temperatures give blueish “cold” colors, yet low temperatures give reddish “warm” color.Range:
[4000, 25000]. Default:5000 -
--profile PROFILEGenerate corresponding theme setting for the profilePROFILE.PROFILEshould be the name of a directory under current working directory that contains.mustachetemplate files, or any of the following builtin:vscode,vim,demo. This argument can be repeated.Default:
demo -
--name NAMEThe name of the generated theme. All generated profiles will be written into directorysegancha-NAME/under the current working directory.Default:
default
Generate default theme for Vim, Neovim and VSCode
segancha --profile vim --profile vscode
rsync -a segancha-default/vim/ ~/.vim/colors/
rsync -a segancha-default/vim/ ~/.config/nvim/colors/
rsync -a segancha-default/vscode/ ~/.vscode/extensions/Generate theme with reduced saturation
segancha --name my-dumb-theme --maxC 20 --profile vscodeGenerate the color palette and apply it to your own theme template
segancha --profile demo
pystache my-vim-theme.vim.mustache segancha-default/demo/context.json > my-vim-theme.vimTODO