diff --git a/gen/config.py b/gen/config.py index b7defd613..cb07f2f58 100755 --- a/gen/config.py +++ b/gen/config.py @@ -45,11 +45,15 @@ def main(args: list[str]=sys.argv) -> None: all_colors = [] for opt in definition.iter_all_options(): if callable(opt.parser_func): - if opt.parser_func.__name__ in ('to_color_or_none', 'cursor_text_color'): - nullable_colors.append(opt.name) - all_colors.append(opt.name) - elif opt.parser_func.__name__ in ('to_color', 'titlebar_color', 'macos_titlebar_color', 'scrollbar_color'): - all_colors.append(opt.name) + match opt.parser_func.__name__: + case 'to_color': + all_colors.append(opt.name) + case 'macos_titlebar_color' | 'titlebar_color' | 'scrollbar_color': + all_colors.append(opt.name) + case 'to_color_or_none' | 'cursor_text_color': + nullable_colors.append(opt.name) + all_colors.append(opt.name) + patch_color_list('tools/cmd/at/set_colors.go', nullable_colors, 'NULLABLE') patch_color_list('tools/themes/collection.go', all_colors, 'ALL') nc = ',\n '.join(f'{x!r}' for x in nullable_colors)