Eu tive que mudar a cor de fundo do console para branco devido a problemas nos olhos, mas a fonte é cinza e torna as mensagens ilegíveis. Como posso mudá-lo?
No mesmo local que você já usou para alterar a cor do plano de fundo, você pode alterar as outras cores.
Dan D.
@hippietrail, vocês encontraram uma solução melhor ou podem aceitar uma das respostas para esta pergunta?
Nelsonic
Como você faz isso no Node.js puro? Sem cores ou qualquer outro pacote.
Costa
1
Estou tendo o mesmo problema. Eu suspeito que o @Viclib esteja usando o Windows (como eu sou), e é por isso que as instruções para alterar as cores dos terminais são um conceito estranho. O prompt de comando do Windows permite alterar 2 cores de primeiro plano e 2 de fundo. O nó usa outras cores que o prompt de comando do Windows não pode definir.
Greg madeiras
2
Mais tarde, descobri que meu modelo mental de como as cores do prompt de comando do Windows funcionavam estava completamente errado. Presumi incorretamente (devido a uma interface do usuário terrível) que você só pode alterar as cores de primeiro plano e de primeiro plano. Isto está errado. Todas as 16 cores podem ser usadas por um aplicativo de console, e é vital escolher cores sensíveis para todas as 16 e SEMPRE usar o ladrilho de cores 1 como plano de fundo (e o ladrilho 9 para "plano de fundo pop-up"). Essa foi uma revelação para mim, escrevi uma postagem no blog (um evento raro de fato). gregwoods.co.uk/2015/04/...
Greg Woods,
Respostas:
1151
Abaixo, você pode encontrar uma referência de cores do texto a ser comandada ao executar o aplicativo node.js.
console.log('\x1b[36m%s\x1b[0m','I am cyan');//cyan
console.log('\x1b[33m%s\x1b[0m', stringToMakeYellow);//yellow
Nota %sé onde a string (o segundo argumento) é injetada.\x1b[0mredefine a cor do terminal para que não continue mais a cor escolhida após esse ponto.
Por exemplo, \x1b[31mé uma sequência de escape que será interceptada pelo seu terminal e instrui-o a mudar para a cor vermelha. De fato, \x1bé o código para o caractere de controle não imprimívelescape . As seqüências de escape que lidam apenas com cores e estilos também são conhecidas como código de escape ANSI e são padronizadas; portanto, elas devem funcionar em qualquer plataforma.
Aceitei essa pergunta porque é a mais preguiçosa que funciona, tem muitas cores e nenhuma dependência. Se você deseja uma solução mais simples com dependências, verifique a resposta do @ nelsonic, que sugere bibliotecas muito diretas.
MaiaVictor
7
Onde você encontrou essa referência? O que significa cada caractere em um valor de cor?
Como devo impedir que esses caracteres sejam exibidos ao imprimir em arquivo, e não no console?
Sky
1
Curiosamente, no PowerShell do Windows 10, o amarelo fica branco? Amarelo pode ser feito para funcionar; giz faz isso. No entanto, essa resposta me impediu de adicionar giz como uma dependência de alguns logs desprezíveis, obrigado!
Webel
318
Existem vários pacotes disponíveis para formatar o texto do console no Node.js. Os mais populares são:
const chalk = require('chalk');
console.log(chalk.red('Text in red'));
CLI-COLOR:
const clc = require('cli-color');
console.log(clc.red('Text in red'));
CORES:
const colors = require('colors');
console.log('Text in red'.red);
Muitas pessoas notaram sua desaprovação de colorsalterar o protótipo String . Se você preferir que seus protótipos sejam deixados em paz, use o seguinte código:
const colors = require('colors/safe');
console.log(colors.red('Text in red'));
Ele ainda possui suporte simples e leve para estilos!
Hippietrail
2
O @devundef concorda com você em adicionar métodos ao objeto String. Vale a pena mencionar isso para o autor do módulo no GitHub. E / ou sugerindo um módulo / método alternativo com nível de simplicidade semelhante.
Nelsonic
3
Embora eu concorde que a resposta de MattJohnson (substituindo as cores padrão do método util.inpect - veja abaixo) é melhor do que usar o módulo Colors, o módulo Colors requer zero configuração e atende às necessidades da grande maioria dos usuários, que está simplesmente mudando a cor do console saída .log. Certamente, "mexer com os built-ins" é ruim (concordo 100%), mas nenhum código implantado deve conter instruções console.log, portanto, vamos ser pragmáticos sobre isso. @devundef Os métodos extras de String adicionados à bagunça do protótipo com seus testes de unidade?
Nelsonic
8
O Colors agora tem isso: var colors = require('colors/safe');e depois usecolors.red('left string all alone')
Laoujin 29/04
1
Bem localizado @Laoujin - da próxima vez, sinta-se à vontade para propor uma edição. Eu alterei o exemplo de código para Cores na resposta.
Nelsonic 30/12/2015
155
Se você quiser alterar as cores diretamente sem um módulo, tente
console.log('\x1b[36m','sometext','\x1b[0m');
Primeiro, \x1b[36maltere as cores para 36e depois volte para a cor do terminal 0.
Acredito que o OP não deseja imprimir texto específico em uma cor específica, mas toda a saída do Terminal tenha uma cor diferente por padrão, talvez até preta, devido ao fundo branco.
Cwoebker
Então ele deve alterar as configurações do seu terminal. Tenho certeza que é possível no Linux. Não faço ideia do Windows.
Dariuszp
14
\033[31mfunciona mas \033[91mnão funciona . Para o Ubuntu Terminal deveria ser \033[0m.
Redsandro 13/01
4
E escapes octais não parecem trabalho:error: octal escape sequences "\033[31mServer ready @ #{app.get('port')}\033[91m" are not allowed
jcollum
4
\033[0mdeve ser usado para ligar a para trás o texto ao normal, não\033[91m
mollerhoj
31
Esta é uma lista de cores disponíveis (plano de fundo, primeiro plano) no console com ações disponíveis (redefinir, reverter, ...).
console.log(colors.bg.Blue, colors.fg.White,"I am white message with blue background", colors.Reset);//don't forget "colors.Reset" to stop this color and return back to the default color
Estou usando o mesmo e funciona bem, mas por algum motivo Dim não faz nada? Eu quero o efeito de cor cinza, para que o pensamento usasse a cor branca com efeito esmaecido, resultaria em cor cinza, mas apenas a cor branca não imprime. Qualquer ideia?
Angad
28
De acordo com esta documentação , você pode alterar as cores com base no tipo de dados da saída:
// you'll need the util modulevar util = require('util');// let's look at the defaults:
util.inspect.styles
{ special:'cyan',
number:'yellow',
boolean:'yellow',undefined:'grey',null:'bold',
string:'green',
date:'magenta',
regexp:'red'}// what are the predefined colors?
util.inspect.colors
{ bold:[1,22],
italic:[3,23],
underline:[4,24],
inverse:[7,27],
white:[37,39],
grey:[90,39],
black:[30,39],
blue:[34,39],
cyan:[36,39],
green:[32,39],
magenta:[35,39],
red:[31,39],
yellow:[33,39]}
Esses parecem ser códigos de escape ANSI SGR, onde o primeiro número é o código a ser emitido antes da saída e o segundo número é o código a ser emitido depois. Então, se olharmos para o gráfico de códigos ANSI SGR na Wikipedia , você verá que muitos deles começam com um número 30-37 para definir a cor do primeiro plano e terminam em 39 para redefinir a cor do primeiro plano padrão.
Então, uma coisa que eu não gosto é como algumas delas são escuras. Especialmente datas. Vá em frente e tente new Date()no console. Magenta escura sobre preto é realmente difícil de ler. Vamos mudar isso para uma magenta clara.
// first define a new color
util.inspect.colors.lightmagenta =[95,39];// now assign it to the output for date types
util.inspect.styles.date ='lightmagenta';
Agora, quando você tenta new Date() , a saída é muito mais legível.
Se você deseja definir cores automaticamente ao iniciar o nó, crie um script que inicie a repl, assim:
// set your colors however desiredvar util = require('util');
util.inspect.colors.lightmagenta =[95,39];
util.inspect.styles.date ='lightmagenta';// start the repl
require('repl').start({});
Salve este arquivo (por exemplo init.js) e executenode.exe init.js . Ele definirá as cores e ativará o prompt de comando node.js.
(Agradecemos a loganfsmyth nesta resposta pela ideia de repl.)
Piscar @Sergey também não funciona para mim, parece que ele não está disponível em Node
Sv443
@ Sv443 Mas funciona na captura de tela :) E a pergunta era sobre Node. Eu pensei que não funcionava apenas no console do Windows. Qual SO você usa?
Sergey
2
@Sergey Estou usando o Windows e tentou em CMD e PowerShell e ambos não funcionam
Sv443
@Sergey Minhas capturas de tela são do aplicativo de terminal do MacOS. Eu acredito que isso é algo que seu aplicativo shell deve suportar. Se você estiver usando o Windows, sugiro tentar instalar o Cygwin e tentar isso no bash. Estou curioso para saber sobre isso também.
Shnd
@ Shnd Não sei se é o mesmo, mas tentei no git-bash e também não funcionou.
Sergey
14
Um one-liner útil que escrevi para scripts npm que não podem ter dependências:
const{ r, g, b, w, c, m, y, k }=[['r',1],['g',2],['b',4],['w',7],['c',6],['m',5],['y',3],['k',0],].reduce((cols, col)=>({...cols,[col[0]]: f =>`\x1b[3${col[1]}m${f}\x1b[0m`}),{})
console.log(`${g('I')} love ${r('Italy')}`)
Parece útil, mas por favor, você pode explicar melhor? Modo de detetive ativado: ah ok, rgbwc ... significa vermelho, verde, azul, branco, ciano, magenta, amarelo ek?
precisa saber é o seguinte
10
Para uma alternativa popular às cores que não mexem com os métodos internos do objeto String, recomendo verificar as cores cli .
Inclui cores e estilos encadeados, como negrito, itálico e sublinhado.
Para uma comparação de vários módulos nesta categoria, consulte aqui .
Não é simples quando você descobre que ele não funciona com objetos da maneira como o console os manipula e que não respeita os tipos de fluxo do console ou o suporte TTY, o que cria mais problemas. É apenas um truque que trará muitos problemas no caminho.
Vitaly-t
Isso é o que JSON.stringify é para
wayofthefuture
10
Emoji
Você pode usar cores para o texto como outros mencionados em suas respostas.
Mas você pode usar emojis ! por exemplo, você pode usar Você pode usar ⚠️para mensagens de aviso e🛑 de erro.
Ou simplesmente use estes cadernos como uma cor:
📕: error message
📙: warning message
📗: ok status message
📘: action message
📓: canceled status message
📔:Or anything you like and want to recognize immediately by color
Bônus:
Esse método também ajuda a verificar rapidamente e localizar logs diretamente no código-fonte .
Mas a fonte emoji padrão do linux não é colorida por padrão e você pode querer torná-las coloridas primeiro.
E a outra maneira - corrigindo os métodos de console existentes. Uma tal biblioteca - manakin permite definir automaticamente as cores padrão para todos os seus métodos de console ( log, warn, erroreinfo ).
Uma diferença significativa das bibliotecas de cores genéricas - ele pode definir cores globalmente ou localmente, mantendo a sintaxe e o formato de saída consistentes para todos os métodos de console do Node.j, que você usa sem precisar especificar as cores, pois todas são definidas automaticamente .
Eu tive que mudar a cor de fundo do console para branco devido a problemas nos olhos, mas a fonte é cinza e torna as mensagens ilegíveis. Como posso mudá-lo?
Especificamente para o seu problema, aqui está a solução mais simples:
var con = require('manakin').global;
con.log.color =30;// Use black color for console.log
Ele definirá a cor preta para todas as console.logchamadas em seu aplicativo. Veja mais códigos de cores .
Não quero nenhuma dependência disso e apenas esses funcionaram para mim no OS X. Todos os outros exemplos de respostas aqui me deram Octal literalerros.
Encontrei esta resposta acima ( https://stackoverflow.com/a/41407246/4808079 ) muito útil, mas incompleta. Se você sempre quis colorir algo uma vez, acho que seria bom, mas acho que compartilhá-lo em uma forma funcional executável é muito mais aplicável aos casos de uso da vida real.
Isso depende um pouco da plataforma em que você está. A maneira mais comum de fazer isso é imprimindo seqüências de escape ANSI. Para um exemplo simples, aqui está um código python dos scripts de compilação do blender:
// This is a object for use ANSI escape to color the text in the terminalconst bColors ={
HEADER :'\033[95m',
OKBLUE :'\033[94m',
OKGREEN :'\033[92m',
WARNING :'\033[93m',
FAIL :'\033[91m',
ENDC :'\033[0m',
BOLD :'\033[1m',
UNDERLINE :'\033[4m'}
Para usar código como este, você pode fazer algo como
console.log(`${bColors.WARNING}My name is sami ${bColors.ENDC}`)
Recebo "Sequências de escape octais não são permitidas no modo estrito".
lucaswxp 5/03
3
var colorSet ={Reset:"\x1b[0m",Red:"\x1b[31m",Green:"\x1b[32m",Yellow:"\x1b[33m",Blue:"\x1b[34m",Magenta:"\x1b[35m"};var funcNames =["info","log","warn","error"];var colors =[colorSet.Green, colorSet.Blue, colorSet.Yellow, colorSet.Red];for(var i =0; i < funcNames.length; i++){let funcName = funcNames[i];let color = colors[i];let oldFunc = console[funcName];
console[funcName]=function(){var args =Array.prototype.slice.call(arguments);if(args.length){
args =[color + args[0]].concat(args.slice(1), colorSet.Reset);}
oldFunc.apply(null, args);};}// Test:
console.info("Info is green.");
console.log("Log is blue.");
console.warn("Warn is orange.");
console.error("Error is red.");
console.info("--------------------");
console.info("Formatting works as well. The number = %d",123);
isso não funcionará corretamente no Node.js. quando redirecionado para um arquivo de log, por exemplo.
vitaly-t 23/07/16
2
Eu criei meu próprio módulo, StyleMe . Eu fiz isso para que eu possa fazer muito com pouca digitação. Exemplo:
varStyleMe= require('styleme');StyleMe.extend()// extend the string prototype
console.log("gre{Hello} blu{world}!".styleMe())// Logs hello world! with 'hello' being green, and 'world' being blue with '!' being normal.
Também pode ser aninhado:
console.log("This is normal red{this is red blu{this is blue} back to red}".styleMe())
Ou, se você não deseja estender o protótipo de string, pode escolher qualquer uma das 3 outras opções:
console.log(styleme.red("a string"))
console.log("Hello, this is yellow text".yellow().end())
console.log(styleme.style("some text","red,bbl"))
Enquanto o link que você forneceu pode responder à pergunta. É melhor colocar as partes essenciais da sua solução diretamente na sua resposta, caso a página no link expire no futuro.
Kmeixner
1
Gostei muito da resposta de @ Daniel, mas as funções console.log {color} não funcionaram da mesma maneira que o console.log comum. Fiz algumas alterações e agora todos os parâmetros para as novas funções serão passados para console.log (assim como os códigos de cores).
De maneira simples, adicionando cor de hora à mensagem, você não precisa alterar seu código, use keep your console.log ('msg') ou console.err ('error')
Se você estiver usando o Windows CMD, vá para o terminal Properties / Colors (CMD no canto superior esquerdo) e redefina o valor RGB da cor ofensiva. No meu caso, acredito que seja o quinto quadrado de cor da esquerda, que mudei para (222.222.222). Não importa se o botão de opção selecionado no momento mostra Texto da tela ou Fundo da tela, pois você redefine a cor específica do "sistema". Depois de alterar a cor, não se esqueça de selecionar novamente a cor preferida para o plano de fundo ou texto antes de clicar em OK.
Após a alteração, todas essas mensagens avermelhadas do Node (Ember no meu caso) são claramente visíveis.
Essa é uma abordagem para o Windows 10 (talvez para 7) e altera o esquema de cores (tema) para o próprio terminal cmd, npm, não apenas a saída do console para um aplicativo específico.
Encontrei o plug-in do Windows em funcionamento - Color Tool , que provavelmente é desenvolvido sob o guarda-chuva do Windows. Uma descrição está disponível no link .
Adicionei o diretório colortool à variável de caminho do ambiente do sistema e agora está disponível sempre que inicio o terminal (prompt de comando do NodeJs, cmd).
Respostas:
Abaixo, você pode encontrar uma referência de cores do texto a ser comandada ao executar o aplicativo node.js.
Nota
%s
é onde a string (o segundo argumento) é injetada.\x1b[0m
redefine a cor do terminal para que não continue mais a cor escolhida após esse ponto.Referência de cores
EDITAR:
Por exemplo,
\x1b[31m
é uma sequência de escape que será interceptada pelo seu terminal e instrui-o a mudar para a cor vermelha. De fato,\x1b
é o código para o caractere de controle não imprimívelescape
. As seqüências de escape que lidam apenas com cores e estilos também são conhecidas como código de escape ANSI e são padronizadas; portanto, elas devem funcionar em qualquer plataforma.A Wikipedia tem uma boa comparação de como os diferentes terminais exibem as cores https://en.wikipedia.org/wiki/ANSI_escape_code#Colors
fonte
1;
para cores brilhantes, ou seja, "\ X1B [1; 34m" == azul claro ...Existem vários pacotes disponíveis para formatar o texto do console no Node.js. Os mais populares são:
chalk
cli-color
colors
Uso:
GIZ:
CLI-COLOR:
CORES:
Muitas pessoas notaram sua desaprovação de
colors
alterar o protótipo String . Se você preferir que seus protótipos sejam deixados em paz, use o seguinte código:fonte
var colors = require('colors/safe');
e depois usecolors.red('left string all alone')
Se você quiser alterar as cores diretamente sem um módulo, tente
Primeiro,
\x1b[36m
altere as cores para36
e depois volte para a cor do terminal0
.Aqui está uma lista de códigos de cores ANSI
fonte
para colorir sua saída Você pode usar exemplos de lá:
https://help.ubuntu.com/community/CustomizingBashPrompt
Também um Gist para nodeJs
Por exemplo, se você quiser parte do texto em vermelho, basta fazer o console.log com:
Com base nisso, criei a extensão "colog" para o Node.js. Você pode instalá-lo usando:
Repo e npm: https://github.com/dariuszp/colog
fonte
\033[31m
funciona mas\033[91m
não funciona . Para o Ubuntu Terminal deveria ser\033[0m
.error: octal escape sequences "\033[31mServer ready @ #{app.get('port')}\033[91m" are not allowed
\033[0m
deve ser usado para ligar a para trás o texto ao normal, não\033[91m
Esta é uma lista de cores disponíveis (plano de fundo, primeiro plano) no console com ações disponíveis (redefinir, reverter, ...).
Use-o da seguinte forma:
Você também pode instalar:
A TI fornecerá uma saída mais próxima do console do lado do cliente:
fonte
De acordo com esta documentação , você pode alterar as cores com base no tipo de dados da saída:
Esses parecem ser códigos de escape ANSI SGR, onde o primeiro número é o código a ser emitido antes da saída e o segundo número é o código a ser emitido depois. Então, se olharmos para o gráfico de códigos ANSI SGR na Wikipedia , você verá que muitos deles começam com um número 30-37 para definir a cor do primeiro plano e terminam em 39 para redefinir a cor do primeiro plano padrão.
Então, uma coisa que eu não gosto é como algumas delas são escuras. Especialmente datas. Vá em frente e tente
new Date()
no console. Magenta escura sobre preto é realmente difícil de ler. Vamos mudar isso para uma magenta clara.Agora, quando você tenta
new Date()
, a saída é muito mais legível.Se você deseja definir cores automaticamente ao iniciar o nó, crie um script que inicie a repl, assim:
Salve este arquivo (por exemplo
init.js
) e executenode.exe init.js
. Ele definirá as cores e ativará o prompt de comando node.js.(Agradecemos a loganfsmyth nesta resposta pela ideia de repl.)
fonte
Esta biblioteca de Sindre Sorhus é a melhor no momento:
giz
String.prototype
fonte
Por exemplo, se você quiser ter um texto Dim, Red com fundo azul, poderá fazê-lo em Javascript como este:
A ordem das cores e efeitos parece não ser tão importante, mas lembre-se sempre de redefinir as cores e os efeitos no final.
fonte
Um one-liner útil que escrevi para scripts npm que não podem ter dependências:
Editar:
r,g,b,w,c,m,y,k
significa vermelho, verde, azul, branco, ciano, magenta, amarelo e blac (k)fonte
Para uma alternativa popular às cores que não mexem com os métodos internos do objeto String, recomendo verificar as cores cli .
Inclui cores e estilos encadeados, como negrito, itálico e sublinhado.
Para uma comparação de vários módulos nesta categoria, consulte aqui .
fonte
Sem bibliotecas, sem complicações, simples:
fonte
Emoji
Você pode usar cores para o texto como outros mencionados em suas respostas.
Mas você pode usar emojis ! por exemplo, você pode usar Você pode usar
⚠️
para mensagens de aviso e🛑
de erro.Ou simplesmente use estes cadernos como uma cor:
Bônus:
Esse método também ajuda a verificar rapidamente e localizar logs diretamente no código-fonte .
Mas a fonte emoji padrão do linux não é colorida por padrão e você pode querer torná-las coloridas primeiro.
fonte
Hoje existem duas maneiras de alterar as cores de um console do Node.js.
Uma é através de bibliotecas de uso geral que podem decorar uma sequência de texto com tags coloridas, que você envia através do padrão
console.log
.As principais bibliotecas para isso hoje:
E a outra maneira - corrigindo os métodos de console existentes. Uma tal biblioteca - manakin permite definir automaticamente as cores padrão para todos os seus métodos de console (
log
,warn
,error
einfo
).Uma diferença significativa das bibliotecas de cores genéricas - ele pode definir cores globalmente ou localmente, mantendo a sintaxe e o formato de saída consistentes para todos os métodos de console do Node.j, que você usa sem precisar especificar as cores, pois todas são definidas automaticamente .
Especificamente para o seu problema, aqui está a solução mais simples:
Ele definirá a cor preta para todas as
console.log
chamadas em seu aplicativo. Veja mais códigos de cores .Cores padrão usadas pelo manakin :
fonte
Eu sobrecarreguei os métodos do console.
A saída é.
fonte
console.info('Hello %s', 'World!')
deve exibirHello World!
, e nãoHello %s World!
.Me deparei com essa pergunta e queria usar algumas cores no stdout sem nenhuma dependência. Isso combina algumas das outras ótimas respostas aqui.
Aqui está o que eu tenho. (Requer o nó v4 ou superior)
Apenas exija o arquivo e use-o da seguinte forma:
Os códigos de cores predefinidos estão disponíveis aqui
fonte
console de pintura
Log colorido simples. Suporte para inspeção de objetos e atualização de linha única Este pacote repintou o console.
instalar
uso
demonstração
fonte
Não quero nenhuma dependência disso e apenas esses funcionaram para mim no OS X. Todos os outros exemplos de respostas aqui me deram
Octal literal
erros.fonte: https://coderwall.com/p/yphywg/printing-colorful-text-in-terminal-when-run-node-js-script
fonte
Encontrei esta resposta acima ( https://stackoverflow.com/a/41407246/4808079 ) muito útil, mas incompleta. Se você sempre quis colorir algo uma vez, acho que seria bom, mas acho que compartilhá-lo em uma forma funcional executável é muito mais aplicável aos casos de uso da vida real.
Use-o assim:
fonte
logger / index.js
app.js
Em seguida, use-o como:
fonte
fonte
fonte
Você também pode usar o colorworks .
Uso:
Para facilitar a vida, você também pode fazer uma função com ela.
Agora você pode fazer:
fonte
Coolors
É muito bom para usar ou estender. Você pode usar simplesmente:
Ou com a configuração:
E parece realmente engraçado estender:
Ver módulo Coolors
fonte
Eu criei meu próprio módulo, StyleMe . Eu fiz isso para que eu possa fazer muito com pouca digitação. Exemplo:
Também pode ser aninhado:
Ou, se você não deseja estender o protótipo de string, pode escolher qualquer uma das 3 outras opções:
fonte
No ubuntu, você pode simplesmente usar códigos de cores:
fonte
require
?sys
estivesse sendo usado em qualquer lugar. Na verdade, não é necessário hoje em dia!node-colorify
Fornece funções para imprimir textos em cores e também para formatar textos como negrito, intermitente, etc.
fonte
Gostei muito da resposta de @ Daniel, mas as funções console.log {color} não funcionaram da mesma maneira que o console.log comum. Fiz algumas alterações e agora todos os parâmetros para as novas funções serão passados para console.log (assim como os códigos de cores).
fonte
2017:
De maneira simples, adicionando cor de hora à mensagem, você não precisa alterar seu código, use keep your console.log ('msg') ou console.err ('error')
fonte
Se você estiver usando o Windows CMD, vá para o terminal Properties / Colors (CMD no canto superior esquerdo) e redefina o valor RGB da cor ofensiva. No meu caso, acredito que seja o quinto quadrado de cor da esquerda, que mudei para (222.222.222). Não importa se o botão de opção selecionado no momento mostra Texto da tela ou Fundo da tela, pois você redefine a cor específica do "sistema". Depois de alterar a cor, não se esqueça de selecionar novamente a cor preferida para o plano de fundo ou texto antes de clicar em OK.
Após a alteração, todas essas mensagens avermelhadas do Node (Ember no meu caso) são claramente visíveis.
fonte
Essa é uma abordagem para o Windows 10 (talvez para 7) e altera o esquema de cores (tema) para o próprio terminal cmd, npm, não apenas a saída do console para um aplicativo específico.
Encontrei o plug-in do Windows em funcionamento - Color Tool , que provavelmente é desenvolvido sob o guarda-chuva do Windows. Uma descrição está disponível no link .
Adicionei o diretório colortool à variável de caminho do ambiente do sistema e agora está disponível sempre que inicio o terminal (prompt de comando do NodeJs, cmd).
fonte