gen_faint.py: change factor to 75% + generate BrightFaint

This commit is contained in:
Boris Faure 2020-11-02 22:54:19 +01:00
parent dc0fe07bc4
commit e2a96be73d
Signed by: borisfaure
GPG Key ID: 35C0410516166BE8
1 changed files with 30 additions and 16 deletions

View File

@ -5,9 +5,9 @@ import configparser
import sys
from ini2desc import parse_color
def blend_color(cfg, blend_factor, color_name):
def blend_color(cfg, blend_factor, src, dest, color_name):
(r1, g1, b1, a1) = parse_color(cfg.get('Colors', 'bg'))
(r2, g2, b2, a2) = parse_color(cfg.get('Normal', color_name))
(r2, g2, b2, a2) = parse_color(cfg.get(src, color_name))
def blend(c1, c2, f):
d = c2 - c1
return int(c1 + d * f)
@ -16,10 +16,10 @@ def blend_color(cfg, blend_factor, color_name):
b = blend(b1, b2, blend_factor)
a = blend(a1, a2, blend_factor)
if a != 255:
cfg.set('Faint', color_name,
cfg.set(dest, color_name,
'#{:02x}{:02x}{:02x}{:02x}'.format(r, g, b, a))
else:
cfg.set('Faint', color_name,
cfg.set(dest, color_name,
'#{:02x}{:02x}{:02x}'.format(r, g, b))
def main():
@ -28,7 +28,7 @@ def main():
type=argparse.FileType('r'),
help='INI File to convert')
parser.add_argument('blend_factor',
type=int, nargs='?', default=70,
type=int, nargs='?', default=75,
help='blend factor between normal color and background')
args = parser.parse_args()
@ -42,18 +42,32 @@ def main():
if not cfg.has_section('Faint'):
cfg.add_section('Faint')
if not cfg.has_section('BrightFaint'):
cfg.add_section('BrightFaint')
blend_color(cfg, f, 'def')
blend_color(cfg, f, 'black')
blend_color(cfg, f, 'red')
blend_color(cfg, f, 'green')
blend_color(cfg, f, 'yellow')
blend_color(cfg, f, 'blue')
blend_color(cfg, f, 'magenta')
blend_color(cfg, f, 'cyan')
blend_color(cfg, f, 'white')
blend_color(cfg, f, 'inverse_fg')
blend_color(cfg, f, 'inverse_bg')
blend_color(cfg, f, 'Normal', 'Faint', 'def')
blend_color(cfg, f, 'Normal', 'Faint', 'black')
blend_color(cfg, f, 'Normal', 'Faint', 'red')
blend_color(cfg, f, 'Normal', 'Faint', 'green')
blend_color(cfg, f, 'Normal', 'Faint', 'yellow')
blend_color(cfg, f, 'Normal', 'Faint', 'blue')
blend_color(cfg, f, 'Normal', 'Faint', 'magenta')
blend_color(cfg, f, 'Normal', 'Faint', 'cyan')
blend_color(cfg, f, 'Normal', 'Faint', 'white')
blend_color(cfg, f, 'Normal', 'Faint', 'inverse_fg')
blend_color(cfg, f, 'Normal', 'Faint', 'inverse_bg')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'def')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'black')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'red')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'green')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'yellow')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'blue')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'magenta')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'cyan')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'white')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'inverse_fg')
blend_color(cfg, f, 'Bright', 'BrightFaint', 'inverse_bg')
cfg.write(sys.stdout)