From: Michael Wallner Date: Tue, 9 Apr 2019 06:36:27 +0000 (+0200) Subject: fix command help text output X-Git-Tag: v4.1.2~2 X-Git-Url: https://git.m6w6.name/?a=commitdiff_plain;ds=sidebyside;h=3bab80c9541fce30bec2f69f41ad931ea4db7880;p=pharext%2Fpharext fix command help text output --- diff --git a/src/pharext/Cli/Args/Help.php b/src/pharext/Cli/Args/Help.php index e67da9c..907a40d 100644 --- a/src/pharext/Cli/Args/Help.php +++ b/src/pharext/Cli/Args/Help.php @@ -2,6 +2,7 @@ namespace pharext\Cli\Args; +use function array_column; use pharext\Cli\Args; class Help @@ -79,10 +80,32 @@ class Help $dump = ""; if ($req) { - $dump .= sprintf(" [-%s ]", implode("|-", array_column($req, 0))); + $short = array_filter($req, function($a) { + return is_string($a[0]); + }); + if ($short) { + $dump .= sprintf(" [-%s ]", implode("|-", array_column($short, 0))); + } + $long = array_filter($req, function($a) { + return !is_string($a[0]); + }); + if ($long) { + $dump .= sprintf(" [--%s ]", implode("|--", array_column($long, 1))); + } } if ($opt) { - $dump .= sprintf(" [-%s []]", implode("|-", array_column($opt, 0))); + $short = array_filter($opt, function($a) { + return is_string($a[0]); + }); + if ($short) { + $dump .= sprintf(" [-%s []]", implode("|-", array_column($short, 0))); + } + $long = array_filter($opt, function($a) { + return !is_string($a[0]); + }); + if ($long) { + $dump .= sprintf(" [--%s []]", implode("|--", array_column($long, 1))); + } } return $dump; } @@ -134,7 +157,7 @@ class Help foreach ($this->args->getSpec() as $spec) { $dump .= " "; if (is_numeric($spec[0])) { - $dump .= sprintf("-- %s ", $spec[1]); + $dump .= sprintf(" <%s> ", $spec[1]); } elseif (isset($spec[0])) { $dump .= sprintf("-%s|", $spec[0]); }