stringtranslate.com

GNU TeXmacs

GNU TeXmacs es un procesador de textos científico y un componente tipográfico del Proyecto GNU . Se originó como una variante de GNU Emacs con funcionalidades TeX , aunque no comparte código con esos programas, aunque usa fuentes TeX. [4] Está escrito y mantenido por Joris van der Hoeven y un grupo de desarrolladores. [5] El programa produce documentos estructurados con una interfaz de usuario WYSIWYG . El usuario puede crear nuevos estilos de documento. El editor proporciona algoritmos de composición tipográfica de alta calidad y TeX y otras fuentes para publicar documentos de aspecto profesional.

Fondo

Como editor estructurado WYSIWYG y sistema de preparación de documentos, TeXmacs es similar a editores de documentos estructurados anteriores, como Interleaf (primera versión 1985), Framemaker (1986), SoftQuad Author/Editor (1988), [6] Lilac, [7] Grif.  [fr] (1991), [8] y Thot; [9] También hubo investigaciones académicas sobre la edición interactiva de construcciones tipográficas complejas representadas de forma lógica. [10] [11]

En las décadas de 2000 y 2010, el interés por la edición interactiva de textos estructurados alentó el desarrollo de programas destinados a académicos de humanidades; un ejemplo de esto es CWRC-Writer, un editor visual XML con "edición y enriquecimiento cercano a WYSIWYG de textos académicos con representaciones visuales significativas de marcado". [12]

En otro lado del mundo de la edición y preparación de documentos, un programa para la interacción visual con textos estructurados escritos en LaTeX es LyX , que no apunta a la edición WYSIWYG sino a la representación visual de la estructura ( WYSIWYM ).

Características

Una captura de pantalla que muestra fórmulas matemáticas y fuente en cursiva. Un marco de enfoque cian rodea el entorno más interno (un entorno de fórmula) en el que se encuentra el cursor, mientras que el cuadro gris sutil rodea otra etiqueta activa (el entorno del teorema).

Como en muchos editores WYSIWYG (como Microsoft Word ), los autores manipulan un documento en la pantalla que debería imprimirse en una copia en papel de aspecto similar. El objetivo de TeXmacs es proporcionar un editor WYSIWYG que, no obstante, permita escribir documentos correctamente estructurados con resultados tipográficos estéticamente agradables. TeXmacs no es una interfaz para LaTeX [13] pero los documentos TeXmacs se pueden convertir a TeX o LaTeX. LaTeX también se puede importar (hasta cierto punto), y se proporciona tanto la importación como la exportación a HTML , Scheme, Verbatim y XML ; [14] la exportación HTML se puede diseñar con CSS (desde la versión 1.99.14). También hay un convertidor para MathML y ​​TeXmacs puede generar PDF y PostScript para imprimir. [15]

TeXmacs puede manejar fórmulas matemáticas , tablas, imágenes, referencias cruzadas y citas . Puede utilizarse como interfaz para varios sistemas de álgebra informática como Maxima , FriCAS y SageMath y, a su vez, puede integrar parte de su salida en su composición tipográfica. TeXmacs también admite un lenguaje de extensión Scheme llamado Guile para personalizar el programa y escribir extensiones.

También cuenta con un modo de presentación y un pequeño editor de dibujos técnicos y hay planes de evolucionar hacia una completa suite de oficina científica con capacidades de hoja de cálculo . Está presente una implementación de hojas de cálculo a partir de la versión 1.99.12; Las hojas de cálculo en TeXmacs pueden aprovechar los complementos (por ejemplo, Python o Maxima) para calcular los valores de las celdas.

TeXmacs actualmente se ejecuta en la mayoría de las arquitecturas basadas en Unix, incluidas Linux , FreeBSD , Cygwin , Haiku y macOS . Junto con la versión Cygwin, hay disponible un puerto nativo para Microsoft Windows .

El editor TeXmacs

En el editor TeXmacs la estructura y la apariencia del documento se representan al mismo tiempo; [16] la estructura se hace evidente para el usuario al rodear las unidades lógicas del documento en marcos de enfoque anidados que llevan señales de color que se muestran de acuerdo con el movimiento del cursor. [17] Se proporciona una descripción detallada de la estructura en la proximidad del cursor en el pie de página de la ventana del editor, que se puede seleccionar con precisión presionando las flechas de izquierda a derecha. [16] En el editor es posible cambiar entre el modo de texto y el modo de edición de fuente, y está presente el soporte para la composición de macros; el editor de código fuente reconoce la sintaxis . [18]

tipografía matemática

TeXmacs facilita la introducción de fórmulas matemáticas asignando secuencias de pulsaciones del teclado a símbolos. Por ejemplo, el símbolo se puede ingresar escribiendo .=>

Algunos símbolos no tienen tal representación ( por ejemplo). Estos se pueden ingresar con teclas (por ejemplo, para las pulsaciones de teclas) . Esta entrada basada en teclado difiere de otros editores de fórmulas, que tienden a proporcionar menús de apuntar y hacer clic para esta tarea. [19]Tab ↹=>Tab ↹Tab ↹

