/** * @param array<Command> $commands * @return void */ protected function displayShortHelpForCommands(array $commands) { $commandsByPackagesAndControllers = $this->buildCommandsIndex($commands); foreach ($commandsByPackagesAndControllers as $packageKey => $commandControllers) { $this->outputLine(''); $this->outputLine('PACKAGE "%s":', [strtoupper($packageKey)]); $this->outputLine(str_repeat('-', $this->output->getMaximumLineLength())); foreach ($commandControllers as $commands) { /** @var Command $command */ foreach ($commands as $command) { $description = wordwrap($command->getShortDescription(), $this->output->getMaximumLineLength() - 43, PHP_EOL . str_repeat(' ', 43), true); $shortCommandIdentifier = $this->commandManager->getShortestIdentifierForCommand($command); $compileTimeSymbol = $this->bootstrap->isCompileTimeCommand($shortCommandIdentifier) ? '*' : ''; $this->outputLine('%-2s%-40s %s', [$compileTimeSymbol, $shortCommandIdentifier, $description]); } $this->outputLine(); } } }