Global: support for named format arguments

Fix #796
This commit is contained in:
Carter Li
2024-05-27 16:41:37 +08:00
parent 965777323e
commit c8451cab52
65 changed files with 855 additions and 806 deletions
+16 -16
View File
@@ -57,14 +57,14 @@ void ffPrintTitle(FFTitleOptions* options)
else
{
FF_PRINT_FORMAT_CHECKED(FF_TITLE_MODULE_NAME, 0, &options->moduleArgs, FF_PRINT_TYPE_DEFAULT, FF_TITLE_NUM_FORMAT_ARGS, ((FFformatarg[]){
{FF_FORMAT_ARG_TYPE_STRBUF, &instance.state.platform.userName},
{FF_FORMAT_ARG_TYPE_STRBUF, &hostName},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance.state.platform.homeDir},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance.state.platform.exePath},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance.state.platform.userShell},
{FF_FORMAT_ARG_TYPE_STRBUF, &userNameColored},
{FF_FORMAT_ARG_TYPE_STRBUF, &atColored},
{FF_FORMAT_ARG_TYPE_STRBUF, &hostNameColored},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance.state.platform.userName, "user-name"},
{FF_FORMAT_ARG_TYPE_STRBUF, &hostName, "host-name"},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance.state.platform.homeDir, "home-dir"},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance.state.platform.exePath, "exe-path"},
{FF_FORMAT_ARG_TYPE_STRBUF, &instance.state.platform.userShell, "user-shell"},
{FF_FORMAT_ARG_TYPE_STRBUF, &userNameColored, "user-name-colored"},
{FF_FORMAT_ARG_TYPE_STRBUF, &atColored, "at-symbol-colored"},
{FF_FORMAT_ARG_TYPE_STRBUF, &hostNameColored, "host-name-colored"},
}));
}
}
@@ -182,14 +182,14 @@ void ffGenerateTitleJsonResult(FF_MAYBE_UNUSED FFTitleOptions* options, yyjson_m
void ffPrintTitleHelpFormat(void)
{
FF_PRINT_MODULE_FORMAT_HELP_CHECKED(FF_TITLE_MODULE_NAME, "{6}{7}{8}", FF_TITLE_NUM_FORMAT_ARGS, ((const char* []) {
"User name",
"Host name",
"Home directory",
"Executable path of current process",
"User's default shell",
"User name (colored)",
"@ symbol (colored)",
"Host name (colored)"
"User name - user-name",
"Host name - host-name",
"Home directory - home-dir",
"Executable path of current process - exe-path",
"User's default shell - user-shell",
"User name (colored) - user-name-colored",
"@ symbol (colored) - at-symbol-colored",
"Host name (colored) - host-name-colored",
}));
}