Procesamiento por lotes

Es posible utilizar TeXmacs como procesador por lotes (que es el modo de funcionamiento habitual de LaTeX ), utilizando el framebuffer virtual X para evitar abrir ventanas no deseadas durante el procesamiento. Por ejemplo, el comando

$ xvfb-run texmacs --convertir artículo.tm artículo.pdf --salir

genera un archivo PDF "article.pdf" a partir de un documento TeXmacs "article.tm".

El formato TeXmacs

Todos los documentos TeXmacs o fragmentos de documentos pueden considerarse árboles (el concepto de árbol también existe en el lenguaje de marcado SGML , al que el formato Texmacs es similar). Por ejemplo, el árbol

representa la fórmula

(escrito aquí con el marcado TeX utilizado por Wikipedia) y el propio motor de composición tipográfica de TeXmacs lo convierte en una fórmula tipográfica, aquí insertada como una imagen:

Los árboles TeXmacs se representan en archivos TeXmacs como cadenas y en el editor TeXmacs como la representación tipográfica del documento junto con su comportamiento interactivo. [20] En la representación en pantalla del árbol TeXmacs, el movimiento del cursor representa el movimiento dentro del árbol. En el disco existen tres representaciones del formato TeXmacs: una representación nativa, una representación XML y una representación con expresiones Scheme S; La representación de Scheme es útil para la interfaz con los programas de Scheme.

Composición tipográfica y control de documentos.

El proceso de composición tipográfica convierte los árboles TeXmacs en cajas. [21] La evaluación de los árboles TeXmacs se realiza mediante la reducción de las primitivas, es decir, mediante la evaluación de aplicaciones macro. Las primitivas de composición tipográfica están diseñadas para ser muy rápidas y están integradas en el editor; la representación de muchas de las primitivas se puede personalizar mediante las variables de entorno integradas; El lenguaje de hojas de estilo permite a los usuarios escribir nuevas primitivas como macros encima de las primitivas integradas.

TeXmacs utiliza un algoritmo global para "salto de línea" (similar al de TeX ) y además utiliza un algoritmo global para "salto de página"; el algoritmo de salto de página tiene en cuenta los objetos flotantes (figuras, tablas, notas a pie de página) y el contenido de varias columnas.

Control de documentos

Los documentos se pueden controlar a través de un sistema de macros nativo y mediante Guile-Scheme. Es posible personalizar los menús y combinaciones de teclas del editor y actuar mediante programación en el árbol de documentos.

macros de TeXmacs

Las macros de TeXmacs proporcionan un medio de entrada estructurada (como en TeX/LaTeX) y se componen inmediatamente, al mismo tiempo que mantienen campos de entrada editables. Están escritos en código fuente, aunque el editor WYSIWYG puede ayudar en su composición mediante la traducción de estructuras visuales a su sintaxis. [22]

Control de documentos a través de Scheme

Scheme está integrado en TeXmacs a través de GNU Guile ; el editor en sí se puede controlar de esta manera: [21] los menús y las combinaciones de teclas se pueden personalizar. Los comandos de esquema se pueden invocar de forma interactiva dentro de documentos TeXmacs, se pueden invocar desde la línea de comandos y desde dentro de las macros de TeXmacs. Los árboles TeXmacs se pueden pasar a Scheme de diferentes formas: como "árboles pasivos" (convenientes para manipular contenido directamente usando rutinas estándar de Scheme en listas), como "árboles activos" (realizan un seguimiento de la posición del árbol dentro del árbol de documentos global y se puede utilizar para modificar documentos mediante programación) y en una representación "híbrida".

Gráficos

Los objetos gráficos también forman parte del formato TeXmacs y se pueden manipular mediante programación desde Scheme. A continuación se muestra un ejemplo de gráficos TeXmacs generados en una sesión de TeXmacs Scheme junto con la sesión que generó la imagen. Las imágenes generadas mediante programación en una sesión de Scheme también se pueden editar usando el editor de dibujos interno, ya que se insertan en el documento como un árbol; Los scripts de Scheme también se pueden ejecutar a través de la externmacro TeXmacs; en este caso, solo el material tipográfico está disponible en el documento y no es posible la edición directa (las modificaciones deben realizarse dentro del código de Scheme).

Esquema ] ( definir pi ( acos -1 )) ;; Una función para definir un punto en el formato de gráficos TeXmacs usando dos coordenadas Esquema ] ( define ( pt x y ) ' ( punto , ( número->cadena x ) , ( número->cadena y ))) ;; Puntos de ajuste Esquema ] ( defina xC ( - ( * 2 ( cos ( / pi 3 ))))) Esquema ] ( defina yC ( * 2 ( sin ( / pi 3 )))) Esquema ] ( defina pA ( pt -2 0 )) Esquema ] ( define pB ( pt 2 0 )) Esquema ] ( define pC ( pt xC yC )) Esquema ] ( define tA ( pt -2.3 -0.5 )) Esquema ] ( define tB ( pt 2.1 -0.5 )) Esquema ] ( defina tC ( pt ( - xC 0.2 ) ( + yC 0.2 ))) ;; Generar esquema de gráficos ] ( stree->tree ' ( con "gr-geometry" ( tupla "geometry" "400px" "300px" "center" ) ( gráficos ( con "color" "blue" ( text-at ( TeXmacs ) , ( pt -0,55 -0,75 ))) ( con "color" "negro" ( arco , pA , pC ,pB )) ( con "color" "negro"                                                                                            ( línea , pA , pB )) ( con "color" "rojo" ( clina , pA , pB , pC )) ( con "color" "negro" ( texto-en "A" , tA )) ( con "color" "negro" ( texto en "B" , tB )) ( con "color" "negro" ( texto en "C" , tC )))))                           

