mirror of
https://github.com/fastfetch-cli/fastfetch.git
synced 2026-10-30 09:33:39 +01:00
Fastfetch: make --size-max-prefix accept enum values.
This commit is contained in:
@@ -302,9 +302,10 @@
|
||||
"default": 2
|
||||
},
|
||||
"sizeMaxPrefix": {
|
||||
"type": "integer",
|
||||
"title": "Set the largest binary prefix to use when formatting sizes. 0 is B; 1 is KB; 2 is MB; etc.",
|
||||
"default": 255
|
||||
"type": "string",
|
||||
"title": "Set the largest binary prefix to use when formatting sizes",
|
||||
"enum": ["B", "kB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"],
|
||||
"default": "YB"
|
||||
},
|
||||
"percentType": {
|
||||
"type": "number",
|
||||
|
||||
+17
-1
@@ -389,7 +389,23 @@ const char* ffParseDisplayJsonConfig(void)
|
||||
else if (ffStrEqualsIgnCase(key, "sizeNdigits"))
|
||||
config->sizeNdigits = (uint8_t) yyjson_get_uint(val);
|
||||
else if (ffStrEqualsIgnCase(key, "sizeMaxPrefix"))
|
||||
config->sizeMaxPrefix = (uint8_t) yyjson_get_uint(val);
|
||||
{
|
||||
int value;
|
||||
const char* error = ffJsonConfigParseEnum(val, &value, (FFKeyValuePair[]) {
|
||||
{ "B", 0 },
|
||||
{ "kB", 1 },
|
||||
{ "MB", 2 },
|
||||
{ "GB", 3 },
|
||||
{ "TB", 4 },
|
||||
{ "PB", 5 },
|
||||
{ "EB", 6 },
|
||||
{ "ZB", 7 },
|
||||
{ "YB", 8 },
|
||||
{}
|
||||
});
|
||||
if (error) return error;
|
||||
config->sizeMaxPrefix = (uint8_t) value;
|
||||
}
|
||||
else if (ffStrEqualsIgnCase(key, "percentType"))
|
||||
config->percentType = (uint32_t) yyjson_get_uint(val);
|
||||
else if (ffStrEqualsIgnCase(key, "noBuffer"))
|
||||
|
||||
@@ -159,10 +159,10 @@
|
||||
#--size-ndigits 2
|
||||
|
||||
# Size max prefix option:
|
||||
# Sets the largest binary prefix to use when formatting sizes. 0 is B; 1 is KB; 2 is MB; etc.
|
||||
# Must be an possitive integer.
|
||||
# Default is 255 (unlimited).
|
||||
#--size-max-prefix 255
|
||||
# Sets the largest binary prefix to use when formatting sizes.
|
||||
# Must be one of B, kB, MB, GB, TB, PB, EB, ZB, YB
|
||||
# Default is YB.
|
||||
#--size-max-prefix YB
|
||||
|
||||
# Disable output buffer option:
|
||||
# Sets if the stdout application buffer should be disabled.
|
||||
|
||||
+1
-1
@@ -66,7 +66,7 @@ Display options:
|
||||
--percent-type <value>: Set the percentage output type. 1 for percentage number, 2 for bar, 3 for both, 6 for bar only, 9 for colored number. Default is 1
|
||||
--no-buffer <?value>: Set if the stdout application buffer should be disabled. Default is false
|
||||
--size-ndigits <value>: Set the number of digits to keep after the decimal point when formatting sizes
|
||||
--size-max-prefix <value>: Set the largest binary prefix to use when formatting sizes. 0 is B; 1 is KB; 2 is MB; etc.
|
||||
--size-max-prefix <value>: Set the largest binary prefix to use when formatting sizes. Default is YB
|
||||
|
||||
General module options:
|
||||
--<module>-format <format>: Set the format string to use for each specific module.
|
||||
|
||||
+14
-1
@@ -918,7 +918,20 @@ static void parseOption(FFdata* data, const char* key, const char* value)
|
||||
else if(ffStrEqualsIgnCase(key, "--size-ndigits"))
|
||||
instance.config.sizeNdigits = (uint8_t) ffOptionParseUInt32(key, value);
|
||||
else if(ffStrEqualsIgnCase(key, "--size-max-prefix"))
|
||||
instance.config.sizeMaxPrefix = (uint8_t) ffOptionParseUInt32(key, value);
|
||||
{
|
||||
instance.config.sizeMaxPrefix = (uint8_t) ffOptionParseEnum(key, value, (FFKeyValuePair[]) {
|
||||
{ "B", 0 },
|
||||
{ "kB", 1 },
|
||||
{ "MB", 2 },
|
||||
{ "GB", 3 },
|
||||
{ "TB", 4 },
|
||||
{ "PB", 5 },
|
||||
{ "EB", 6 },
|
||||
{ "ZB", 7 },
|
||||
{ "YB", 8 },
|
||||
{}
|
||||
});
|
||||
}
|
||||
else if(ffStrEqualsIgnCase(key, "--percent-type"))
|
||||
instance.config.percentType = ffOptionParseUInt32(key, value);
|
||||
else if(ffStrEqualsIgnCase(key, "--no-buffer"))
|
||||
|
||||
Reference in New Issue
Block a user