¡NOTICIAS! ¡Recientemente agregó la implementación de E-TEX desde hace mucho tiempo! Se requiere que la extensión E-TEX ejecute látex, por lo que esta es una adición muy bienvenida a la familia de los programas de Tex. Vea el Readme.txt para obtener instrucciones sobre cómo configurar el látex.
Esta es una traducción manual de Tex.Web Versión 3.141592653 en C ++ estándar. Principalmente es una traducción directa de la fuente de Pascal original con cambios mínimos. La cantidad de C ++ (que no también se usa C) es muy mínima. En particular, agregué una clase de matriz para mantener la misma indexación que en el original y también para obtener Boundschecking.
¿Cuál es el propósito de este programa? Bueno, durante mucho tiempo me ha fascinado Donald Knuth y su trabajo y especialmente Tex. Tex es uno de los programas mejor documentados y, por supuesto, el código fuente está fácilmente disponible. Pero, una característica que falta de las implementaciones actuales es que debido a que el código fuente es una máquina convertida en C, no es fácil de entender o atravesar el código en un depurador. Por eso decidí traducir el programa a C ++. Al hacerlo, también uno también obtiene alguna comprensión de lo que hace el código.
Otro aspecto era que estaba interesado en saber cuánto tiempo tomaría escribir el programa. No vigilé a la mano, pero una estimación aproximada es que tardó unas 30 horas en escribir todo el programa y más del doble para arreglar todos los errores tipográficos y otros errores introducidos antes de que finalmente pasara la prueba de viaje. Esto era lo que esperaba, excepto que pensé que el tiempo de depuración estaría a la par con el tiempo que llevó escribirlo. Si hubiera sido más sistemático en mi enfoque e introdujera más afirmaciones y cheques desde el principio, el tiempo de depuración hubiera sido considerablemente más corto.
El programa consta de dos archivos rstex.h.pre y rstex.cpp.pre . Estos dos archivos deben estar preprocesados por otro programa CreatePoolFile que convierte todas las cadenas especiales en el programa a números (como lo hace el programa Tangle Original), y hace un archivo de grupo de cadenas. Después de este preprocesamiento, nos quedan tres archivos: rstex.h , rstex.cpp y tex.pool . rstex.cpp puede ser compilado por cualquier compilador de C ++ no ambiente, y el ejecutable se puede ejecutar.
Esta no es la versión oficial de Tex, solo se basa en la versión oficial de Tex. Puede contener errores que no están presentes en la versión oficial. Pasa la prueba de viaje, pero la prueba de viaje no prueba todo. De ninguna manera, el autor de este programa será responsable de ningún daño, directo o indirecto, que pueda provocar su uso. No está destinado a ser un sistema tipográfico de trabajo, está destinado a fines educativos, para aquellos que desean comprender cómo funciona este complejo software.
También he traducido MF.Web para Windows y UNIX, pero actualmente solo la versión de Windows admite la salida de pantalla gráfica.
Un pequeño programa para ver los mapas de bits de fuentes de Tex (PXL, GF, PK o MF) originales. Este programa funciona tanto en Linux como en Windows, y Mac, pero requiere que se instale QT.
Lejos del programa completo para leer archivos DVI, solo para Windows en este momento, pero quizás existirá una versión QT algún día.
Estos programas son Copyright (C) 2023 de Richard Sandberg (Mylodon en Gmail Dot Com). El tex.web original es derechos de autor (c) 1982 de Donald Knuth.
Estos programas son solo para fines educativos, todo el uso comercial está estrictamente prohibido.