From 1c8769386762456b995e923a12e017c23eefd581 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E9=80=9A=E6=B4=B2?= Date: Mon, 26 Feb 2024 10:23:00 +0800 Subject: [PATCH] Percent: tidy --- src/common/percent.c | 6 +++--- src/options/display.c | 11 +++++++++++ 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/common/percent.c b/src/common/percent.c index 306838d06..9c52970ed 100644 --- a/src/common/percent.c +++ b/src/common/percent.c @@ -89,9 +89,9 @@ void ffPercentAppendNum(FFstrbuf* buffer, double percent, FFPercentConfig config if (colored && !options->pipe) { - const char* colorGreen = instance.config.display.percentColorGreen.chars; - const char* colorYellow = instance.config.display.percentColorYellow.chars; - const char* colorRed = instance.config.display.percentColorRed.chars; + const char* colorGreen = options->percentColorGreen.chars; + const char* colorYellow = options->percentColorYellow.chars; + const char* colorRed = options->percentColorRed.chars; if(percent != percent) ffStrbufAppendS(buffer, "\e[" FF_COLOR_FG_LIGHT_BLACK "m"); diff --git a/src/options/display.c b/src/options/display.c index 5ba60b58e..c1b254b5d 100644 --- a/src/options/display.c +++ b/src/options/display.c @@ -452,6 +452,17 @@ void ffOptionsGenerateDisplayJsonConfig(FFOptionsDisplay* options, yyjson_mut_do yyjson_mut_obj_add_uint(doc, percent, "type", options->percentType); if (options->percentNdigits != defaultOptions.percentNdigits) yyjson_mut_obj_add_uint(doc, percent, "ndigits", options->percentNdigits); + { + yyjson_mut_val* color = yyjson_mut_obj(doc); + if (!ffStrbufEqual(&options->percentColorGreen, &defaultOptions.percentColorGreen)) + yyjson_mut_obj_add_strbuf(doc, color, "green", &options->percentColorGreen); + if (!ffStrbufEqual(&options->percentColorYellow, &defaultOptions.percentColorYellow)) + yyjson_mut_obj_add_strbuf(doc, color, "yellow", &options->percentColorYellow); + if (!ffStrbufEqual(&options->percentColorRed, &defaultOptions.percentColorRed)) + yyjson_mut_obj_add_strbuf(doc, color, "red", &options->percentColorRed); + if (yyjson_mut_obj_size(color) > 0) + yyjson_mut_obj_add_val(doc, percent, "color", color); + } if (yyjson_mut_obj_size(percent) > 0) yyjson_mut_obj_add_val(doc, obj, "percent", percent); }