Symfony进度条 - 简单的绿色(类似于<info> </>)?

3
使用Symfony对消息进行着色非常方便:
$output->writeln('<info>Hello world</info>');

有什么最简单的方法可以将进度条设置为这种颜色方案。没有花哨的东西 - 没有额外的要求:只需将进度条声明为标准颜色中的一个信息:fg=绿色 bg=黑色?就是这样.

我只找到了超级花哨的自定义说明 - 这不是我需要的。

我尝试使用了多个方法,但是

$progress->setFormat();

或者

$progress->setFormatDefinition();

未成功
2个回答

7
你可以使用进度条组件的方法来自定义进度条。要改变颜色,只需要设置character(链接)
$progressBar = new ProgressBar($output, $cpt);
$progressBar->setBarCharacter('<fg=green>•</>');
$progressBar->setEmptyBarCharacter('<fg=green>⚬</>');
$progressBar->setProgressCharacter('<fg=green>➤</>');
$progressBar->setFormat($format);

这个例子提供了以下内容:
在命令行中运行一个进度条,如下图所示:command with progress bar

谢谢,但这不是我要求的。我明确要求一个简单的方法。我只是不想重新定义每个组件。我只希望默认情况下已经定义的所有内容都完整地显示为<info>,即绿色。 - Black Senator

1
相当接近我所寻找的内容:

$progress = new ProgressBar($output);
$progress->setFormatDefinition('info', '<info>%current% [%bar%]</info>');
$progress->setFormat('info');

它会变得更容易吗?


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接