colorir o Windows XP cmd.exe

6

Eu amo o console Linux, mas devido a muitas razões tem que trabalhar no Windows XP. Então agora eu decidi fazer parecer melhor, mas não consegui encontrar nenhuma documentação / posts sobre isso. É possível de alguma forma?

whn
fonte

Respostas:

9

Você não pode fazer isso porque a maneira como o console do Windows funciona é fundamentalmente diferente do terminal do Linux. No Linux, a coloração é feita usando Seqüências de escape ANSI . Da Wikipedia:

Sequências de escape ANSI são caracteres   incorporado no texto usado para controlar   formatação, cor e outras saídas   opções em terminais de texto de vídeo.   Quase todos os emuladores de terminal projetados   para mostrar a saída de texto de um controle remoto   computador e (com exceção do Windows) para   mostre a saída do texto do software local,   interpretar pelo menos alguns dos ANSI   seqüências de escape.

Isso significa que a coloração (e a formatação em geral) pode ser controlada pelo usuário, mesmo quando o programa original não tinha provisão para isso, simplesmente usando strings que contenham escape ANSI.

No Windows, a formatação do console deve ser feita explicitamente pelo programa. Cada célula de caractere é composta de dois códigos de 16 bits: um caractere Unicode e uma palavra de estilo (principalmente informações sobre cores). O programa tem que usar as funções de saída da API de baixo nível para definir as informações de estilo, caso contrário, todos os caracteres usam o estilo padrão (cinza em preto).

A moral da história, eu acho, é que o Windows e o Linux são dois sistemas operacionais completamente diferentes. Portanto, é melhor se acostumar com suas idiossincrasias do que lutar para encaixar uma delas na mentalidade da outra. Assim a loucura mente.

efotinis
fonte
2
Há uma maneira de obter seqüências de escape ANSI para trabalhar no prompt de comando do Windows: O freeware ANSICON
afrazier
@afrazier, eu instalei o ANSICON e entendi como fazer um bom resultado dos meus programas (por exemplo, blog.mmediasys.com/2010/11/24/we-all-love-colors ), mas como posso usá-lo para personalizar comandos como dir para tornar a saída mais amigável?
whn
@whn: Não personaliza os comandos incorporados. Você precisaria usar outra coisa que gerasse informações coloridas usando seqüências de escape ANSI. Isso realmente só faz sentido se você estiver escrevendo software de plataforma cruzada, onde outras plataformas interpretariam as seqüências corretamente. Para programas de consoles somente para o win32, faria mais sentido usar as APIs do console.
afrazier
Está bem. agora eu deveria estudar os comandos do windows e fazer alguns arquivos .bat para melhorar os comandos básicos =) obrigado $ afrazier!
whn
Execute o utilitário mencionado por @afrazier como ANSICON -i - instalará a entrada autorun do cmd. Depois disso eu peguei ls --color=always funcionando corretamente em cmd.exe.
ccpizza
3

Abra o Prompt de Comando, clique com o botão direito do mouse na barra de cabeçalho na parte superior, selecione Propriedades, personalize-o lá:

Selecting Properties

Changing the colours

Moab
fonte
1
Obrigado, mas eu quis dizer algo assim: osmaster.org.ua/wp-content/uploads/2011/02/…
whn
@whn - essa captura de tela é de um aplicativo e não de um prompt de comando simples.
ChrisF
@ quando, não, você não pode personalizar janelas cmd prompt como terminal.
Moab
2

Corrida cmd.exe /t:12 irá criar uma janela de prompt de comando com um fundo azul e texto verde.

Você pode encontrar uma lista de cores disponíveis Aqui .

Trevor
fonte
2

Você sempre pode instalar Cygwin

Linker3000
fonte
Sim. Eu tentei. Mas é bem devagar.
whn
1
Também semelhante ao Cygwin é MinGW MSYS e pode ser mais rápido do que isso-- ver Aqui
Abbafei
1

Um pequeno passo ...
Eu fiz um clone de HotDIR (somente para linha de comando do Windows) que colore as listagens de diretório:

USO:

c:\> hd /?

enter image description here

veganaiZe
fonte
Por favor leia Como eu recomendo software para algumas dicas sobre como você deve recomendar o software. Você deve fornecer pelo menos um link, algumas informações adicionais sobre o próprio software e como ele pode ser usado para resolver o problema na pergunta.
DavidPostill
0

Eu não acho que você pode personalizar o CMD da maneira que você descreve em seu comentário para a resposta de Moab.

Se for relevante, existem alternativas ao CMD do Windows.
Podes tentar console que é um bom pequeno freeware que faz um ótimo trabalho.

Eran
fonte
sim. Eu estou usando atualmente. Mas cai frequentemente
whn
@whn: E quanto ao PowerShell?
Dennis Williamson
1
Console é maravilhoso, eu nunca tive isso falhar, mas eu uso com o TCCLE em vez do interpretador de janelas padrão.
MaQleod
Console não é uma alternativa ao CMD, é apenas um invólucro para ele (e outros shells).
paradroid