Extremos traseros soportados

Una sesión TeXmacs de Maxima

TeXmacs tiene servidores que admiten muchas tecnologías.

Incrustar salida de complemento editable

La salida del complemento se puede incrustar en documentos TeXmacs mediante "conmutadores ejecutables"; [23] de esta manera se puede alternar entre una entrada determinada al sistema y la salida correspondiente, que se combina perfectamente en el documento.

Ver también

Referencias

  1. ^ Joris van der Hoeven (2 de abril de 2024). "TeXmacs 2.1.4" . Consultado el 2 de abril de 2024 .
  2. ^ "Descarga e instalación de TeXmacs (proyecto FSF GNU)". Texmacs.org . Consultado el 29 de mayo de 2010 .
  3. ^ "La licencia pública general GNU". Texmacs.org . Consultado el 27 de diciembre de 2010 .
  4. ^ Preguntas frecuentes (proyecto FSF GNU)
  5. ^ "Autores de GNU TeXmacs" . Consultado el 23 de septiembre de 2019 .
  6. ^ Marrón, Susan (1 de marzo de 2015). "Remediación del editor". Reseñas científicas interdisciplinarias . 40 (1): 78–94. Código Bib : 2015ISRv...40...78B. doi : 10.1179/0308018814Z.000000000106 . ISSN  0308-0188. S2CID  144086542.
  7. ^ Brooks, KP (junio de 1991). "Lila: un editor de documentos de dos vistas". Computadora . 24 (6): 7–19. doi :10.1109/2.86832. ISSN  0018-9162. S2CID  2239112.
  8. ^ "Editor GriF SGML" . Consultado el 27 de noviembre de 2020 .[ enlace muerto permanente ]
  9. ^ "Editor de documentos estructurados Thot" . Consultado el 26 de noviembre de 2020 .
  10. ^ Un modelo de documento estructurado, Clement Shin Tai-Yin, tesis doctoral, Departamento de Computación, Imperial College London, 1989
  11. ^ "Edición de objetos gráficos mediante representaciones procesales", Paul Asente, tesis doctoral, Departamento de Ciencias de la Computación, Universidad de Stanford (1987)
  12. ^ CWRC-Writer: un editor XML en el navegador, G. Rockwell et al., Conferencia de Humanidades Digitales 2012
  13. ^ van der Hoeven, Joris (21 de agosto de 2006). "GNU TeXmacs: una plataforma de edición científica" (PDF) . www.texmacs.org . págs.7 y sigs . Consultado el 16 de enero de 2016 . Dado que TeXmacs no es una interfaz de LaTeX, se deduce que solo podemos garantizar conversiones correctas para un sublenguaje (bastante grande) de LaTeX.
  14. ^ van der Hoeven, Joris; Seidl, Andreas (2011). "Preguntas frecuentes". www.texmacs.org . Consultado el 16 de enero de 2016 .
  15. ^ van der Hoeven, Joris (2012). "Bienvenido a GNU TeXmacs". www.texmacs.org . Consultado el 16 de enero de 2016 .
  16. ^ ab van der Hoeven, Joris. "GNU TeXmacs, un editor de texto técnico, estructurado, gratuito y gratuito" (PDF) . Cahiers Gutenberg . 39–40: 39–50.
  17. ^ "El manual de TeXmacs. 2.2, Escritura de texto estructurado" (PDF) . Consultado el 20 de noviembre de 2020 .
  18. ^ "Manual de usuario de GNU TEXMACS; 11.2. Representación de archivos y paquetes de estilo" (PDF) . Consultado el 27 de noviembre de 2020 .
  19. ^ Consulte el manual del usuario: «Escribir símbolos matemáticos».
  20. ^ van der Hoeven, Joris. "El formato TeXmacs" . Consultado el 10 de agosto de 2019 .
  21. ^ ab M. Gubinelli, The Guile in TeXmacs, presentación en los Guile and Guix Days en Estrasburgo, 21-22 de junio de 2019 pdf Consultado el 21 de septiembre de 2019.
  22. ^ "El manual de TeXmacs; 11.1 Escribir un paquete de estilo simple" (PDF) . Consultado el 27 de noviembre de 2020 .
  23. ^ "Manual de usuario de TeXmacs, sección" Recorrido de una presentación"" (PDF) . Consultado el 10 de noviembre de 2020 .

enlaces externos