private function describeConsoleCommand(AbstractCommand $command, array $options)
	{
		$command->getSynopsis(true);
		$command->getSynopsis(false);
		$command->mergeApplicationDefinition(false);

		$this->writeText('<comment>Usage:</comment>', $options);

		foreach (array_merge([$command->getSynopsis(true)], $command->getAliases()) as $usage)
		{
			$this->writeText("\n");
			$this->writeText('  ' . $usage, $options);
		}

		$this->writeText("\n");

		$definition = $command->getDefinition();

		if ($definition->getOptions() || $definition->getArguments())
		{
			$this->writeText("\n");
			$this->describeInputDefinition($definition, $options);
			$this->writeText("\n");
		}

		if ($help = $command->getProcessedHelp())
		{
			$this->writeText("\n");
			$this->writeText('<comment>Help:</comment>', $options);
			$this->writeText("\n");
			$this->writeText('  ' . str_replace("\n", "\n  ", $help), $options);
			$this->writeText("\n");
		}
	}