thoga31 Posted June 12, 2014 Report Share Posted June 12, 2014 (edited) Titulo do Projecto: COX, Compiler Output eXtender Última Versão: 1.0.0 beta-1 Licença: GNU GPL 3.0 Líder do Projecto: thoga31 Membros Actuais do Projecto: thoga31 Descrição do Projecto: Enquanto implementava a 2ª versão do PROGRAMAR Downloader for Linux, eu dividi o código de uma unit para um total de 7. No meio disto enfrentei mensagens de erro enormes enquanto não consegui acertar com os links entre units. No meio haviam dispersos Warnings, Notes, Errors, e eu meio "perdido" a tentar decifrar aquilo. E surgiu-me a ideia: da mesma forma que fazemos highlight ao código, porque não dar vida às mensagens do compilador? Todos os programas de consola não têm cor, por tradição. Mas eu costumo usar algumas cores para que a "selva da informação" seja legível em vários níveis. COX é um pequeno projecto que tem como objectivo ligar-se a todos os compiladores que quiserem de forma a que o seu output seja colorido. Os screenshots comparam as mensagens do Free Pascal Compiler (FPC), com e sem COX, quando este tenta compilar o seguinte programa, o qual emite os 4 tipos de mensagens do FPC: program testcox; function foo : integer; // Warning var i : integer; // Note begin write('oleh!'); end; begin write(foo); end; // Error, Fatal Screenshots: Sem COX: Com COX: Usar o programa: Podem obter ajuda escrevendo cox --help. De qualquer das formas, segue-se uma breve descrição dos argumentos do programa: COMANDO DESCRIÇÃO cox --help Mostra a ajuda. cox --about Informações detalhadas do programa. cox [modifier] compiler args Acede ao compilador definido por "compiler" e envia-lhe os argumentos "args". MODIFIER DESCRIÇÃO -q Modo quiet - não recomendado - o output do compilador é oculto. -d Modo debug - mostra informações detalhadas acerca do processo de conexão ao compilador. Portanto, o uso é simples: é escrever cox seguido do que habitualmente escreveriam para compilar o programa. Por exemplo, caso o gcc esteja configurado, poderão fazer: cox gcc -Wall -Werror test.c -o test Como configurar o programa para se associar um novo compilador? O programa deverá ficar numa pasta bem definida na qual deverão estar presentes outros 3 ficheiros: o COXgen, e os dois ficheiros compilers. Abrir o ficheiro compilers.txt e adicionar as configurações do novo compilador.Por exemplo, para Free Pascal (o qual já vem configurado de origem) pode ter esta definição: DEFINE Free Pascal ACCESS = fpc COMPILER = { WINDOWS = fpc UNIX = /usr/bin/fpc } MESSAGES = { DEFAULT = 0,7 NEW "error:" = 0,12 NEW "fatal:" = 0,12 NEW "warning:" = 0,14 NEW "note:" = 0,11 } END DEFINE Correr o programa coxgen.Ele irá fazer o parsing do ficheiro e criar um ficheiro binário, compilers.def. Já está 😄 Para usar, agora basta fazer: $ cox fpc ficheiro.pas Eu redefini o bashrc no Ubuntu para poder usar em qualquer lugar, aconselho a fazerem o mesmo. ATENÇÃO! Não usem o próprio nome do compilador para chamar a aplicação COX! Ou seja, não façam isto: alias fpc="~/Documents/prog/cox/..." A síntaxe (uma explicação mais completa está no download): DEFINE language_name ACCESS = call_name COMPILER = { WINDOWS = program_name UNIX = full_path } MESSAGES = { DEFAULT = background_color,text_color NEW "message" = background_color,text_color } END DEFINE Download executável: BitBucket http://www.portugal-a-programar.pt/files/file/104-cox-compiler-output-extender/ Edited December 30, 2014 by thoga31 1 Report Knowledge is free! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now