From 69894f75254cd630e2e4fe1422044c6b7d6adb5f Mon Sep 17 00:00:00 2001 From: Wiimm Date: Wed, 3 Feb 2021 16:42:38 +0100 Subject: SZS 2.23a --- project/src/ui/ui-wstrt.c | 193 +++++++++++++++++++++++++--------------------- 1 file changed, 103 insertions(+), 90 deletions(-) (limited to 'project/src/ui/ui-wstrt.c') diff --git a/project/src/ui/ui-wstrt.c b/project/src/ui/ui-wstrt.c index 1f4f80b..3796b3b 100644 --- a/project/src/ui/ui-wstrt.c +++ b/project/src/ui/ui-wstrt.c @@ -16,7 +16,7 @@ * This file is part of the SZS project. * * Visit https://szs.wiimm.de/ for project details and sources. * * * - * Copyright (c) 2011-2020 by Dirk Clemens * + * Copyright (c) 2011-2021 by Dirk Clemens * * * *************************************************************************** * * @@ -508,6 +508,13 @@ static const InfoOption_t OptionInfo[OPT__N_TOTAL+1] = " messages and disable the automatic detection of the terminal width." }, + { OPT_MAX_WIDTH, false, false, false, true, false, 0, "max-width", + "maxwidth", + "Define the maximum terminal width (number of columns) for help and" + " some other messages and disable the automatic detection of the" + " terminal width. This option is ignored if --width is set." + }, + { OPT_QUIET, false, false, false, false, false, 'q', "quiet", 0, "Be quiet and print only error messages. Multiple usage is possible." @@ -833,7 +840,7 @@ static const InfoOption_t OptionInfo[OPT__N_TOTAL+1] = " directory." }, - {0,0,0,0,0,0,0,0,0,0} // OPT__N_TOTAL == 111 + {0,0,0,0,0,0,0,0,0,0} // OPT__N_TOTAL == 112 }; @@ -1001,6 +1008,8 @@ static const struct option OptionLong[] = { "allowall", 0, 0, GO_ALLOW_ALL }, { "compatible", 1, 0, GO_COMPATIBLE }, { "width", 1, 0, GO_WIDTH }, + { "max-width", 1, 0, GO_MAX_WIDTH }, + { "maxwidth", 1, 0, GO_MAX_WIDTH }, { "quiet", 0, 0, 'q' }, { "verbose", 0, 0, 'v' }, { "logging", 0, 0, 'L' }, @@ -1206,96 +1215,98 @@ static const OptionIndex_t OptionIndex[UIOPT_INDEX_SIZE] = /* 0x081 */ OPT_ALLOW_ALL, /* 0x082 */ OPT_COMPATIBLE, /* 0x083 */ OPT_WIDTH, - /* 0x084 */ OPT_DE, - /* 0x085 */ OPT_COLORS, - /* 0x086 */ OPT_NO_COLORS, - /* 0x087 */ OPT_CT_CODE, - /* 0x088 */ OPT_LE_CODE, - /* 0x089 */ OPT_CHDIR, - /* 0x08a */ OPT_VS_REGION, - /* 0x08b */ OPT_BT_REGION, - /* 0x08c */ OPT_ALL_RANKS, - /* 0x08d */ OPT_POINTS, - /* 0x08e */ OPT_CHEAT, - /* 0x08f */ OPT_HTTPS, - /* 0x090 */ OPT_DOMAIN, - /* 0x091 */ OPT_WIIMMFI, - /* 0x092 */ OPT_TWIIMMFI, - /* 0x093 */ OPT_WC24, - /* 0x094 */ OPT_WCODE, - /* 0x095 */ OPT_ADD_WCODE, - /* 0x096 */ OPT_PB_MODE, - /* 0x097 */ OPT_PATCHED_BY, - /* 0x098 */ OPT_VS, - /* 0x099 */ OPT_VS2, - /* 0x09a */ OPT_BT, - /* 0x09b */ OPT_BT2, - /* 0x09c */ OPT_CANNON, - /* 0x09d */ OPT_MENO, - /* 0x09e */ OPT_UTF_8, - /* 0x09f */ OPT_NO_UTF_8, - /* 0x0a0 */ OPT_FORCE, - /* 0x0a1 */ OPT_REPAIR_MAGICS, - /* 0x0a2 */ OPT_OLD, - /* 0x0a3 */ OPT_STD, - /* 0x0a4 */ OPT_NEW, - /* 0x0a5 */ OPT_EXTRACT, - /* 0x0a6 */ OPT_NUMBER, - /* 0x0a7 */ OPT_CLEAN_DOL, - /* 0x0a8 */ OPT_ADD_LECODE, - /* 0x0a9 */ OPT_ADD_CTCODE, - /* 0x0aa */ OPT_CT_DIR, - /* 0x0ab */ OPT_MOVE_D8, - /* 0x0ac */ OPT_ADD_SECTION, - /* 0x0ad */ OPT_FULL_GCH, - /* 0x0ae */ OPT_GCT_NO_SEP, - /* 0x0af */ OPT_GCT_SEP, - /* 0x0b0 */ OPT_GCT_ASM_SEP, - /* 0x0b1 */ OPT_GCT_LIST, - /* 0x0b2 */ OPT_GCT_MOVE, - /* 0x0b3 */ OPT_GCT_ADDR, - /* 0x0b4 */ OPT_GCT_SPACE, - /* 0x0b5 */ OPT_ALLOW_USER_GCH, - /* 0x0b6 */ OPT_CREATE_SECT, - /* 0x0b7 */ OPT_WPF, - /* 0x0b8 */ OPT_SECTIONS, - /* 0x0b9 */ OPT_VADDR, - /* 0x0ba */ OPT_FADDR, - /* 0x0bb */ OPT_SNAME, - /* 0x0bc */ OPT_INT1, - /* 0x0bd */ OPT_INT2, - /* 0x0be */ OPT_INT3, - /* 0x0bf */ OPT_INT4, - /* 0x0c0 */ OPT_INT5, - /* 0x0c1 */ OPT_INT6, - /* 0x0c2 */ OPT_INT7, - /* 0x0c3 */ OPT_INT8, - /* 0x0c4 */ OPT_FLOAT, - /* 0x0c5 */ OPT_DOUBLE, - /* 0x0c6 */ OPT_LE, - /* 0x0c7 */ OPT_BE, - /* 0x0c8 */ OPT_ZEROS, - /* 0x0c9 */ OPT_HEX, - /* 0x0ca */ OPT_DEC, - /* 0x0cb */ OPT_C_SYNTAX, - /* 0x0cc */ OPT_ADDR, - /* 0x0cd */ OPT_ALIGN, - /* 0x0ce */ OPT_TRIGGER, - /* 0x0cf */ OPT_NO_ADDR, - /* 0x0d0 */ OPT_NO_NUMBERS, - /* 0x0d1 */ OPT_NO_TEXT, - /* 0x0d2 */ OPT_FORMAT, - /* 0x0d3 */ OPT_NO_NULL, - /* 0x0d4 */ OPT_NARROW, - /* 0x0d5 */ OPT_SMALL, - /* 0x0d6 */ OPT_WIDE, - /* 0x0d7 */ OPT_BYTES, - /* 0x0d8 */ 0,0,0,0, 0,0,0,0, + /* 0x084 */ OPT_MAX_WIDTH, + /* 0x085 */ OPT_DE, + /* 0x086 */ OPT_COLORS, + /* 0x087 */ OPT_NO_COLORS, + /* 0x088 */ OPT_CT_CODE, + /* 0x089 */ OPT_LE_CODE, + /* 0x08a */ OPT_CHDIR, + /* 0x08b */ OPT_VS_REGION, + /* 0x08c */ OPT_BT_REGION, + /* 0x08d */ OPT_ALL_RANKS, + /* 0x08e */ OPT_POINTS, + /* 0x08f */ OPT_CHEAT, + /* 0x090 */ OPT_HTTPS, + /* 0x091 */ OPT_DOMAIN, + /* 0x092 */ OPT_WIIMMFI, + /* 0x093 */ OPT_TWIIMMFI, + /* 0x094 */ OPT_WC24, + /* 0x095 */ OPT_WCODE, + /* 0x096 */ OPT_ADD_WCODE, + /* 0x097 */ OPT_PB_MODE, + /* 0x098 */ OPT_PATCHED_BY, + /* 0x099 */ OPT_VS, + /* 0x09a */ OPT_VS2, + /* 0x09b */ OPT_BT, + /* 0x09c */ OPT_BT2, + /* 0x09d */ OPT_CANNON, + /* 0x09e */ OPT_MENO, + /* 0x09f */ OPT_UTF_8, + /* 0x0a0 */ OPT_NO_UTF_8, + /* 0x0a1 */ OPT_FORCE, + /* 0x0a2 */ OPT_REPAIR_MAGICS, + /* 0x0a3 */ OPT_OLD, + /* 0x0a4 */ OPT_STD, + /* 0x0a5 */ OPT_NEW, + /* 0x0a6 */ OPT_EXTRACT, + /* 0x0a7 */ OPT_NUMBER, + /* 0x0a8 */ OPT_CLEAN_DOL, + /* 0x0a9 */ OPT_ADD_LECODE, + /* 0x0aa */ OPT_ADD_CTCODE, + /* 0x0ab */ OPT_CT_DIR, + /* 0x0ac */ OPT_MOVE_D8, + /* 0x0ad */ OPT_ADD_SECTION, + /* 0x0ae */ OPT_FULL_GCH, + /* 0x0af */ OPT_GCT_NO_SEP, + /* 0x0b0 */ OPT_GCT_SEP, + /* 0x0b1 */ OPT_GCT_ASM_SEP, + /* 0x0b2 */ OPT_GCT_LIST, + /* 0x0b3 */ OPT_GCT_MOVE, + /* 0x0b4 */ OPT_GCT_ADDR, + /* 0x0b5 */ OPT_GCT_SPACE, + /* 0x0b6 */ OPT_ALLOW_USER_GCH, + /* 0x0b7 */ OPT_CREATE_SECT, + /* 0x0b8 */ OPT_WPF, + /* 0x0b9 */ OPT_SECTIONS, + /* 0x0ba */ OPT_VADDR, + /* 0x0bb */ OPT_FADDR, + /* 0x0bc */ OPT_SNAME, + /* 0x0bd */ OPT_INT1, + /* 0x0be */ OPT_INT2, + /* 0x0bf */ OPT_INT3, + /* 0x0c0 */ OPT_INT4, + /* 0x0c1 */ OPT_INT5, + /* 0x0c2 */ OPT_INT6, + /* 0x0c3 */ OPT_INT7, + /* 0x0c4 */ OPT_INT8, + /* 0x0c5 */ OPT_FLOAT, + /* 0x0c6 */ OPT_DOUBLE, + /* 0x0c7 */ OPT_LE, + /* 0x0c8 */ OPT_BE, + /* 0x0c9 */ OPT_ZEROS, + /* 0x0ca */ OPT_HEX, + /* 0x0cb */ OPT_DEC, + /* 0x0cc */ OPT_C_SYNTAX, + /* 0x0cd */ OPT_ADDR, + /* 0x0ce */ OPT_ALIGN, + /* 0x0cf */ OPT_TRIGGER, + /* 0x0d0 */ OPT_NO_ADDR, + /* 0x0d1 */ OPT_NO_NUMBERS, + /* 0x0d2 */ OPT_NO_TEXT, + /* 0x0d3 */ OPT_FORMAT, + /* 0x0d4 */ OPT_NO_NULL, + /* 0x0d5 */ OPT_NARROW, + /* 0x0d6 */ OPT_SMALL, + /* 0x0d7 */ OPT_WIDE, + /* 0x0d8 */ OPT_BYTES, + /* 0x0d9 */ 0,0,0,0, 0,0,0, /* 0x0e0 */ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, /* 0x0f0 */ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, /* 0x100 */ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, /* 0x110 */ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, - /* 0x120 */ 0,0,0,0, 0,0,0,0, 0,0,0,0, + /* 0x120 */ 0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0, + /* 0x130 */ 0,0,0,0, 0,0, }; // @@ -1464,6 +1475,7 @@ static const InfoOption_t * option_tab_tool[] = OptionInfo + OPT_ALLOW_ALL, OptionInfo + OPT_COMPATIBLE, OptionInfo + OPT_WIDTH, + OptionInfo + OPT_MAX_WIDTH, OptionInfo + OPT_QUIET, OptionInfo + OPT_VERBOSE, OptionInfo + OPT_LOGGING, @@ -1517,6 +1529,7 @@ static const InfoOption_t * option_tab_cmd_VERSION[] = static const InfoOption_t * option_tab_cmd_HELP[] = { OptionInfo + OPT_WIDTH, + OptionInfo + OPT_MAX_WIDTH, 0 }; @@ -1837,7 +1850,7 @@ static const InfoCommand_t CommandInfo[CMD__N+1] = "Wiimms StaticR Tool : Manipulate the 'main.dol' and 'StaticR.rel'" " files of Mario Kart Wii.", 0, - 37, + 38, option_tab_tool, 0 }, @@ -1875,7 +1888,7 @@ static const InfoCommand_t CommandInfo[CMD__N+1] = " The third variant (with a valid command name) prints details about" " the declared command. The fourth variant prints an overview about" " all commands and all global options.", - 1, + 2, option_tab_cmd_HELP, option_allowed_cmd_HELP }, -- cgit v1.3.1