NOTÍCIAS! Recentemente, adicionou a implementação muito atrasada do E-Tex! A extensão do E-Tex é necessária para executar o LATEX, para que esta seja uma adição muito bem-vinda à família de programas TEX. Consulte o Readme.txt para obter instruções sobre como configurar o LATEX.
Esta é uma tradução manual do Tex.Web Versão 3.141592653 em C ++ padrão. Principalmente, é uma tradução direta da fonte Pascal original com mudanças muito mínimas. A quantidade de C ++ (que não é também C) usada é muito mínima. Notavelmente, adicionei uma aula de matriz para manter a mesma indexação que no original e também obter a esceca de limites.
Qual é o objetivo deste programa? Bem, há muito tempo fico fascinado por Donald Knuth e seu trabalho e especialmente Tex. O Tex é um dos programas mais bem documentados por aí e o código -fonte está, obviamente, prontamente disponível. Mas, um recurso que não possui as implementações atuais é que, como o código -fonte é convertido em C, não é fácil de entender ou passar pelo código em um depurador. Por isso, decidi traduzir o programa para C ++. Ao fazer isso, também se espera que se receba alguma compreensão do que o código faz.
Outro aspecto era que eu estava interessado em saber quanto tempo levaria para escrever o programa. Não fiquei com o relógio de parada em mãos, mas uma estimativa aproximada é que levou cerca de 30 horas para digitar todo o programa e mais do que o dobro para corrigir todos os erros de digitação e outros bugs introduzidos antes de finalmente passar no teste de viagem. Era o que eu esperava, exceto que pensei que o tempo de depuração seria a par do tempo que levou para digitá -lo. Se eu tivesse sido mais sistemático em minha abordagem e introduzisse mais afirmações e verificações desde o início, o tempo de depuração teria sido consideravelmente mais curto.
O programa consiste em dois arquivos rstex.h.pre e rstex.cpp.pre . Esses dois arquivos devem ser pré -processados por outro programa CreatePoolFile , que converte todas as seqüências especiais do programa em números (como o programa original emaranhado) e faz um arquivo de string pool. Após esse pré -processamento, ficamos com três arquivos: rstex.h , rstex.cpp e tex.pool . rstex.cpp pode ser compilado por qualquer compilador C ++ não-anciente, e o executável pode ser executado.
Esta não é a versão oficial do Tex, é apenas baseada na versão oficial do Tex. Pode conter bugs não presentes na versão oficial. Ele passa no teste de viagem, mas o teste de viagem não testa tudo. De forma alguma, o autor deste programa será responsável por quaisquer danos, diretos ou indiretos, que possam resultar de seu uso. Não se destina a ser um sistema de composição de funcionamento, é destinado a fins educacionais, para aqueles que desejam entender como esse software complexo funciona.
Também traduzi o MF.Web para Windows e UNIX, mas atualmente apenas a versão do Windows suporta saída gráfica de tela.
Um pequeno programa para visualizar os Bitmaps Tex originais (PXL, GF, PK ou MF). Este programa funciona no Linux e no Windows e no Mac, mas exige que o QT seja instalado.
Longe do programa completo para ler os arquivos DVI, apenas para o Windows no momento, mas talvez uma versão QT exista algum dia.
Esses programas são direitos autorais (c) 2023 por Richard Sandberg (Mylodon no Gmail Dot Com). O tex.web original é direitos autorais (c) 1982 por Donald Knuth.
Esses programas são apenas para fins educacionais, todo o uso comercial é estritamente proibido.