Atualmente, tenho um aplicativo de linha de comando em C chamado btcwatch
. Tem uma -C
opção que pode receber como argumento que compara o preço atual do Bitcoin com um preço que foi previamente armazenado -S
. Exemplo de saída com esta opção é:
$ btcwatch -vC # -v = verbose
buy: UP $ 32.000000 USD (100.000000 -> 132.000000)
sell: UP $ 16.000000 USD (100.000000 -> 116.000000)
O dilema é se deve usar cor para a UP
ou DOWN
string (verde e vermelho, respectivamente). A maioria dos aplicativos de linha de comando que eu conheço (além do git) fica longe da cor na saída. No meu desejo de btcwatch
parecer e ser bastante "padrão" (uso de getopt
Makefiles, etc), não tenho certeza se a cor ficaria fora de lugar nessa situação.
coding-standards
command-line
bash
color
Marco Scannadinari
fonte
fonte
git diff
,git pull
, etc.Respostas:
A coisa apropriada a fazer é tornar a coloração opcional, o padrão é "off" e controlá-la através de um sinalizador da linha de comando. Dessa forma, pessoas que não gostam ou cujo terminal não o suporta não são afetadas, pessoas que gostam dele podem usá-lo e pessoas que realmente gostam podem definir um alias ou atalho para predefinir a opção. Todo mundo está feliz.
fonte
ls
(als --color
opção é necessária para ativá-la).--color
./bin/ls
é simples,/bin/ls -G
é colorido (embora, se você tiver o CLICOLOR definido no ambiente, essa opção atue como padrão). Nas distribuições influenciadas pelo gnu , vê-se--color
e suas variáveis de ambiente associadas.alias ls='ls --color=auto'
vem o padrão.bashrc
(ou, se não existir mais, ocorreu algo em torno de 8,04 ou mais por ano, e eu acabei de carregar meu .bashrc nas instalações)Eu consideraria apropriado usar cores quando:
Existem 'grupos' de itens e grupos de cores ajudarão a agrupar visualmente os itens.
Existem conjuntos de campos 'label: value' e você deseja que os rótulos (ou valores) se destaquem.
Existem itens que poderiam ser exibidos em vermelho / verde, por exemplo, parar / ir, bom / ruim, etc.
A maioria das informações é de segundo plano, mas um item importante deve se destacar.
fonte
Outro fator importante a considerar é que a coloração, dependendo da plataforma, pode adicionar seqüências de escape de caracteres. Para compilações nessas plataformas, se o modo atual / padrão é produzir cores, é habitual detectar se a saída do programa é uma tubulação e, se for o caso, uma cor de tira.
Isso ocorre para que as seqüências de escape de cores não atinjam os programas downstream que lêem sua saída.
fonte
--colour
(ou--no-colour
) opção será mais amigável para tais programas