## La Guía de TEX Live—2018

Karl Berry, editor
http://tug.org/texlive/
Abril de 2018

El TEX Live de este año está dedicado a nuestro colega Staszek Wawrykiewicz quien tristemente ha fallecido.

### Índice

1 Introducción
1.1 TEX Live y la Colección de TEX
1.2 Respaldo con el sistema operativo
1.3 Instalación básica de TEX Live
1.4 Consideraciones de seguridad
1.5 Consiguiendo ayuda
2 Sumario de TEX Live
2.1 La Colección de TEX: TEX Live, proTEX, MacTEX
2.2 Directorios en el alto nivel de TEX Live
2.3 Resumen de los árboles predefinidos de texmf
2.4 Extensiones para TEX
2.5 Otros notables programas en TEX Live
3 Instalación
3.1 Comenzando con el instalador
3.1.1 Unix
3.1.2 MacOSX
3.1.3 Windows
3.1.4 Cygwin
3.1.5 El instalador de texto
3.1.6 El instalador experto gráfico
3.1.7 El simple instalador mago
3.2 Ejecutando el instalador
3.2.1 Menú de sistemas binarios (Unix solamente)
3.2.2 Seleccionar lo que va a ser instalado
3.2.3 Directorios
3.2.4 Opciones
3.3 Opciones con la Línea de Comando install-tl
3.3.1 La opción -repository
3.4 Acciones de post-instalación
3.4.1 Las variables del sistema en Unix
3.4.2 Variables del sistema: configuración global
3.4.3 Actualizaciones del Internet después de instalación
3.4.4 Configuración de la fuente para XeTEX y LuaTEX
3.4.5 ConTEXt Mark IV
3.4.6 Integrando macros locales y personales
3.4.7 Integrando fuentes de tercera persona
3.4.8 Evaluando la instalación
3.5 Enlaces para programas adicionales de descarga
4 Instalaciones especializadas
4.1 Instalación con varios usuarios (o múltiples ordenadores)
4.2 Instalaciones portables (USB)
4.3 Instalaciones con ISO (o DVD)
5 tlmgr: Administrando tu instalación
5.1 tlmgr Modo GUI
5.2 Otras interfaces gráficas GUI para tlmgr
5.3 Ejemplos de invocaciones en la línea de comando de tlmgr
6 Notas sobre Windows
6.1 Características específicas de Windows
6.2 Software adicional incluido en Windows
6.3 El Perfil del Usuario es Casa
6.4 El registro de Windows
6.5 Permisos en Windows
6.6 Incrementando la memoria máxima en Windows y Cygwin
7 Una guía de usuario para Web2C
7.1 Ruta de acceso Kpathsea
7.1.1 Orígenes de la ruta
7.1.2 Archivos Config
7.1.3 Expansión de la ruta
7.1.4 Expansión estándar
7.1.5 Expansión de corchetes
7.1.6 Expansión del subdirectorio
7.1.7 Lista de caracteres especiales y su significado: un sumario
7.2 Base de datos de nombres de archivos
7.2.1 La base de datos de nombres de archivos
7.2.2 kpsewhich: ruta de búsqueda independiente
7.2.3 Ejemplos de uso
7.2.4 Acciones de depuración o “debugging”
7.2.5 Opciones de ejecución
8 Agradecimientos
9 Historia del lanzamiento
9.1 Pasado
9.1.1 2003
9.1.2 2004
9.1.3 2005
9.1.4 2006–2007
9.1.5 2008
9.1.6 2009
9.1.7 2010
9.1.8 2011
9.1.9 2012
9.1.10 2013
9.1.11 2014
9.1.12 2015
9.1.13 2016
9.1.14 2017
9.2 Presente—2018
9.3 Futuro

### 1. Introducción

#### 1.1. TEX Live y la Colección de TEX

Este documento describe las principales características de la distribución — TEX y los programas relacionados con el mismo, en los sistemas GNU/Linux, Unix, Mac OS X, y Windows.

Puedes adquirir TEX Live por descarga, o mediante el TEX Collection DVD, el cual es distribuido por los grupos de usuarios de TEX a todos sus miembros, o de cualquier otra manera. La sección 2.1 describe el contenido del DVD. Ambos TEX Live y el TEX Collection son posible gracias al esfuerzo por los grupos de usuarios de TEX. Este documento principalmente describe TEX Live.

TEX Live incluye ejecutables para TEX, LaTeX2e, ConTEXt, Metafont, MetaPost, BibTeX y muchos más programas; una extensa colección de macros, fuentes, y documentación; y también ayuda para la composición de documentos de imprenta, mediante varios scripts que se usan alrededor del mundo.

Para un sumario de los cambios más significativos en esta edición de TEX Live, vea el final de este documento, section 9 (p. 75).

#### 1.2. Respaldo con el sistema operativo

TEX Live contiene los binarios para muchas de las plataformas, incluyendo a GNU/Linux, Mac OS X, y Cygwin. El código original puede ser compilado en todas las plataformas para las cuales no se han proveído los binarios.

En cuanto a Windows: Windows 7 y versiones más recientes son también respaldadas. Windows Vista puede aún funcionar en la mayoría de los casos, pero en cuanto a Windows XP y versiones anteriores a este, TEX Live ya no funcionará más. No hay ejecutables especiales de 64-bit para Windows, pero los ejecutables de 32-bit deben funcionar sin problema alguno, en los sistemas de 64-bit.

Vea la sección 2.1 para soluciones alternativas, tanto para Windows como para Mac OS X.

#### 1.3. Instalación básica de TEX Live

Puedes instalar TEX Live mediante el DVD o por descarga en el Internet (http://tug.org/texlive/acquire.html). El instalador del net, es pequeño, y descarga todo sin mayores problemas.

El instalador del DVD te permite instalar a un disco local. No se puede ejecutar directamente TEX Live desde la TEX Collection DVD (o la imagen .iso), pero puedes preparar una instalación, e.g, mediante el uso de un disco portátil de USB (vea la sección 4.2). La instalación se detalla más tarde en las secciones (p. 12), pero aquí hay un breve sumario:

- El script de la instalación es nombrado intall-tl. El mismo puede operar en el modo mago o “wizard mode” una vez dada la opción -gui=wizard (estándar en Windows), un modo de texto mediante -gui=text (estándar en todos los otros sistemas operativos), y también el modo de experto GUI dado como -gui=perltk. Vea la sección 3.1.3 para Windows.
- Otro de los programas que se instala, es el ‘TEX Live Manager’, nombrado tlmgr. Que al igual que el instalador, puede usarse con el mode GUI o mediante el modo de texto. Puedes usarlo para instalar y desinstalar paquetes, y para realizar varias configuraciones.

#### 1.4. Consideraciones de seguridad

Con lo mejor de nuestro conocimiento, la base de los programas que constituyen TEX como tal, es (y siempre han sido) extremadamente robusta. Sin embargo, los programas que han sido contribuidos a TEX Live quizás no estén en el mismo nivel, a pesar de sobresalientes esfuerzos. Y de más está recalcar, que se debe tener precaución y cuidado, cuando se ejecutan aquellos programas originales no confiables.

Esta necesidad de cautela es especialmente urgente en Windows, debido entre tantos factores a que Windows encuentra los programas en el directorio presente, antes cualquier otro, sin tener en cuenta el search path, o la ruta de acceso que se haya establecido. Y esto trae consigo un sin número de ataques. Y aunque hemos logrado cerrar muchos de estos huecos, indudablemente algunos de estos, aún permanecen, especialmente con programas de third-party, o tercera-persona. Por lo tanto, recomendamos que se revisen las fichas sospechosas en el actual directorio, principalmente aquellas que son ejecutables (como los scripts y binarios). Normalmente, no deben estar presentes, ni tampoco se recrean mediante el simple procesamiento o compilación de un documento.

Finalmente, TEX (y todos sus programas acompañantes) pueden escribir archivos cuando se están procesando los documentos, una característica que puede ser abusada de varias maneras. Aún así, procesar documentos desconocidos, en un nuevo subdirectorio, es lo más recomendable.

#### 1.5. Consiguiendo ayuda

La comunidad de TEX es activa y amistosa, y las preguntas más complicadas, son respondidas. Sin embargo, el respaldo ofrecido es informal, debido a que el mismo es ofrecido por voluntarios y lectores casuales. De esta manera es importante que se familiarice con el formato antes de hacer una pregunta. (Si prefieres un respaldo garantizado y comercial, puedes abstenerte de TEX Live y comprar un sistema del vendedor; http://tug.org/interest.html#vendors tiene una lista.)

Aquí está una lista de recursos, aproximadamente en el orden, por el cual las usamos:

Comenzando
  Si eres un principiante con TEX, la página en el web http://tug.org/begin.html te ofrece en Inglés una introducción con el sistema.
TEX FAQ
  El TEX FAQ es un compendio de preguntas y respuestas, también en Inglés, desde las más básicas, hasta las más arcanas. Y está incluido en TEX Live en texmf-dist/doc/generic/FAQ-en/, y está disponible en el Internet a través de la página en http://www.tex.ac.uk.faq. Por favor, vaya allí primero.
TEX Catalogue
  Si estás interesado en un específico paquete para un proyecto, fuente, programa, etc., el Catálogo de TEX sería el primer lugar donde encontrarías esta información. Es una colección inmensa de todo lo relacionado con TEX. Vea por ejemplo http://ctan.org/pkg/catalogue/.
TEX Recursos en el web
  La página en el web http://tug.org/interest.html tiene muchos enlaces relacionados con el sistema TEX, y en particular sobre muchos libros, manuales, guías y artículos relacionados con este sistema.
Archivos de ayuda
  Los principales foros de ayuda incluyen la comunidad de LATEX en http://latex-community.org el sitio de p&r http://tex.stackexchange.com, el newsgroup Usenet en news:comp.text.tex, la lista de correo texhax@tug.org, Otros archivos tienen preguntas y respuestas. como http://groups.google.com/groupcomp.text.tex/topics, al igual que http://tug.org/mail-archives/texhax. Estos últimos dos enlaces ofrecen un placentero mecanismo de búsqueda con lo que quieras averiguar. También una búsqueda rápida en el web, http://google.com no está de más.
Preguntar
  Si no puedes encontrar una respuesta, siempre puedes escribir a comp.text.tex a través de Google o el lector de noticias, newsreader, o contactar mediante email a texhax@tug.org. Pero antes de enviar algo, por favor de leer este FAQ, para maximizar los chances en encontrar una práctica respuesta: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=askquestion. También puede acceder la Comunidad LATEX en http://www.latex-community.org/ y el foro en http://www.latex-community.org/forum/, y TEX StackExchange en http://tex.stackexchange.com/.
TEX Live support
  si deseas reportar errores, o tiene una sugerencia o comentario sobre la distribución de TEX Live, la instalación, o la documentación del sistema, la lista de correo es tex-live@tug.org. Sin embargo, si la pregunta es acerca de un programa en particular incluido en TEX Live, por favor de escribirle al autor o mantenedor del programa en la lista de correo. Muchos de los programas incluyen una opción --help que muestra la dirección donde se reporta el error.

Por otra parte, siempre puede ayudar a otros que tengan preguntas. Tanto comp.text.tex como texhax están disponibles para todos. Usted puede formar parte del grupo, comenzar a leer muchas de las preguntas, y ayudar en lo que sea necesario.

### 2. Sumario de TEX Live

Esta sección describe los contenidos de TEX Live y de TEX Collection que es parte del mismo.

#### 2.1. La Colección de TEX: TEX Live, proTEX, MacTEX

El TEX Collection DVD se compone de lo siguiente:

TEX Live
  Un sistema completo de TEX para instalar en el disco. Página en el web: http://tug.org/texlive/.
MacTEX
  para Mac OS X, que añade un instalador nativo de Mac OS X y otras aplicaciones relevantes de TEX Live. Página en el web en http://tug.org/mactex/.
proTEXt
  Una mejoría de la distribución de MiKTEX para Windows, proTEXt añade unas extra herramientas para MiKTEX, y también simplifica la instalación. Es completamente independiente de TEX Live, y tiene sus propias instrucciones para la instalación. La página en la web es en http://tug.org/protext/.
CTAN
  Un panorama del repositorio de CTAN en (http://www.ctan.org/).

CTAN y protext no siguen las mismas condiciones de copia que TEX Live, así que tenga cuidado con redistribuirlo o modificarlo.

#### 2.2. Directorios en el alto nivel de TEX Live

Aquí esta una breve lista y descripción de los directorios que están en el alto nivel de la instalación de TEX Live.

bin

  Los programas del sistema TEX, organizados según la plataforma.

readme-*.dir

  Esbozo rápido y enlaces importantes para TEX Live, en varios idiomas, en ambos HTML y texto.

source

  El código de los programas incluidos, al igual que las distribuciones de TEX basadas en Web2C.

texmf-dist

  El árbol principal; ver también [TEXMFDIST] en las siguientes líneas.

tlpkg

  Scripts, programas y datos para administrar la instalación, y respaldo especial para el sistema operativo Windows.

En adición a los directorios ya mencionados, los scripts de la instalación, junto a los ficheros README y LEEME (en varios idiomas) se encuentran en el nivel más alto de la distribución.

Para la documentación, los importantes enlaces en el fichero doc.html en el alto nivel, pueden servir de ayuda. Y la documentación para todo lo demás (paquetes, formatos, fuentes, manuales de los programas, documentación a través de man pages, y ficheros de Info) que se encuentran en texmf-dist/doc. Usted también puede usar el programa texdoc, para encontrar cualquier documentación.

Esta documentación TEX Live se encuentra en texmf-dist/doc/texlive, disponible en varios idiomas:

- Checoslovaco/Eslovaco: texmf-dist/doc/texlive/texlive-cz
- Alemán: texmf-dist/doc/texlive/texlive-de
- Inglés: texmf-dist/doc/texlive/texlive-en
- Francés: texmf-dist/doc/texlive/texlive-fr
- Italiano: texmf-dist/doc/texlive/texlive-it
- Polaco: texmf-dist/doc/texlive/texlive-pl
- Ruso: texmf-dist/doc/texlive/texlive-ru
- Serbio: texmf-dist/doc/texlive/texlive-sr
- Chino simplificado: texmf-dist/doc/texlive/texlive-zh-cn
- Serbio: texmf-dist/doc/texlive/texlive-sr
- Español: texmf-dist/doc/texlive/texlive-es

#### 2.3. Resumen de los árboles predefinidos de texmf

Esta sección enumera las variables predefinidas que especifican los árboles de texmf en el sistema, al igual que su propósito, y también el diseño de TEX Live. El comando tlmgr-conf muestra los valores de estas variables. Así usted puede aprender el proceso por el cual, estas variables aplican o se representan en los directorios de su instalación.

Todos los árboles, incluyendo los personales, deben guiarse por TEX Directory Structure, o la Estructura del Directorio de TEX (TDS, http://tug.org/tds), con la innumerable lista de subdirectorios, o de lo contrario, los ficheros no se encontrarán. Vea la sección 3.4.6 (p. 40) donde se detalla más acerca de esto.

TEXMFDIST

  El árbol que contiene casi todos los archivos de la distribución original–ficheros de configuración, scripts, paquetes, fuentes, etc. (La excepción aquí, son los ejecutables por-plataforma, los cuales están guardados en un directorio pariente bin/.)

TEXMFSYSVAR

  El árbol (nivel global) usado por texconfig-sys, updmap-sys, y fmtutil-sys, y también usado por tlmgr, para almacenar todo los datos del cache, que hayan sido causados por ficheros formateados, o de ficheros esquematizados, mapeados y regenerados.

TEXMFSYSCONFIG

  El árbol a nivel de sitio global, que es usado por las utilidades texmfconfig-sys, updmap-sys, y fmtutil-sys para guardar datos de configuración que hayan sido modificados.

TEXMFLOCAL

  El árbol el cual es usado por administradores para instalaciones globales, o la adicional instalación de macros actualizados, fuentes, etc.

TEXMFHOME

  El árbol el cual es usado por usuarios para sus propias instalaciones de adicionales fuentes, macros actualizados, etc. La expansión de esta variable, se ajusta dinámicamente para cada usuario, en sus propios directorios.

TEXMFCONFIG

  El árbol (personal) usado por las utilidades texconfig, updmap, y también fmtutil, para guardar datos de configuración que hayan sido modificados.

TEXMFVAR

  El árbol (personal) usado por texconfig, updmap y fmtutil para guardar todo los datos que hayan sido generados tanto por el cache de ficheros regenerados y mapeados, como también de ficheros formateados.

TEXMFCACHE

  El árbol o árboles usado por ConTEXt MkIV y LuaLATEX para almacenar los datos del cache; estándar es TEXMFSYSVAR, o (si esto no se permite escribirlo), TEXMFVAR.

El diseño estándar, o predeterminado, es el siguiente:

raíz del sistema
  puede abarcar múltiples versiones de TEX Live. (/usr/local/texlive estándar en Unix):
  2017

    Una versión anterior.

  2018

    La versión actual

    bin

      i386-linux

        GNU/Linux binarios

      ...

      universal-darwin

        Mac OS X binarios

      win32

        Windows binarios

    texmf-dist

      TEXMFDIST and TEXMFMAIN

    texmf-var

      TEXMFSYSVAR, TEXMFCACHE

    texmf-config

      TEXMFSYSCONFIG

  texmf-local

    TEXMFLOCAL, su uso es reservado de una versión a la otra.

directorio de casa del usuario
  ($HOME o el %USERPROFILE%)
  .texlive2017

    Datos privados generados de configuración para la versión anterior.

  .texlive2018

    Datos privados generados de configuración para la versión actual.

    texmf-var

      TEXMFVAR, TEXMFCACHE

    texmf-config

      TEXMFCONFIG

  texmf

    TEXMFHOME macros personales, etc.

#### 2.4. Extensiones para TEX

El TEX original de Knuth está congelado, con ciertas reparaciones de errores, de vez en cuando. El TEX original está presente en TEX Live como el programa tex, y permanecerá así en el futuro. TEX Live también contiene varias versiones extendidas de TEX (conocidas también como los motores de TEX ):

e-TEX
  añade un set de primitivos nuevos (relacionado con la expansión de macros, escaneo de caracteres, clases de marcas, otras características de depuración que eliminan fallos, y otras más) y las extensiones de TEX--XE T para la compilación bi-direccional de documentos de imprenta. En el modo estándar, e-TEX tiene 100% de compatibilidad con el TEX básico. Por favor, vea texmf-dist/doc/etex/base/etex_man.pdf.
pdfTEX
  se edifica en las extensiones de e-TEX, añadiendo respaldo para los resultados en PDF, al igual que en DVI. También ofrece otras extensiones. Este es el programa que se invoca para la mayoría de los formatos, e.g., etex, latex, pdflatex. La página del web para accedir al mismo se encuentra en http://www.pdftex.org/. En el CD, el manual se encuentra en texmf-distn/doc/pdftex/manual/pdftex-a.pdf, al igual que en texmf-dist/doc/pdftex/manual/samplepdf/samplepdf.tex. Este último contiene muchos de los ejemplos para su aplicación.
LuaTEX
  es el sucesor designado de pdfTEX, y mayormente (pero no del todo) es compatible. Su propósito es como un superset de Aleph (ver más abajo, para tener una idea), aunque su compatibilidad técnica no es el objetivo. El intérprete Lua (http://www.lua.org/) permite soluciones elegantes para muchos de los problemas de TEX. Cuando se le invoca como texlua, funciona como un intérprete independiente de Lua, y como tal, es usado dentro de TEX Live. La página de su sitio web se encuentra en http://www.luatex.org/, y el manual de referencia en texmf-dist/doc/luatex/base/luatexref-t.pdf.
XeTEX
  añade respaldo para el ingreso de Unicode y OpenType, al igual que para las fuentes del sistema operativo. El mismo es implementado por librerías the tercer-party. Vea http://tug.org/xetex.
Omega (Omega)
  es basado en Unicode (caracteres de 16-bit), y de esta forma respalda el trabajo con casi todos los scripts, simultáneamente. También respalda los llamados Procesos de Traducciones de Omega, o ‘Omega Translation Processes’(OTPs), que desempeñan transformaciones complejas en procesos de ingresos arbitrarios. Omega no está más incluido en TEX Live como un programa separado; solamente Aleph es proveído.
Aleph
  combina las extensiones de ambos Omega e e-TEX. Vea texmf-dist/doc/aleph/base para más información.

#### 2.5. Otros notables programas en TEX Live

Aquí aparecen otros programas comúnmente usados en TEX Live:

bibtex, bibtex8

  respaldo de bibliografía.

makeindex, xindy

  respaldo de índices.

dvips

  conversor DVI a PostScript.

xdvi

  DVI presentador preliminar para el Sistema de X Window.

dvilj

  DVI drive para la familia de HP LaserJet.

dviconcat, dviselect

  cortar, copiar y pegar páginas de ficheros de DVI.

dvipdfmx

  conversor DVI a PDF, una alternativa a pdfTEX (que ya se mencionó).

psselect, psnup, …

  Utilidades de PostScript.

pdfjam, pdfjoin, …

  Utilidades de PDF..

context, mtxrun

  procesador de ConTEXt y PDF.

htlatex, …

  Conversor tex4ht: (LA )TEX a HTML (y XML).

### 3. Instalación

#### 3.1. Comenzando con el instalador

Para comenzar, consiga el TEX Collection DVD o descargue el instalador de net TEX Live, y localice el script instalador: install-tl para los sistemas Unix, e install-tl.bat para Windows. Por favor, vea http://tug.org/texlive/acquire.html para más información, y otros métodos para conseguir el programa.

Instalador de net
  Descargue de CTAN, bajo systems/texlive/tlnet; página de web en http://mirror.ctan.org/systems/texlive/tlnet automáticamente lo dirigirá hacia el repositorio actualizado, más cercano. Usted puede descargar install-tl.zip, el cual puede ser usado bajo cualquier plataforma basada en Unix, o Windows, o como otra alternativa, puede hacerlo con install-unx.tar.gz para Unix, que es mucho más pequeño. Después que lo hayas descomprimido, de su estado original, install-tl y install-tl.bat se encontrarán en el subdirectorio install-tl.
Colección de TEX en DVD:
  vaya al subdirectorio del DVD en texlive. En Windows, el instalador normalmente arranca automáticamente cuando insertes el DVD. Puedes conseguir el DVD registrándote como miembro de cualquier Grupo de Usuarios de TEX (altamente recomendable, en http://tug.org/usergroups.html). También lo puedes conseguir, comprándolo separado de http://tug.org/store, o puedes grabar tu propia copia de la imagen ISO que se provee. Después de instalarlo de tu DVD o de la imagen ISO si deseas continuar con las actualizaciones del Internet, por favor vea 3.4.3.

El instalador como tal realiza lo mismo, sin importar el método que se utilice. La diferencia más visible entre ellos, es que con el instalador del Net, usted termina con todos los paquetes que están disponibles, mientras que con el DVD o con la imagen de ISO, estos no proveen las actualizaciones más recientes de ellos.

Las siguientes secciones explican el comienzo del instalador con más detalles.

##### 3.1.1. Unix

Abajo, el carácter > denota el punto de la terminal o intérprete de línea de comando shell. El ingreso del usuario se encuentra en bold. El script install-tl es un script de Perl. La manera más simple de arrancarlo en un sistema compatible con Unix, es de la siguiente manera:

> perl
/ruta/hacia/install-tl
(O puedes invocar /ruta/hacia/installer/install-tl si permaneció como ejecutable, o cd al directorio primero, etc.; no repetiremos todas las variaciones.) Posiblemente tuvieses que agrandar la ventana de la terminal, para que muestre el texto completo del instalador, en la pantalla. (Figura 1).

Para instalarlo en el modo experto GUI (figura 2), necesitará el módulo de Perl::TK que es compilado con respaldo de XFT, que es usualmente el caso con los sistemas de GNU/Linux, pero no así con otros sistemas. Dado que puedes invocar:

> perl install-tl -gui

Para un listado completo de las varias opciones:

> perl install-tl -help

Precaución con los permisos en Unix: Tu umask en el momento de instalación, será respetado por el instalador de TEX Live. De tal manera, si quieres que tu instalación sea accesible por otros usuarios, asegúrate que los settings o los ajustes, así lo indiquen, por ejemplo, umask002. Para más información acerca de umask, consulte la documentación de tu sistema.

Consideraciones especiales con Cygwin: A contrario de los sistemas compatibles con Unix, Cygwin, por norma o estándar, no incluye los programas pre-requeridos y necesitados por el instalador TEX Live. Vea la sección 3.1.4.

##### 3.1.2. MacOSX

Como se mencionó en la sección 2.1, para el sistema operativo de Mac OS X existe una distribución de TEX Live separada, y que fue preparada exclusivamente para este sistema, nombrada MacTEX (http://tug.org/mactex). Recomendamos que utilices este instalador nativo MacTEX en vez de TEX Live porque el instalador nativo hace algunos ajustes que son específicos con el sistema operativo Mac OS X, y permite la alternación entre varias distribuciones de TEX para este sistema. (MacTEX, Fink, MacPorts, …) mediante la estructura de datos de TEXDist.

MacTEX está basado en TEX Live, y los árboles y binarios de TEX son los mismos que este. Lo que hace, es añadir unos ficheros extras que tienen documentación y aplicaciones específicas con el sistema operativo de Mac.

##### 3.1.3. Windows

Si estás usando el archivo descomprimido zip de descarga, o el instalador del DVD falló en arrancar automáticamente, dele doble clic a install-tl-windows.bat. Y si necesitas más opciones aún, e.g., selección de colecciones de paquetes específicos, en vez de abrir el anterior, ejecuta el install-tl-advanced.bat.

También puedes arrancar el instalador, mediante el comando de la terminal. Más abajo, el carácter > denota el indicador del comando; mientras que el ingreso del comando por el usuario se denota con bold. Si estás en el directorio del instalador, sólo tienes que ejecutar:

> install-tl-windows

O también lo puedes invocar con una localización absoluta, tal como:

D:\texlive\install-tl-windows
para el TEX Collection DVD, suponiendo que el directorio D: es donde esté localizado el DVD o CD. Figura 3 muestra el instalador que es el estándar en Windows.

Para instalarlo mediante el modo de texto:

> install-tl-windows -no-gui

Para un listado completo de las varias opciones disponibles:

> install-tl-windows -help

Installing TeX Live 2018 from: ...
Platform: i386-linux => ’Intel x86 with GNU/Linux’
Distribution: inst (compressed)
...
Detected platform: Intel x86 with GNU/Linux
<B> binary platforms: 1 out of 21
<S> set installation scheme (scheme-full)
<C> customizing installation collections
40 collections out of 41, disk space required: 5328 MB
<D> directories:
TEXDIR (the main TeX directory):
/usr/local/texlive/2018
...
<O> options:
[ ] use letter size instead of A4 by default
...
<V> set up for portable installation
Actions:
<I> start installation to hard disk
<H> help
<Q> quit
Figura 1: Pantalla del instalador principal de texto (GNU/Linux)

Figura 2: Pantalla del instalador experto GUI (GNU/Linux)

Figura 3: Pantalla del instalador mago (Windows)

##### 3.1.4. Cygwin

Antes de comenzar la instalación, ejecute setup.exe del programa de Cygwin, para instalar los paquetes perl y wget si no lo ha hecho. Se recomienda los siguientes paquetes:

- fontconf[necesitado por XeTEX y LuaTEX]
- ghostscript [necesitado por varias utilidades]
- libXaw7 [necesitado por xdvi]
- ncurses [provee el comando clear usado por el instalador]

##### 3.1.5. El instalador de texto

Figura 1 muestra una pantalla con el modo principal de texto en Unix. El instalador de texto es el estándar en Unix.

Este es solamente un instalador a través de la línea de comando; ni el indicador ni la selección mediante el ratón es posible. Por ejemplo, tampoco es posible tabular con el teclado, ni sombrear las cajas o las tablas que normalmente se haría con el GUI. Solamente se permite teclear (con minúsculas) en la línea de comando, y presionar la tecla de Enter una vez terminado. La pantalla es reescrita y ajustada con el contenido apropiado.

La interfaz del instalador de texto tiene esta característica primitiva por una razón: está diseñado para ser ejecutado en varias plataformas, incluso bajo un sistema, con un mínimo código Perl.

##### 3.1.6. El instalador experto gráfico

Figura 2 muestra el instalador gráfico bajo GNU/Linux. Con la excepción de ofrecer botones, casillas y menús, este no difiere mucho del instalador de texto.

Este modo puede ser invocado explícitamente con

> install-tl -gui=perltk

##### 3.1.7. El simple instalador mago

Bajo Windows, por norma, o método estándar, la instalación de este sistema, es el método más simple que hemos preparado, nombrado el instalador “mago” (figura 3). Instala casi todo, con mínimas preguntas. Si usted desea tener más opciones en el proceso de instalación, de acuerdo a los ajustes o configuraciones que haya seleccionado, debería utilizar los otros instaladores que ofrecen más posibilidades.

En otras plataformas, este modo puede ser invocado explícitamente con

> install-tl -gui=wizard

#### 3.2. Ejecutando el instalador

El instalador es explicativo por diseño, pero a continuación hay unas notas acerca de sus opciones y sub-menús.

##### 3.2.1. Menú de sistemas binarios (Unix solamente)

Plataformas disponibles
========================================================
a [ ] Cygwin en Intel x86 (i386-cygwin)
b [ ] Cygwin en x86_64 (x86_64-cygwin)
c [ ] MacOSX legacy (10.5-10.6) en Intel x86 (i386-darwin)
d [ ] MacOSX legacy (10.5) en PowerPC (powerpc-darwin)
e [ ] MacOSX current en x86_64 (x86_64-darwin)
f [ ] MacOSX legacy (10.6-10.9) en x86_64 (x86_64-darwinlegacy)
g [ ] FreeBSD en x86_64 (amd64-freebsd)
h [ ] FreeBSD en Intel x86 (i386-freebsd)
i [ ] GNU/Linux en ARM (armel-linux)
j [ ] GNU/Linux en ARMhf (armhf-linux)
k [ ] GNU/Linux en Intel x86 (i386-linux)
l [ ] GNU/Linux en PowerPC (powerpc-linux)
m [X] GNU/Linux en x86_64 (x86_64-linux)
o [ ] NetBSD en x86_64 (amd64-netbsd)
p [ ] NetBSD en Intel x86 (i386-netbsd)
s [ ] Solaris en Intel x86 (i386-solaris)
t [ ] Solaris en Sparc (sparc-solaris)
u [ ] Solaris en x86_64 (x86_64-solaris)
v [ ] Windows (win32)
Figura 4: Menú de los binarios

Figura 4 muestra el menú binario en el modo de texto. Por estándar, solamente los binarios de su plataforma actual serán instalados. Desde este menú, usted puede seleccionar la instalación de los binarios para otras plataformas. Esto puede ser provechoso, si estás compartiendo un árbol de TEX a través de un network de máquinas heterogéneas, o también en aquellos sistemas que tienen dos o más sistemas operativos.

##### 3.2.2. Seleccionar lo que va a ser instalado

Select scheme:
===============================================================================
a [X] full scheme (everything)
b [ ] medium scheme (small + more packages and languages)
c [ ] small scheme (basic + xetex, metapost, a few languages)
d [ ] basic scheme (plain and latex)
e [ ] minimal scheme (plain only)
f [ ] ConTeXt scheme
g [ ] GUST TeX Live scheme
h [ ] teTeX scheme (more than medium, but nowhere near full)
i [ ] XML scheme
j [ ] custom selection of collections
Figura 5: Menú del esquema

Figura 5 muestra el esquema del menú de TEX Live. Desde aquí, puedes seleccionar un “esquema”, el cual es un conjunto de las colecciones de los paquetes. El esquema estándar full, instala todo lo que está disponible. Esto es recomendable, pero también puedes escoger e instalar el esquema básico basic para aquellos sistemas pequeños, el esquema mínimo minimal para los sistemas de evaluación y pruebas, y mediano medium o el teTeX, que ofrece un set de paquetes con ambos propósitos de evaluación al igual que básico. También hay varios esquemas especializados y específicos a regiones o países.

Figura 6: Collections menu

Se puede refinar la selección del esquema con el menú ‘colecctions’ (figura 6, mostrado en el modo GUI para cambiar.)

Las colecciones son un nivel más detallado que los esquemas — en esencia, un esquema consiste de varias colecciones, lo que una colección consiste en uno o más paquetes, y un paquete (el grupo del nivel más abajo en la estructura de TEX Live) contiene los archivos de macros de TEX, archivos de fuentes, y otros.

Si deseas más control sobre la colección que el menú provee, puedes usar el programa TEX Live Manager (tlmgr) después de la instalación (vea la sección 5); usando este último, usted puede controlar la instalación e información de los paquetes, al nivel donde estos se encuentren, en la estructura del sistema.

##### 3.2.3. Directorios

El diseño estándar está descrito en la sección 2.3, p. 8. La localización estándar de TEXDIR es /usr/local/texlive/2018 en los sistemas Unix y %SystemDrive%\texlive\2018 en Windows. Acomodándolo de esta manera, usted tendrá instalaciones paralelas de TEX Live. Una para cada versión, y puede cambiar entre ambas, simplemente cambiando la ruta de búsqueda.

Esto puede ser sobrescrito mediante la especificación de configuraciones de TEXDIR en el instalador. La razón principal en cambiarlo, es por ejemplo si usted no tiene los permisos necesarios para escribirlos en la localización estándar. No se tiene que ser el administrador del sistema, o la ‘raíz’, para instalar TEX Live, pero hay que recalcar que sí tiene que tener acceso para escribirlo al directorio de destino.

Una alternativa razonable es un directorio local, o el directorio de la casa (home directory), especialmente si usted es el único usuario. Use ‘~’ para indicar esto, como por ejemplo ‘~/texlive/2018’.

Recomendamos incluir el año del calendario, en el nombre del susodicho directorio. De esa manera, puede tener varias versiones de TEX Live juntas en el sistema. También puede tener un nombre con versión independiente, tal como /usr/local/texlive-cur, mediante un enlace simbólico, el cual puede redirigir después de haber evaluado la nueva versión de la instalación.

El cambiar TEXDIR en el instalador, también cambiará TEXMFLOCAL, TEXMFSYSVAR y TEXMFSYSCONFIG.

TEXMFHOME es la localización recomendable para los archivos personales de macros, o de paquetes. El valor estándar es ~/texmf (~/Library/texmf en las Macs). A diferencia con TEXDIR, aquí una ~ es preservada en los recién escritos archivos de configuración, debido a que se refiere al directorio local del usuario que opera TEX. Se expande a $HOME en Unix y %USERPROFILE% en Windows.

Nota especial redundante: TEXMFHOME, como todos los árboles, tiene que ser organizado de acuerdo al TDS (Estructura del Directorio de TEX), o de lo contrario, los archivos no se encontrarán.

TEXMFVAR es la localización para almacenar la mayor cantidad de cache, de los datos de ejecución, específicos a cada usuario. TEXMFCACHE es el nombre de la variable que es usada para ese propósito por LuaLATEX y ConTEXt MkIV (vea la sección 3.4.5,) p. 39); su valor pre-configurado es TEXMFSYSVAR, o (si no es permisible en los permisos de escritos), TEXMFVAR.

##### 3.2.4. Opciones

Options setup:
===============================================================================
<P> use letter size instead of A4 by default: [ ]
<E> execution of restricted list of programs: [X]
<F> create all format files: [X]
<D> install font/macro doc tree: [X]
<S> install font/macro source tree: [X]
<L> create symlinks in standard directories: [ ]
binaries to:
manpages to:
info to:
<Y> after installation, get package updates from CTAN: [X]
Figura 7: Menú de opciones(Unix)

Figura 7 muestra el menú de opciones bajo el modo de texto. Más información de cada uno:

use letter size instead of A4 by default:
  La selección del papel estándar. Por supuesto, para documentos individuales, el tamaño del papel se puede, y debe ser especificado.
execution of restricted list of programs:
  A partir de TEX Live 2010, la ejecución de varios programas externos es permisible. La (breve) lista de los programas que son permitidos, se puede encontrar en el archivo texmf.cnf. Si necesita más detalles, vea las noticias del 2010 9.1.7.
create format files:
  Aunque muchos archivos formateados, lleven tiempo no solo en generar, sino también en almacenar, es aún recomendable que esta opción se mantenga chequeada, de lo contrario, estos archivos formateados se generarían en el árbol privado del usuario, así como sea necesario. En esa localización, los mismos no serán actualizados automáticamente, si digamos, los binarios, o los patrones de las separaciones por guión, son actualizados, y por esa razón, usted puede terminar con archivos formateados incompatibles.
install font/macro … tree:
  Omita descargar/instalar la documentación y archivos originales, incluídos en la mayoría de los paquetes. No es recomendable.
create symlinks in standard directories:
  Esta opción (solamente en Unix) evita cambiar las variables del sistema. Sin esta opción, los directorios de TEX Live usualmente tienen que ser añadidos a PATH, MANPATH, e INFOPATH. Necesitaría los permisos para escribir en los directorios de destino. Es extremadamente aconsejable no sobrescribir un sistema de TEX en tu sistema, con esta opción. Es principalmente utilizado para acceder el sistema de TEX a través de aquellos directorios, que son conocidos para los usuarios, tales como /usr/local/bin, que no contienen ningún archivo de TEX.
after installation … CTAN:
  Cuando está instalando de DVD, esta opción está autorizada por estándar, debido a que usualmente, uno actualizaría los subsiguientes paquetes, mediante las actualizaciones de CTAN que ocurren durante el año. La única razón para no autorizarlo, es si usted instala solamente un subset del DVD y planea en resumir la instalación después. De cualquier manera, tanto el repositorio de paquetes del instalador, al igual que las actualizaciones después de instalación, pueden ser fijadas, establecidas, tanto como sea necesario; ver la sección 3.3.1, y la sección 3.4.3.para más detalles.

Cuando todas las preferencias personalizadas y configuraciones, hayan sido especificadas, usted puede ingresar la ‘I’, para comenzar el proceso de instalación. Cuando esto finalice, vaya a la sección 3.4 para leer qué más se necesitaría hacer.

#### 3.3. Opciones con la Línea de Comando install-tl

Ingrese

> install-tl -help
para una lista de opciones de la línea de comandos. Así sea - o -- pueden ser usados para los nombres de las opciones. Los siguientes, son los más comunes:

-gui

  Si es posible, use el instalador del GUI. Esto requiere el módulo de Perl/Tk (http://tug.org/texlive/distro.html#perltk), compilado con el respaldo de XFT; si Perl/Tk no está disponible, la instalación continúa en el modo de texto.

-no-gui

  Obligue el instalador de texto, incluso bajo Windows.

-lang LL

  Especifique el interfaz del idioma del instalador, mediante un código estándar (usualmente dos-letras). El instalador determina automáticamente el idioma correcto, pero si falla, o si el idioma seleccionado no está disponible, se utilizará el inglés como reemplazo. Ingrese install-tl --help para ver la lista de idiomas disponibles.

-portable

  Instale para uso portátil, e.g., una tarjeta flash drive USB. También seleccionable, a través del instalador con el comando V, y desde el instalador gráfico de GUI. Vea la sección 4.2.

-profile file

  Cargue el perfil de instalación file, y haga la instalación sin interacción del usuario. El instalador siempre escribe un archivo texlive-profile al subdirectorio tlpkg de su instalación. Ese archivo, puede ser dado como un argumento, para replicar la misma y exacta instalación en un sistema diferente. Alternativamente, usted puede usar un perfil personalizado, que es fácilmente creado, comenzando con uno que haya sido generado, y cambiar los valores, o también de un archivo vacío, el cual tomaría todos los valores estándares.

-repository url-or-directory

  Especifique el repositorio de paquetes de donde instalarlo; vea lo siguiente.

-in-place

  (Documentado solamente para concluir: No use esto, a menos que sepa lo que está haciendo.) Si ya tiene un rsync, svn, o otra copia de TEX Live (vea http://tug.org/texlive/acquire-mirror.html) entonces esta opción implementará lo que tiene, tal y como es, y hará solamente la necesaria post-instalación. Se le advierte que el archivo tlpkg/texlive.tlpdb puede ser sobrescrito; guardarlo es su responsabilidad. No se olvide, que la eliminación de paquetes, tiene que hacerse manualmente. Esta opción no puede ser intercambiada mediante el interfaz del instalador.

##### 3.3.1. La opción -repository

El repositorio estándar de la red, es un espejo de CTAN, escogido automáticamente por http://mirror.ctan.org.

Si deseas sobrescribir eso, el valor de la localización, puede ser un url comenzando con ftp:, http:, o file:/, o la ruta del directorio. (Cuando se especifica un http: o ftp: cualquier retazo de caracteres como ‘/’ y/o retazos de componentes como ‘/tlpkg’ son ignorados.)

Por ejemplo, usted puede escoger un espejo en particular de CTAN con algo como: http://ctan.example.org/tex-archive/systems/texlive/tlnet/, substituyendo un servidor del network, con el nivel alto de la ruta de CTAN por ctan.example.org/tex-archive. La lista de espejos de CTAN es mantenida en http://ctan.org/mirrors.

Si el argumento es local (así sea una ruta, o un file:/ url), los archivos comprimidos en el subdirectorio archive de la ruta del directorio, son entonces los utilizados (incluso cuando los archivos descomprimidos estén disponibles también).

#### 3.4. Acciones de post-instalación

Alguna post-instalación puede ser requerida.

##### 3.4.1. Las variables del sistema en Unix

Si elegiste crear enlaces simbólicos o symlinks en los directorios estándar (descrito en la sección 3.2.4), no hay necesidad por lo tanto de editar las variables. De otra manera, en los sistemas de Unix, el directorio de los binarios de tu plataforma tienen que ser añadido a la ruta de acceso, o el search path. (En Windows, el instalador se ocupa de esto.)

Cada plataforma respaldada tiene su propio subdirectorio bajo TEXDIR/bin. Vea la figura 4 para la lista de subdirectorios y su correspondiente plataforma.

Opcionalmente, si quieres que las herramientas del sistema lo encuentren, también puedes añadir la documentación man y los directorios Info, a su respectiva ruta de acceso. Las páginas man pudiesen ser encontradas manualmente después de la adición a PATH.

Para las terminales compatibles de Bourne, como la bash, y usando un Intel x86 GNU/Linux y un directorio estándar como ejemplo, el archivo que podría ser editado es $HOME/.profile (o cualquier otro archivo), especificado por .profile y las líneas que consiguientemente se añadirían, serían:

PATH=/usr/local/texlive/2018/bin/i386-linux:$PATH; export PATH
MANPATH=/usr/local/texlive/2018/texmf-dist/doc/man:$MANPATH; export MANPATH
INFOPATH=/usr/local/texlive/2018/texmf-dist/doc/info:$INFOPATH; export INFOPATH

Para csh o tcsh, el archivo para editar es típicamente $HOME/.cshrc, y las líneas que se tuviesen que añadir, serían:

setenv PATH /usr/local/texlive/2018/bin/i386-linux:$PATH
setenv MANPATH /usr/local/texlive/2018/texmf-dist/doc/man:$MANPATH ; export MANPATH
setenv INFOPATH /usr/local/texlive/2018/texmf-dist/doc/info:$INFOPATH ; export INFOPATH

Si ya tienes los ajustes necesarios en los archivos “dot”, naturalmente los directorios de TEX Live deben ser integrados apropiadamente.

##### 3.4.2. Variables del sistema: configuración global

Si quieres hacer cambios globales, o para un usuario recién añadido, será bajo tu propia responsabilidad; simplemente hay mucha variación entre los sistemas, y cómo y dónde serían las configuraciones.

Nuestras dos recomendaciones son: 1) quizás chequea un file /etc/manpath.config y, si está presente, añade líneas como:

MANPATH_MAP /usr/local/texlive/2018/bin/i386-linux \
/usr/local/texlive/2018/texmf-dist/doc/man

Y 2) chequea un file /etc/environment, el cual puede definir la ruta de acceso y otras variables del sistema.

En cada directorio binario (Unix), también creamos un enlace simbólico nombrado man, al directorio texmf-dist/doc/man. Algunos programas man, tales como el estándar Mac OS X man, lo encontrarán automáticamente, evitando la necesidad de una configuración adicional para la página del programa man.

##### 3.4.3. Actualizaciones del Internet después de instalación

Si instalastes TEX Live de un DVD y después quieres obtener actualizaciones a través del Internet, necesitas ejecutar este comando—después que hayas actualizado la ruta de búsqueda (como se describe en la sección anterior):

> tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet

Esto le dice a tlmgr, que utilice el espejo de CTAN más cercano, para futuras actualizaciones.

Este es el estándar cuando se instala de un DVD con la opción descrita en la sección 3.2.4

Si hay problemas con la selección automática de espejos, puedes especificar un espejo particular de CTAN, de la lista en http://ctan.org/mirrors. Usa la ruta exacta al subdirectorio tlnet en ese espejo, como se mostró anteriormente.

##### 3.4.4. Configuración de la fuente para XeTEX y LuaTEX

XeTEX y LuaTEX pueden usar cualquier fuente instalada en el sistema, no solo aquellas que están instaladas en los árboles TEX. Esto lo hacen relacionadas entre sí, pero no mediante métodos idénticos.

En Windows, las fuentes incluidas con TEX Live están disponibles automáticamente en XeTEX a través del nombre de la fuente. En el sistema operativo Mac OS X, el respaldo para la búsqueda de las fuentes, requiere pasos adicionales; por favor consulte las páginas en el web de MacTEX para más detalles acerca de esto. Para otros sistemas operativos basados en Unix, el procedimiento para encontrar estas fuentes es de la siguiente manera.

Cuando el paquete xetex es instalado (así sea durante la instalación inicial o después), el archivo necesario para la configuración es creado en: TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf.

Para configurar y fijar las fuentes de TEX Live para el uso global del sistema (asumiendo que usted tenga privilegios), es de la siguiente manera:

1. Copia el archivo texlive-fontconfig.conf a /etc/fonts/conf.d/09-texlive.conf.
2. Ejecuta fc-cache -fsv.

Si no tienes suficientes privilegios con las indicaciones anteriores, o si quieres que las fuentes estén disponibles solamente para un usuario, puedes hacer lo siguiente:

1. Copia el archivo texlive-fontconfig.conf a ~/.fonts.conf, donde ~ es el directorio de la casa.
2. Ejecuta fc-cache -fv.

Puedes ingresar fc-list para ver los nombres de las fuentes del sistema. La incantación fc-list: family style file spacing (todos los argumentos son cadenas literales) muestra alguna información.

##### 3.4.5. ConTEXt Mark IV

Ambos el ‘antiguo’ ConTEXt (Mark II) y el ‘nuevo’ ConTEXt (Mark IV) deben de operar sin problemas después de la instalación de TEX Live, y no requieren atención especial, mientras que uno utilice tlmgr para las actualizaciones.

Sin embargo, debido a que ConTEXt MkIV no hace uso de la librería kpathsea, alguna que otra configuración será requerida, como por ejemplo cuando se instalan nuevos archivos manualmente (sin el uso de tlmgr). Después de tal instalación, cada usuario de MkIV debe ejecutar:

context --generate

para actualizar la memoria del cache del disco. Los archivos resultantes son por consiguiente guardados bajo TEXMFCACHE cuyo valor estándar en TEX Live es TEXMSYSVAR;TEXMFVAR.

ConTEXt MkIV leerá todas las rutas mencionadas en TEXMFCACHE, y escribirá a la primera ruta que sea grabable. Mientras esto se lee, la última ruta que corresponda, tomará precedencia, en el caso de memoria duplicada del cache de datos.

Para más información, vea http://wiki.contextgarden.net/Running_Mark_IV.

##### 3.4.6. Integrando macros locales y personales

Esto ya está implícitamente mencionado en la sección 2.3: TEXMFLOCAL (por estándar, /usr/local/texlive/texmf-local o en %SystemDrive%\texlive\texmf-local en Windows) está dirigido hacia las fuentes locales y los macros a nivel global del sistema; y TEXMFHOME (estándar, $HOME/texmf o %USERPROFILE%\texmf), es para las fuentes personales y macros.

Estos directorios están diseñados a permanecer de una versión a otra, mientras que su contenido sea visto automáticamente por cada nueva versión de TEX Live. De esta manera, lo mejor es no cambiar la definición de TEXMFLOCAL que difiera mucho del principal directorio de TEX Live, o de lo contrario necesitaría cambiar manualmente las versiones futuras.

Para ambos árboles, los archivos deben ponerse en los subdirectorios de la apropiada Estructura del Directorio de TEX (TDS); vea http://tug.org/tds o consulte texmf-dist/web2c/texmf.cnf. Por ejemplo, un archivo de una clase de LATEX o el paquete debe ser puesto en TEXMFLOCAL/tex/latex o TEXMFHOME/tex/latex, o en un subdirectorio de este.

TEXMFLOCAL requiere una base de datos actualizada, o los archivos no se encontrarán. Puedes actualizarla con el comando mktexlsr o usa el botón ‘Reinit file database’ en el tabulador de la configuración del GUI TEX Live Manager.

Por norma o estándar, como se muestra, cada una de estas variables está definida en un sólo directorio. Esto no es un requisito que es forzado y tomado a la ligera. Si necesitas alternar entre diferentes versiones o paquetes grandes, puedes por ejemplo, mantener múltiples árboles para tu propio objetivo. Esto se logra, configurando TEXMFHOME a la lista de directorios, encerrados entre corchetes, y separados por comas.

TEXMFHOME = {/my/dir1,/mydir2,/a/third/dir}

Sección 7.1.5 describe aún más la expansión de corchetes.

##### 3.4.7. Integrando fuentes de tercera persona

Desafortunadamente, esto es un tópico un poco complicado. Es mejor no tomarlo en cuenta, a menos que desees profundizar en todos los detalles acerca de la instalación de TEX. Muchas fuentes ya están incluidas en TEX Live, así que échale un vistazo, para asegurarte que la fuente no se encuentre ahí.

Una alternativa es usar XeTEX o LuaTEX (vea la sección 2.4), el cual te permite tener acceso a las fuentes que están incluidas con el sistema operativo, sin ninguna instalación de TEX.

Si necesitas hacer esto, vea http://tug.org/fonts/fontinstall.html con nuestro mejor esfuerzo en describir el procedimiento.

##### 3.4.8. Evaluando la instalación

Después de instalar TEX Live, naturalmente quieres evaluarlo, y así comenzar a crear bellos documentos y/o fuentes.

Una cosa que inmediatamente puedes estar buscando es un programa que te permita editar los archivos. TEX Live instala TEXWorks (http://tug.org/texworks) en Windows, y MacTEX instala TeXShop (http://pages.uoregon.edu/koch/texshop). En otros sistemas de Unix, es tu decisión escoger un editor. Por supuesto que hay muchas opciones disponibles, algunas de las cuales aparecen en la próxima sección; vea también http://tug.org/interest.html#editors. Pero en sentido general, cualquier editor de texto funcionará.

El resto de esta sección te ofrece algunos procedimientos básicos para evaluar que el nuevo sistema esté operando correctamente. En este manual, ofrecemos comandos basado en Unix; bajo Mac OS X y Windows, estás más propenso en ejecutar las pruebas a través de una interfaz gráfica, pero el proceso es en sí el mismo.

1. Asegúrate de ejecutar el programa tex antes que todo:

   > tex --version
   TeX 3.14159265 (TeX Live ...)
   Copyright ... D.E. Knuth.
   ...
   Si esto resulta en ‘command not found’, en vez de aparecer la versión y la información de derechos de copia, o si te aparece una versión anterior, lo más probable es que no tienes el correcto subdirectorio bin en la ruta PATH. Vea la información acerca de la configuración del programa en p. 38.
2. Procesar un archivo básico de LATEX:

   > latex sample2e.tex
   This is pdfTeX 3.14 ...
   ...
   Output written on sample2e.dvi (3 pages, 7484 bytes).
   Transcript written on sample2e.log

   Si lo anterior, falla en encontrar sample2e.tex u otro archivo, lo más probable en este caso es una interferencia con las variables o con los archivos de configuración de una versión anterior; recomendamos primero antes que todo, remover cualquier variable que esté relacionada con TEX. (Para un análisis más profundo, puedes preguntarle a TEX que reporte exactamente lo que está buscando, y encontrando; vea “Acciones de depuración” en la página 7.2.4.)

3. Vista previa del resultado:

   > xdvi sample2e.dvi # Unix
   > dviout sample2e.dvi # Windows
   Debes ver una ventana nueva con un documento que explica alguna información básica acerca de LATEX. (Vale la pena leerlo, por cierto, si eres un principiante con TEX.) Tienes que estar bajo el sistema de X para que el xdvi funcione; si no lo estás, o si la variable del sistema DISPLAY está configurada incorrectamente, obtendrá el error ‘Can’t open display’.
4. Crea un archivo PostScript para imprimir o mostrar en la pantalla:

   > dvips sample2e.dvi -o sample2e.ps
5. Crea un archivo PDF en vez de DVI; esto procesa el archivo .tex y escribe el PDF directamente:

   > pdflatex sample2e.tex
6. Vista previa del resultado del archivo PDF:

   > gv sample2e.pdf
   o:
   > xpdf sample2e.pdf
   Ninguno de estos, ni gv ni xpdf están incluidos en TEX Live, así que tuvieses que instalarlos por separados. Vea http://www.gnu.orgr/software/gv y http://www.foolabs.com/xpdf, respectivamente. También hay muchos programas que abren los archivos PDF. Para Windows, recomendamos Sumatra PDF (http://blog.kowalczyk.info/software/sumatrapdf).
7. Archivos estándar de evaluación que puede considerar útiles además de sample2e.tex:
   small2e.tex

     Un documento más simple que sample2e.tex, para reducir el tamaño del archivo si tienes problemas.

   testpage.tex

     Evalúa si tu imprenta tiene muchos valores fuera del margen.

   nfssfont.tex

     Para imprimir tablas con fuentes y pruebas.

   testfont.tex

     También para cuadros de fuentes, pero usando esta vez plain TEX.

   story.tex

     El más canónico archivo de prueba para plain TEX, o TEX básico.

8. Si instalaste el paquete xetex, puedes evaluar el acceso a las fuentes del sistema de la siguiente manera:

   > xetex-opentype-info.tex
   This is XeTeX, Version 3.14…
   ...
   Output written on opentype-info.pdf (1 page).
   Transcript written on opentype-info.log.

   Si te aparece un mensaje de error que dice “Invalid fontname ‘Latin Modern Roman/ICU’…”, entonces necesitas configurar tu sistema, de tal manera que las fuentes que están incluidas en TEX Live puedan ser encontradas. Vea Sección 3.4.4.

#### 3.5. Enlaces para programas adicionales de descarga

Si eres principiante con TEX, o necesitas ayuda preparando documentos en TEX o LATEX, por favor visita http://tug.org/begin.html para algunos recursos introductorios.

Enlaces para algunas herramientas que puedes considerar en instalar:

Ghostscript
  http://www.cs.wisc.edu/~ghost/
Perl
  http://www.perl.org/ con paquetes suplementarios de CPAN, http://www.cpan.org/
ImageMagick
  http://www.imagemagick.com, para procesamiento y conversión de gráficas.
NetPBM
  http://netpbm.sourceforge.net/, también para gráficas.
Editores de texto orientados para TEX
  Hay una amplia selección, y es cuestión de gusto. Aquí hay una selección en orden alfabético (unos cuantos que aparecen aquí son para Windows solamente).
  - GNU Emacs está disponible nativamente para Windows, vea http://www.gnu.org/software/emacs/windows/ntemacs.html.
  - Emacs con AucTEX para Windows está disponible de CTAN. La página de AuCTEX está en http://www.gnu.org/software/auctex.
  - LEd está disponible de http://mirror.ctan.org/support/LEd.
  - SciTE está disponible de http://www.scintilla.org/SciTE.html.
  - Texmaker es software libre, disponible de http://www.xm1math.net/texmaker.
  - TeXstudio se bifurcó de Texmaker con características adicionales; http://texstudio.sourceforge.net.
  - TeXnicCenter es software libre, disponible en http://www.texniccenter.org y en la distribución de proTEX.
  - TeXworks es software libre, disponible de http://tug.org/texworks e instalado para Windows y Mac OS X como parte de TEX Live.
  - Vim es software libre, disponible de http://www.vim.org.
  - WinEdt es programa shareware a través de http://tug.org/winedt or http://www.winedt.com.
  - WinShell está disponible en http://www.winshell.de.

Para una lista más extensa de paquetes y programas, vea http://tug.org/interest.html

### 4. Instalaciones especializadas

Las secciones previas describen el proceso básico de instalación. Aquí veremos algunos casos que son especializados.

#### 4.1. Instalación con varios usuarios (o múltiples ordenadores)

TEX Live ha sido diseñado para ser compartido entre varios usuarios en un sistema, y/o entre diferentes sistemas en una red. Con una estándar organización del directorio, ninguna ruta forzada es configurada: la localización de los archivos que los programas de TEX Live necesitan, pueden ser encontrados relativos con estos programas. Puedes ver esto en el archivo principal de configuración: $TEXMFDIST/web2c/texmf.cnf, que contiene líneas tales como:

TEXMFROOT = $SELFAUTOPARENT
...
TEXMFDIST = $TEXMFROOT/texmf-dist
...
TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local

Esto quiere decir, que añadiendo un directorio para los ejecutables de TEX Live en la ruta de acceso de estos, es más que suficiente para tener una configuración operable.

De la misma manera, puedes instalar TEX Live localmente, y luego mover, traspasar toda la jerarquía, a una localización en la red.

Para Windows, un programa lanzador launch de la instalación, está disponible en http://tug.org/texlive/w32-client.html. La ventana principal de este, contiene entradas en el menú y botones para varios programas relacionados con TEX y también con documentación.

Durante el primer uso, este lanzador modifica la ruta de acceso para TEX Live y crea algunas asociaciones de los ficheros. También crea una entrada en el menú de Comienzo o Start que permite deshacer estas configuraciones, en adición a la entrada del menú del lanzador como tal.

Todo esto es configurado en un archivo ini. Usted también puede añadir por si mismo, ingresos tales como e.g. SumatraPDF o algún editor-de-LATEX. Vea la página en el Internet que se mostró anteriormente para más información.

#### 4.2. Instalaciones portables (USB)

La opción -portable del instalador (o el comando V en el instalador de texto, o la correspondiente opción en el GUI) crea una instalación completamente independiente bajo una raíz común, y renuncia a cualquier integración con el sistema. Puedes crear una instalación directamente en un lector de USB, o copiarlo después a la memoria del USB.

Para ejecutar TEX con esta instalación, necesitas añadir el apropiado directorio del binario, a la ruta de acceso, durante la sesión de la terminal, como es usual. En Windows, puedes darle dos veces a tl-tray-menu en la raíz de la instalación para escoger entre varias opciones, como se muestra en esta captura de pantalla:

La entrada de ‘More…’ explica como usted puede personalizar este menú.

#### 4.3. Instalaciones con ISO (o DVD)

Si no necesitas actualizar o modificar tu sistema periódicamente, y/o tienes varios sistemas para instalar TEX Live, puedes encontrar conveniente en crear una imagen ISO de tu instalación de TEX Live, porque:

- Copiando un ISO entre diferentes computadoras es mucho más rápido que copiando una instalación estándar.
- Si estás inicializando tu sistema, con dos sistemas operativos, y quieres que ambos compartan una instalación TEX Live, la instalación del ISO no está expuesta a las idiosincrasias y limitaciones de otros sistemas de archivos (FAT32, NTFS, HFS+).
- Sistemas virtuales pueden simplemente montar un ISO.

Por supuesto, también puedes grabar la imagen ISO a un DVD, si te es útil.

Sistemas operativos GNU/Linux/Unix, incluyendo Mac OS X, pueden montar un ISO. Windows 8 es la primera (!) versión Windows que puede hacer esto. Excepto esto, nada cambia en respecto a una instalación normal a un disco duro, vea la sección 3.4.1.

Cuando prepares tal instalación ISO, lo mejor es omitir el subdirectorio para el año del lanzamiento, y que tengas texmf-local, en el mismo nivel que los otros árboles, (texmf-var, etc.). Puedes hacer esto con las opciones normales del directorio en el instalador.

Para un sistema físico de Windows (en vez de virtual), puedes grabar la imagen ISO a DVD. Sin embargo, es mejor que investigues las opciones libres de montajes — ISO, tales como WinCDEmu en http://wincdemu.sysprogs.org/.

Para integración con el sistema Windows, puedes incluir los programas w32client descrito en la sección 4.1 y en http://tug.org/texlive/w32client.html, que funciona de igual manera como un ISO para una instalación en red.

En Mac OS X, TeXShop podrá hacer uso de la instalación con DVD, si un enlace simbólico /usr/texbin apunta hacia el apropiado binario del directorio, e.g.,

sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin

Nota histórica: TEX Live 2010 fue la primera edición de TEX Live, la cual no fue más distribuida ‘live’. Sin embargo, siempre requirió algunas acrobacias para ejecutar el DVD o el ISO; en particular, no había manera de configurar por lo menos una variable extra en el sistema. Si creas tu ISO de una existente instalación, cabe señalar, que no hay necesidad de esto.

### 5. tlmgr: Administrando tu instalación

Figura 8: tlmgr en modo GUI: página principal, después de ‘cargarse’.

Figura 9: tlmgr en modo GUI: opciones generales

Figura 10: tlmgr en modo GUI: opciones del tamaño del papel

TEX Live incluye un programa nombrado tlmgr para administrar TEX Live después de la instalación inicial. Sus capacidades incluye:

- instalando, actualizando, archivando, restaurando, y desinstalando paquetes individuales, opcionalmente tomando dependencias en consideración;
- buscando y listando paquetes y sus descripciones;
- listando, añadiendo, y removiendo plataformas;
- cambiando las opciones de instalación, tales como el tamaño del papel y el origen de la localización (vea la sección 3.3.1).

La funcionalidad de tlmgr’s completamente abarca el programa texconfig. Por lo tanto distribuiremos y mantendremos texconfig para aquellos que están acostumbrados a su interfaz, pero hoy en día recomendamos usar tlmgr.

#### 5.1. tlmgr Modo GUI

tlmgr puede ser arrancado en modo GUI (figura 8) con

> tlmgr -gui
o en Windows mediante la vía del menú de comienzo: Start, Programs, TeX Live ..., TeX Live Manager. Después de pulsar ‘Load’, se muestra una lista de paquetes disponibles, y paquetes instalados. Esto asume, por supuesto, que el origen de la instalación es válida y alcanzable.

Figuras 9 y 10 muestran las pantallas con las opciones generales, y opciones del tamaño del papel.

#### 5.2. Otras interfaces gráficas GUI para tlmgr

Además del modo descrito de tlmgr -gui, hay otros dos programas GUI que hacen uso de tlmgr como el motor de generación. Estos programas son tlshell (escrito en Tcl/Tk) y tlcockpit (escrito en Java). Estos programas están incluidos como paquetes separados.

#### 5.3. Ejemplos de invocaciones en la línea de comando de tlmgr

.

Después de la instalación inicial, puedes actualizar el sistema a las últimas versiones disponibles con:

> tlmgr update -all
Si esto te pone nervioso, primero trata

> tlmgr update -all -dry-run
o (menos verboso):

> tlmgr update -list

Este ejemplo más complejo, añade una colección, para el motor XeTEX, desde un directorio local:

> tlmgr -repository /local/mirror/tlnet install collection-xetex
Genera el siguiente resultado (abreviado):
install: collection-xetex
install: arabxetex
...
install: xetex
install: xetexconfig
install: xetex.i386-linux
running post install action for xetex
install: xetex-def
...
running mktexlsr
mktexlsr: Updating /usr/local/texlive/2018/texmf-dist/ls-R...
...
running fmtutil-sys --missing
...
Transcript written on xelatex.log.
fmtutil: /usr/local/texlive/2018/texmf-var/web2c/xetex/xelatex.fmt installed.

Como puedes ver, tlmgr instala dependencias, y se ocupa de cualquier acción necesaria post-instalación, incluyendo la actualización de la base de datos de los nombres de los archivos, y (re)generando formatos. Arriba, generamos nuevos formatos para XeTEX.

Para describir un paquete (o colección o esquema):

> tlmgr show collection-latexextra
el cual produce resultados de la siguiente manera:
package: collection-latexextra
category: Collection
shortdesc: LaTeX supplementary packages
longdesc: A very large collection of add-on packages for LaTeX.
installed: Yes
revision: 46963
sizes: 657941k

Por último, y más importante, la documentación completa se ve en http://tug.org/texlive/tlmgr.html, o:

> tlmgr -help

### 6. Notas sobre Windows

#### 6.1. Características específicas de Windows

Bajo Windows, el instalador hace varias cosas extra:

Menús y acceso rápido.
  Un nuevo submenú del menú de Start es instalado, el cual contiene entradas para algunas programas del GUI (tlmgr, texdoctk, el PS_View (psv) pre-visualizador de PostScript) y alguna documentación.
Associación de archivos.
  Si está activado, le permitirán a programas como TeXworks, Dviout, y PS_view en convertirse en la norma para sus respectivos tipos de archivos, o tener una entrada de doble clic en el menú de ‘Open with’, para esos tipos de archivos.
Conversor de bitmap a eps.
  Varios formatos de bitmap tienen una entrada bitmap2eps en sus ‘Open with’ del menú accedido mediante el doble clic. Bitmap2eps es un programa simple el cual permite que sam2p o bmeps hagan el trabajo.
Ajuste automático de acceso a la ruta.
  No requiere procedimientos manuales de configuración.
Desinstalador.
  El instalador crea una entrada bajo ‘Add/Remove Programs’ para TEX Live. El tabulador ‘uninstall’ del GUI de TEX Live Manager, se encarga de esto. Para la instalación con un usuario solamente, el instalador también crea un ingreso de desinstalación, que se encuentra bajo el menú de Start o Comienzo.
Write-protect
  Para una instalación con privilegios administrativos, los directorios de TEX Live son write-protected, o protegidos-contra-escritura, siempre y cuando TEX Live haya sido instalado en un disco que no sea removible y formateado bajo el sistema de partición de NTFS.

#### 6.2. Software adicional incluido en Windows

Para finalizar, una instalación de TEX Live necesita paquetes de ayuda, los cuales no son comúnmente encontrados en ordenador de Windows. Por lo tanto TEX Live provee las piezas perdidas:

Perl y Ghostscript
  Por la importancia de Perl y Ghostscript, TEX Live incluye copias ‘escondidas’, de estos programas. Hay programas de TEX Live que necesitan saber donde encontrarlos, pero no engañan su presencia, a través de variables del sistema, o las preferencias del registro. En sí, no son instalaciones a mayor escala, y no deben interferir con instalaciones de Perl o Ghostscript.
PS_View.
  También instalado está PS_View, y el pre-visualizador de PostScript a PDF; vea la imagen 11

  Figura 11: PS_View: ¡altos aumentos disponibles!

dviout.
  También está instalado dviout, un visualizador de DVI. Al comienzo, cuando pre-visualices archivos con dviout, creará fuentes, porque las fuentes del sistema no fueron instaladas. Después de esto, habrás creado la mayoría de las fuentes que uses, y raramente verás la ventana de creación de fuentes nuevamente. Para más información acerca de esto (recomendable) puede encontrarse en la ayuda en línea.
TEXworks.
  TEXworks es un editor de texto, diseñado para TEX, y con un visualizador integrado de PDF.
Herramientas de línea de Comando.
  Un número de puertos en Windows, de programas basados en el intérprete de la línea de comando de Unix, son instalados también con los binarios de TEX Live. Estos incluye gzip, unzip, y las utilidades de del conjunto de xpdf (pdfinfo, pdffonts, …). El visualizador xpdf no está disponible para Windows. Una alternativa es el visualizador Sumatra PDF, disponible de https://sumatrapdfreader.org/
fc-list, fc-cache, …
  Las herramientas de la librería de fontconfig, le permite a XeTEX a manipular fuentes del sistema en Windows. Usted puede usar fc-list para determinar los nombres de las fuentes que pasan con el extendido comando \font. Y si es necesario, ejecute fc-cache primero para actualizar la información de la fuente.

#### 6.3. El Perfil del Usuario es Casa

Las partes homólogas en Windows, del directorio de la casa en Unix, es el directorio %USERPROFILE. Bajo Windows XP, esto es usualmente C:\Documents and Settings\<username>, y bajo Windows Vista y versiones más recientes, es C:\Users\<username>. En el archivo texmf.cnf, y Kpathsea en general, ~ expandirá apropiadamente en ambos Windows y Unix.

#### 6.4. El registro de Windows

Windows almacena casi todos los datos de configuración en su registro. El registro contiene un set de claves organizadas en jerarquía, con claves de la raíz del sistema. Las más importantes para los programas de instalación, son HKEY_CURRENT_USER y HKEY_LOCAL_MACHINE, que abreviando serían la HKCU y HKLM. La parte HKCU del registro, está en el directorio de la casa del usuario (vea la sección 6.3). HKLM está normalmente en un subdirectorio del directorio de Windows.

En algunos casos, la información puede ser obtenida a través de variables del sistema, pero otras informaciones, como la localización de accesos directos, es necesario consultar el registro. También la fijación permanente de variables del sistema, requieren acceso al registro.

#### 6.5. Permisos en Windows

En versiones más recientes de Windows, una distinción es hecha, entre usuarios regulares y administradores, y son estos últimos los que tienen acceso sin permisos, al sistema operativo. Por lo tanto, hemos hecho un esfuerzo, en hacer la instalación de TEX Live permisible, sin privilegios administrativos.

Si el instalador se comienza, con permisos administrativos, hay una opción que permite seleccionar, que esto sea asequible para todos los usuarios. Si esta opción es seleccionada, enlaces de acceso directo, serán creados para todos los usuarios, y el entorno del sistema será modificado. De otra manera, los enlaces de acceso directo, al igual que las entradas del menú, serán creadas para el usuario actual, y el entorno del usuario, es por lo tanto modificado.

Cualquiera que sea el estatus del administrador, la raíz estándar de TEX Live que es propuesta por el instalador, estará siempre bajo %SystemDrive%. El instalador siempre evalúa si la raíz tiene permisos de escritura para el usuario actual.

Puede resultar un problema, si un usuario no es un administrador y TEX ya existe en la ruta de búsqueda. Debido a que la ruta efectiva, consiste de la ruta del sistema, seguida por la ruta del usuario, el nuevo TEX Live nunca tendrá precedencia. Como medio de seguridad, el instalador crea un enlace de acceso directo a la línea de comando, en el cual, el nuevo binario de TEX Live, es antepuesto a la ruta de búsqueda local. El nuevo TEX Live siempre se podrá usar, dentro de tal intérprete de la línea de comando. El enlace de acceso directo a TEXworks, si está instalado, siempre antepondrá TEX Live a la ruta de búsqueda, por lo tanto, debe ser también inmune a este problema de la ruta.

Debe saber, que aunque haya accedido al sistema, como administrador, no obstante necesita, en obtener privilegios administrativos. En realidad, no es necesario en acceder al sistema como administrador. En vez de ello, con un clic a mano derecha, del programa, o en el enlace del programa que se desea ejecutar, usualmente te ofrece una opción ‘Ejecutar como administrador’ o ‘Run as administrator’

#### 6.6. Incrementando la memoria máxima en Windows y Cygwin

Usuarios de Windows y Cygwin (vea la sección 3.1.4 para los métodos específicos de instalación en Cygwin) pueden inesperadamente verse en la situación que han agotado la memoria del sistema, cuando estén ejecutando algunos de los programas que están en TEX Live. Por ejemplo, asy puede agotar la memoria, si usted asigna un array de 25,000 reales, y LuaTEX puede agotar la memoria, si se trata de procesar un documento con muchas fuentes grandes.

Para Cygwin, puede incrementar la cantidad de memoria disponible, a través de las instrucciones de la Guía del Usuario de Cygwin. (http://www.cygwin.com/cygwin-ug-net/setup-maxmem.html).

En Windows, tiene que crear un archivo, digamos moremem.reg, con estas líneas:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\Software\Cygwin]
"heap_chunk_in_mb"=dword:ffffff00

y después ejecute el comando regedit /s moremem.reg como administrador. (Si desea cambiar la memoria solamente para el usuario actual, en vez de sistema global, utilice HKEY_CURRENT_USER.)

### 7. Una guía de usuario para Web2C

Web2C es una colección integrada de programas relacionados con TEX: TEX como tal, MetaPost, BibTeX, etc. Es el corazón de TEX Live. La página en el Internet, para Web2C, junto con el actual manual y más es http://tug.org/web2c.

Un poco de historia: La implementación original fue por Tomas Rokicki, quien en 1987, desarrolló el primer sistema TEX-to-C basado en archivos que se cambiaron bajo Unix, los cuales fueron primariamente el trabajo original de Howard Trickey y Pavel Curtis. Tim Morgan se convirtió en el mantenedor del sistema, y durante este período, el nombre como tal cambió a Web-to-C. En 1990, Karl Berry se hizo responsable del trabajo, ayudado por docenas de contribuidores adicionales, y en 1997 le dio el batón de relevo a Olaf Weber, quien se lo devolvió a Karl, en el 2006.

El sistema Web2C opera en Unix, versiones de 32-bits en Windows, Mac OS X, y otros sistemas operativos. Utiliza el código original de Knuth, para TEX y otros programas básicos escritos en el sistema literal WEB y los traduce, a código C. Los principales programas de TEX que operan así, son los siguientes:

bibtex, biber

  Respaldo bibliográfico.

dvicopy

  Expande las referencias virtuales de fuentes, a archivos DVI.

dvitomp

  DVI a MPX (MetaPost pictures).

dvitype

  DVI a texto leíble por humanos.

gftodvi

  Conversor de fuentes genéricas.

gftopk

  Conversor de fuentes .pk.

gftype

  Archivo de .gf a texto leíble por humanos.

mf

  Creando familias de fuentes.

mft

  Imprimiendo código de Metafont.

mpost

  Creación de diagramas técnicos.

patgen

  Creación de patrones de separaciones silábicas.

pktogf

  Conversor de fuente de formato .pk a fuentes genéricas

pktype

  Conversor de fuente de formato .pk a texto leíble por humanos.

pltotf

  Lista de texto regular a TFM.

pooltype

  Archivos pool WEB de visualización.

tangle

  Programación WEB a Pascal.

tex

  Tipografía.

tftopl

  Conversor de TFM a lista de propiedad de texto regular.

vftovp

  Conversor de fuente virtual a lista de propiedad virtual.

vptovf

  Conversor de lista de propiedad virtual a fuente virtual.

weave

  WEB

Las funciones precisas y sintaxis de estos programas están descritas en la documentación de los paquetes individuales y en el propio Web2C. Sin embargo, el conocer los principios básicos que gobiernan toda la familia de programas, le ayudará con la instalación de Web2C.

Todos los programas honoran estas opciones estándar de GNU:

--help

  imprimir sumario de uso básico.

--verbose

  imprimir reporte detallado del progreso.

--version

  imprimir información de la versión, y salida.

Para localizar los archivos, los programa de Web2C usan la librería de ruta de búsqueda Kpathsea (http://tug.org/kpathsea). Esta librería utiliza una combinación de variables de entorno del sistema, y unos archivos de configuración para optimizar la búsqueda de la inmensa colección de archivos de TEX. Web2C puede escanear varios árboles de directorios simultáneamente, lo cual tiene uso en la mantención de la distribución estándar de TEX y extensiones personales y locales en los árboles. Para agilizar las búsquedas de archivos, la raíz de cada árbol tiene un archivo ls-R, que contiene la entrada, que muestra el nombre y la ruta, para todos los archivos bajo la raíz.

#### 7.1. Ruta de acceso Kpathsea

Vamos a describir el mecanismo de la ruta de búsqueda genérica de la librería de Kpathsea.

Le llamamos una ruta de búsqueda a un guión- o semi guión-de una lista separada de elementos de ruta, que son básicamente nombres de directorios. Una ruta de búsqueda puede provenir (de una combinación) de muchos orígenes. Para encontrar un archivo ‘mi-archivo’ alrededor de una ruta ‘.:/dir’, Kpathsea revisa cada uno de los elementos de la ruta en orden: primero ./mi-archivo, luego /dir/mi-archivo, que indica el primer archivo (o archivos) que correspondan con el mismo.

Para poder adaptar óptimamente las convenciones de todos los sistemas operativos, en sistemas no-Unix Kpathsea puede usar separadores de los nombres de archivos, que difieren de dos puntos (‘:’) y barra oblicua (‘/’).

Para revisar un elemento particular de ruta p, Kpathsea primero revisa si una base de datos prefabricada (vea “Base de datos de nombres de archivos” Filename database) en la página 7.2 aplica a p, i.e., si la base de datos se encuentra en un directorio que es un prefijo de p. Si esto es así, la especificación de la ruta tiene que corresponder, con los contenidos de la base de datos.

Si la base de datos no existe, o no aplica a este elemento de ruta, o no corresponde con ningún archivo, el sistema de archivos es escaneado (si esto no ha sido prohibido por alguna especificación que comience con ‘!!’ y si el archivo que está siendo buscado, ya existe). Kpathsea construye la lista de directorios que corresponde con este elemento de la ruta, y luego revisa en cada uno de estos elementos, por el archivo que se está buscando.

El “archivo tiene que existir” es una condición que viene a relucir con los archivos ‘.vf’ y los archivos de ingreso que son leídos por el comando \openin de TEX. Estos archivos quizás no existan (e.g., cmr10.vf), y por lo lo tanto, sería un error, en escanear el disco para encontrarlos. Por tal motivo, si usted comete el error en no actualizar ls-R cuando instala un archivo nuevo ‘.vf’, este archivo nunca será encontrado.

Aunque el elemento más simple y más común es el nombre de un directorio, Kpathsea respalda características adicionales, en las rutas de búsquedas: valores superpuestos estándar, nombres de variables del sistema, valores de configuración del archivo, directorios de usuarios, y búsqueda de subdirectorios recursivos. Por lo tanto, decimos que Kpathsea expande un elemento de la ruta, que quiere decir que transforma todas las especificaciones, en nombre o nombres básicos de directorios. Esto es descrito en las siguientes secciones en el mismo orden que esto se lleva a cabo.

Note que si el nombre de archivo que se está buscando, es un relativo absoluto, o implícitamente, i.e., comienza con ‘/’ o ‘./’ o ‘../’, Kpathsea simplemente revisa si este archivo existe.

##### 7.1.1. Orígenes de la ruta

Una ruta de acceso, puede provenir de muchos orígenes. Kpathsea las utiliza, en el siguiente orden:

1. Una variable especificada por el usuario, por ejemplo, TEXINPUTS. Variables de entorno del sistema con un período y un nombre de programa impuesto, sobreponen; e.g., si ‘latex’ es el nombre del programa que está siendo ejecutado, entonces TEXINPUTS.latex sobrepondrá TEXINPUTS.
2. Un archivo de configuración de un programa-específico, por ejemplo, una línea ‘S /a:/b’ en config.ps de dvips.
3. Un archivo de configuración Kpathsea texmf.cnf, conteniendo una línea ‘TEXINPUTS=/c:/d’ (vea más abajo).
4. El tiempo de compilación estándar.

Puede ver cada uno de estos valores para alguna ruta de búsqueda, usando opciones de depuración (vea “Acciones de depuración” en la página 68).

##### 7.1.2. Archivos Config

Kpathsea lee archivos de configuración ejecutables nombrado texmf.cnf para la ruta de búsqueda y otras definiciones. La ruta de búsqueda que se utiliza para buscar estos archivos, es nombrada TEXMFCNF, pero no recomendamos especificar esta (o cualquier otra) variable del sistema.

En vez de esto, una instalación normal resulta en un archivo .../2018/texmf.cnf. Si tienes que hacer modificaciones o cambios a las configuraciones estándares (algo normalmente innecesario), este es el lugar para ponerlos. El principal archivo de configuración está en el archivo .../2018/texmf-dist/web2c/texmf.cnf. Usted no debe editar este último archivo, debido a que los cambios serán perdidos, tan pronto como la versión de la distribución sea actualizada.

Todos los archivos texmf.cnf en la ruta de búsqueda serán leídos, y las definiciones en archivos más recientes, sobrepondrán aquellas definiciones de los primeros archivos. Por ejemplo, con una ruta de búsqueda de .:$TEXMF, los valores de ./texmf.cnf sobrepondrán aquellos de $TEXMF/texmf.cnf.

- Comentarios comienzan con % y continúan hasta el final de la línea.
- Líneas en blanco, son ignoradas.
- Un \ en el final de la línea, actúa como un carácter de continuación, i.e., la próxima línea es adjunta. Espacio en blanco al comienzo de líneas continuativas no es ignorado.
- Cada línea restante, tiene la forma:

  variable[.progname] [=] valor
  donde el ‘=’ y espacio en blanco alrededor son opcionales.
- El nombre de la variable puede contener cualquier carácter otro que no sea un espacio en blanco, ‘=’, o ‘.’, pero lo más seguro es quedarse con ‘A-Za-z_’.
- Si ‘.progname’ está presente, la definición solamente aplica si el programa que está ejecutándose es nombrado progname o progname.exe. Esto permite, por ejemplo, diferentes sabores de TEX que tengan diferentes rutas de búsquedas.
- valor puede contener cualquier carácter excepto % y ‘@’. La función $var.prog no está disponible a mano derecha; en vez de ello, tiene que usar una variable adicional. Una ‘;’ en la variable value es traducida a ‘:’ si el sistema operativo es Unix; esto es provechoso y ventajoso, el tener un solo archivo texmf.cnf para Unix, MS-DOS y sistemas Windows.
- Todas las definiciones son leídas antes de que cualquier cosa se expanda, de esta forma las variables pueden ser referidas antes que sean definidas.

Un fragmento de un archivo de configuración que ilustra la mayoría de estos puntos es mostrado abajo:

TEXMF = {$TEXMFLOCAL,!!$TEXMFMAIN}
TEXINPUTS.latex = .;$TEXMF/tex/{latex,generic;}//
TEXINPUTS.fontinst = .;$TEXMF/tex//;$TEXMF/fonts/afm//
% e-TeX related files
TEXINPUTS.elatex = .;$TEXMF/{etex,tex}/{latex,generic;}//
TEXINPUTS.etex = .;$TEXMF/{etex,tex}/{eplain,plain,generic;}//

##### 7.1.3. Expansión de la ruta

Kpathsea reconoce ciertos caracteres especiales en rutas de búsqueda, similar a aquellos que están disponibles en las shells (intérprete de línea de comando) de Unix. Como ejemplo general, la ruta compleja, ~$USER/{foo,bar}//baz, expande a todos los subdirectorios bajo directorios foo y bar en el directorio de la casa de $USER que contiene un directorio o archivo baz. Estas expansiones son explicadas en la sección más adelante.

##### 7.1.4. Expansión estándar

Si la ruta de búsqueda de más alta prioridad (vea “Orígenes de la ruta” Path Sources) en la página 7.1.1 contiene un dos puntos adicional (i.e., líderes, sobrantes, o dobles), Kpathsea inserta en ese punto, la próxima ruta de búsqueda de más alta prioridad que es definida. Si esa ruta insertada, tiene un extra punto, lo mismo pasa con la próxima ruta de más alta prioridad. Por ejemplo, dada la variable del sistema:

> setenv TEXINPUTS /home/karl:
y un valor TEXINPUTS del archivo texmf.cnf de

.:$TEXMF/tex
entonces el valor final usado para la búsqueda será:

/home/karl:.:$TEXMF//tex

Debido a que es innecesario insertar el valor estándar en más de un lugar, Kpathsea cambia solamente un extra ‘:’ y deja cualquier otro en su lugar. Primero revisa un líder ‘:’, y luego un sobrante ‘:’, y más tarde un doble ‘:’.

##### 7.1.5. Expansión de corchetes

Una función que es útil, es la expansión de los corchetes, lo cual quiere decir que, por ejemplo, v{a,b}w se expande a vaw:vbw. Nidos son permitidos. Esto tiene su uso, para implementar múltiples jerarquías de TEX, asignando una lista de corchetes a $TEXMF. Por ejemplo, en el archivo texmf.cnf, una definición como esta (simplificada para este ejemplo) es hecha:

TEXMF = {$TEXMFVAR,$TEXMFHOME,
!!$TEXMFLOCAL,!!$TEXMFDIST}

Después podemos usar esto para definir, por ejemplo, la ruta de ingreso de TEX.

TEXINPUTS = .;$TEXMF/tex//

lo cual quiere decir, que después de buscar en el directorio actual, los árboles $TEXMFVAR/tex, $TEXMFHOME/tex, $TEXMFLOCAL/tex, y $TEXMFDIST/tex, solamente serán buscados (los últimos dos, a través de los archivos de la base de datos ls-R). Es una manera conveniente para operar con dos estructuras paralelas de TEX, una “congelada” (en un CD, por ejemplo), y la otra que está constantemente actualizada con las nuevas versiones tan pronto como estas estén disponibles. Mediante el uso de la variable $TEXMF en todas las definiciones, uno se asegura que los árboles recientemente actualizados, sean los primeros, en encontrarse.

##### 7.1.6. Expansión del subdirectorio

Dos o más barras oblicuas consecutivas, en un elemento de ruta después de un directorio d, es reemplazado por todos los subdirectorios de d: primero aquellos subdirectorios bajo d, después los sub-subdirectorios bajo ellos, y así sucesivamente. En cada nivel, el orden por el cual los directorios son buscados, no es especificado.

Si se especifica cualquier componente de un nombre de un archivo después de ‘//’, solamente los subdirectorios con los componentes que correspondan, son incluídos. Por ejemplo, ‘/a//b’ expande a los directorios /a/1/b, /a2b, a/1/1/b, y así continúa, pero no a directorios como /a/b/c, o /a/1.

Construcciones múltiples ‘//’ en una ruta, son posibles, pero ‘//’ en el comienzo de una ruta, es ignorado.

##### 7.1.7. Lista de caracteres especiales y su significado: un sumario

.

La siguiente lista es un sumario de los caracteres especiales de los archivos de configuración de Kpathsea.

:

  Separador en la especificación de la ruta, en el principio o el final de la ruta, substituye la expansión de la ruta estándar.

;

  Separador en sistemas non-Unix (actúa como :).

$

  Expansión de variable.

~

  Representa el directorio de casa del usuario.

{...}

  Expansión de corchetes.

//

  Expansión de subdirectorio (puede ocurrir en cualquier lugar de la ruta, excepto en el principio).

%

  Comienzo de comentario.

\

  Carácter de continuación (permite entradas de múltiples líneas).

!!

  Búsqueda solamente en la base de datos para localizar el archivo, no busca en el disco.

#### 7.2. Base de datos de nombres de archivos

Kpathsea usa todos los medios para minimizar el acceso al disco para las búsquedas. No obstante a ello, buscar un posible directorio para un archivo dado, entre tantas instalaciones con suficientes directorios, puede tomar un tiempo excesivo (esto es especialmente verdad si muchos directorios de fuentes tienen que ser transpuestos.)

Un archivo aliases de una segunda base de datos, permite dar nombres adicionales a los archivos que están listados en ls-R. Esto puede ser útil, para confirmar las convenciones de nombre de archivos DOS 8.3 en aquellos archivos originales.

##### 7.2.1. La base de datos de nombres de archivos

Como se explicó anteriormente, el nombre del principal nombre de archivo de la base de datos tiene que ser ls-R. Puede poner uno en la raíz de cada jerarquía de su instalación de TEX para que así sea buscada ($TEXMF por estándar. Kpathsea busca archivos ls-R alrededor de la ruta TEXMFDBS).

La manera recomendable para crear y mantener ‘ls-R’ es mediante la ejecución de mktexlsr, que está incluído con la distribución. Es invocado por varios scripts ‘mktex’. En principio, este script solo ejecuta el comando

cd /tu/raíz/texmf && /ls -1LAR ./ >ls-R
asumiendo que tu sistema de ls produce el formato correcto en el resultado final (GNU ls está bien). Para asegurarnos que la base de datos siempre esté actualizada, es más fácil en reedificar esta base de datos, regularmente, a través de cron, de esa manera es automáticamente actualizada cuando los archivos de instalación cambien, tal como ocurre después de instalar o actualizar un paquete de LATEX.

Si un archivo no puede ser encontrado en la base de datos, Kpathsea por estándar o por norma, continúa la búsqueda en el disco. Sin embargo, si un elemento de la búsqueda comienza con ‘!!’, solamente la búsqueda en la base de datos será para ese elemento como tal, y nunca en el disco.

##### 7.2.2. kpsewhich: ruta de búsqueda independiente

El programa kpsewhich ejercita la ruta de búsqueda, independiente de cualquier aplicación. Esto puede ser útil, como si fuese un programa find para localizar archivos en las jerarquías de TEX (esto se utiliza bastante con los scripts distribuidos de ‘mktex’).

> kpsewhich option… filename…
Las opciones especificadas en option comienzan con ‘-’ o ‘--’, y muchas abreviaciones que no son ambiguas, son aceptables.

Kpathsea busca cada argumento sin-opción, en la línea de comando, como un nombre de archivo, y enumera los resultados con el primer archivo que haya sido encontrado. No hay opción para que produzca la lista de todos los archivos que se hayan encontrados, a través de un nombre en particular (usted puede ejecutar la utilidad de Unix ‘find’ para obtener eso).

Las opciones más frecuentes son descritas a continuación:

--dpi=num

  Ajusta la resolución a num; esto solamente afecta ‘gf’ y búsquedas de ‘pk’. ‘-D’ es un sinónimo, para compatibilidad con dvips. Estándar es 600.

--format=name

  Ajusta el formato para buscar, a name. Por estándar, el formato es averiguado por el nombre del archivo. Para aquellos formatos que no tienen un sufijo que no sea ambiguo, tales como los archivos de respaldo MetaPost y los archivos de configuración de dvips, usted tiene que especificar el nombre, tal y como Kpathsea lo reconoce. Ejemplo de esto es tex o enc archivos. Ejecute en la línea de comando kpsewhich --help para una lista con opciones.

--mode=string

  Ajusta el modo de nombre para string (cadena de caracteres); esto solamente afecta las búsquedas de ‘gf’ y ‘pk’. Cuando no es estándar: cualquier modo será encontrado.

--must-exist

  Haz todo lo posible para encontrar los archivos, incluyendo comenzar la búsqueda en el disco. Por estándar, solamente la base de datos de ls-R es revisada, en el interés de eficiencia.

--path=string

  Búsqueda a través de la ruta string (separado por dos puntos, como es usual), en vez de adivinar la ruta de búsqueda desde el nombre del archivo. ‘//’ y todas las expansiones usuales, son respaldadas. Las opciones ‘--path’ y ‘--format’ son exclusivas.

--progname=name

  Ajusta el nombre del programa a name. Esto puede afectar las rutas de búsquedas a través de .progname. El estándar es kpsewhich.

--show-path=name

  muestra la ruta usada para las búsquedas de archivo de tipo name. Tanto una extensión de nombre de archivo (.pk, .vf, etc.) o un nombre pueden ser usados, al igual que la opción ‘--format’.

--debug=num

  selecciona las opciones de depuración a num.

##### 7.2.3. Ejemplos de uso

Vamos ahora a ver a Kpathsea en acción. Aquí hay una búsqueda transparente:

> kspewhich article.cls
/usr/local/texmf-dist/tex/latex/base/article.cls
Estamos buscando el archivo article.cls. Debido a que el sufijo ‘.cls’ no es ambiguo, no necesitamos especificar que necesitamos encontrar un archivo de tipo tex (Los directorios de TEX con los archivos originales). Lo encontramos en el subdirectorio tex/latex/base, justo debajo de ‘texmf-dist’ en el directorio de TEX Live. Similarmente, todos los ficheros que continúan posteriormente, son encontrados sin problemas gracias al sufijo no ambiguo.

> kpsewhich array.sty
/usr/local/texmf-dist/tex/latex/tools/array.sty
> kpsewhich latin1.def
/usr/local/texmf-dist/tex/latex/base/latin1.def
> kpsewhich size10.clo
/usr/local/texmf-dist/tex/latex/base/size10.clo
> kpsewhich small2e.tex
/usr/local/texmf-dist/tex/latex/base/small2e.tex
> kpsewhich tugboat.bib
/usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib

Hablando de esto, el último es una base de datos de bibliografía BibTeX para artículos en TUGboat.

> kpsewhich cmr10.pk
Archivos bitmap del glifo de la fuente .pk son usados por los programas de visualización, como dvips y xdvi. Nada es generado en este caso, debido a que no hay archivos de Computer Modern pre-generados ‘.pk’ en TEX Live — las variantes Type-1 son usadas por estándar.

> kspewhich wsuipa10.pk
/usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk
Para estas fuentes (un alfabeto fonético de la Universidad de Washington) tuvimos que generar archivos ‘.pk’, y debido a que el modo estándar Metafont de nuestra instalación es ljfour con una base de resolución de 600dpi (puntos por pulgadas), este valor es ingresado.

> kpsewhich -dpi=300 wsuipa10.pk
En este caso, cuando se especifica que estamos interesados en una resolución de 300dpi (-dpi=300) vemos que tal fuente, no está disponible en este sistema. Un programa como dvips o xdvi edificaría sin problemas, los archivos requeridos .pk, usando el script mktexpk.

El próximo punto a tocar, son los archivos de configuración y cabecera de dvips. Primero miramos a uno de los archivos comúnmente usados, el prólogo general tex.pro para respaldo de ayuda con TEX, antes de hablar sobre la configuración genérica del archivo (config.ps) y el mapa psfonts.map de la fuente PostScript — que desde el 2004, los archivos de mapas y codificaciones han tenido sus rutas de búsquedas y nuevas localizaciones, en los árboles de texmf. Debido a que el sufijo ‘.ps’ es ambiguo, tenemos que especificar explícitamente cuáles de estos tipos de fuentes, tenemos que considerar de la configuración (dvips config) para el archivo config.ps.

> kpsewhich tex.pro
/usr/local/texmf/dvips/base/tex.pro
> kpsewhich --format="dvips config" config.ps
/usr/local/texmf/dvips/config/config.ps
> kpsewhich psfonts.map
/usr/local/texmf/fonts/map/dvips/updmap/psfonts.map

Ahora le damos un vistazo más cerca, a los archivos de respaldo PostScript para URW Times. El prefijo para estos en el esquema estándar de fuentes es ‘utm’. El primer archivo que tenemos es el archivo de configuración, el cual contiene el nombre de los archivos de mapas de las fuentes.

> kpsewhich --format="dvips config" config.utm
/usr/local/texmf-dist/dvips/psnfss/config.utm
Los contenidos de ese archivo son

p +utm.map
el cual apunta al archivo utm.map, que queremos localizar a continuación.

> kpsewhich utm.map
/usr/local/texmf-dist/fonts/map/dvips/times/utm.map
Este archivo con el mapa de la fuente, define los nombres de archivos, de Type-1 de la colección de URW. Sus contenidos son parecidos a estos (solamente mostramos parte de las líneas):

utmb8r NimbusRomNo9L-Medi ... <utmb8a.pfb
utmbi8r NimbusRomNo9L-MediItal... <utmbi8a.pfb
utmr8r NimbusRomNo9L-Regu ... <utmr8a.pfb
utmri8r NimbusRomNo9L-ReguItal... <utmri8a.pfb
utmbo8r NimbusRomNo9L-Medi ... <utmb8a.pfb
utmro8r NimbusRomNo9L-Regu ... <utmr8a.pfb
Tomemos por ejemplo, la instancia de la fuente Times Roman utmr8a.pfb y encontremos su posición en el árbol del directorio texmf con una búsqueda para archivos de fuente de Type-1:

> kpsewhich utmr8A.pfb
/usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb

Debe ser evidente, mediante estos ejemplos, como se puede localizar fácilmente las localizaciones de algún archivo. Esto es especialmente importante, si sospechas que la versión equivocada de algún archivo, es identificada primero, debido a que kpsewhich mostrará el primer archivo con que se tropieza.

##### 7.2.4. Acciones de depuración o “debugging”

Algunas veces es necesario, investigar como un programa resuelve las referencias de un archivo. Para hacer esto más práctico, Kpathsea ofrece varios niveles de la salida de depuración, resultados de la depuración, o debugging:

1

  Llamadas inmediatas (búsquedas en el disco) Cuando se está operando con una base de datos ls-R actualizada, esto casi siempre, no devuelve un resultado en la salida.

2

  Referencias a las tablas hash (tales como ls-R base de datos, archivos de los mapas, y archivos de configuración).

4

  Operaciones de abrir y cerrar archivos.

8

  Información general de la ruta, para los tipos de archivos que son buscados por Kpathsea. Esto se ha mostrado útil, para encontrar el origen donde una ruta en particular de algún archivo, haya sido definida.

16

  Lista de directorio, para cada elemento en la ruta (solamente búsquedas relevantes en el disco).

32

  Búsqueda de archivos.

64

  Valores de las variables.

Un valor de -1 fijará todas las opciones anteriores; en práctica, esto es usualmente lo más conveniente.

De igual manera, con el programa de dvips, se puede especificar una combinación de interruptores de depuración (o debugging switches), uno puede averiguar con detalles, la localización donde los archivos están siendo identificados. Alternativamente, cuando un archivo no es encontrado, el rastro de esta depuración, (trace debug) muestra los directorios, donde el programa busca un archivo determinado. De esta manera uno puede tener una idea que le indique, donde está el problema.

Por lo general, debido a que muchos programas contactan la librería interna de Kpathsea, uno puede seleccionar una opción de depuración (debug), usando la variable del sistema KPATHSEA_DEBUG, y configurándola así a (una combinación) de valores, como fue descrito anteriormente.

(Nota para los usuarios de Windows: no es tan fácil, redirigir todos los mensajes a un archivo dentro de este sistema. Por razones de diagnósticos, uno puede temporalmente ajustar SET KPATHSEA_DEBUG_OUTPUT=err.log).

Consideremos por un momento, este ejemplo, un pequeño archivo original de LATEX, el archivo hello-world.tex, el cual contiene el siguiente ingreso.

\documentclass{article}
\begin{document}
Hello World!
\end{document}

Este pequeño archivo, solamente utiliza la fuente cmr10. Veamos entonces como dvips prepara el archivo de PostScript (queremos hacer uso de la versión Type-1 de las fuentes de Computer Modern, por tal motivo la opción -Pcms).

> dvips -d4100 hello-world -Pcms -o
En este caso hemos combinado, la clase 4 de depuración dvips con el elemento de expansión de Kpathsea (vea el manual de referencia de dvips). El resultado (reordenado un poco) aparece en la figura 12.

debug:start search(file=texmf.cnf, must_exist=1, find_all=1,
path=.:/usr/local/bin/texlive:/usr/local/bin:
/usr/local/bin/texmf/web2c:/usr/local:
/usr/local/texmf/web2c:/.:/./teTeX/TeX/texmf/web2c:).
kdebug:start search(file=ls-R, must_exist=1, find_all=1,
path=~/tex:/usr/local/texmf).
kdebug:search(ls-R) =>/usr/local/texmf/ls-R
kdebug:start search(file=aliases, must_exist=1, find_all=1,
path=~/tex:/usr/local/texmf).
kdebug:search(aliases) => /usr/local/texmf/aliases
kdebug:start search(file=config.ps, must_exist=0, find_all=0,
path=.:~/tex:!!/usr/local/texmf/dvips//).
kdebug:search(config.ps) => /usr/local/texmf/dvips/config/config.ps
kdebug:start search(file=/root/.dvipsrc, must_exist=0, find_all=0,
path=.:~/tex:!!/usr/local/texmf/dvips//).
search(file=/home/goossens/.dvipsrc, must_exist=1, find_all=0,
path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search($HOME/.dvipsrc) =>
kdebug:start search(file=config.cms, must_exist=0, find_all=0,
path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search(config.cms)
=>/usr/local/texmf/dvips/cms/config.cms
Figura 12: Encontrando archivos de configuración
kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0,
path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro
Figura 13: Encontrando el archivo prolog
kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0,
path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
/var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0,
...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0,
path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]
Figura 14: Encontrando el archivo de fuente

dvips comienza localizando los archivos de trabajo. Primero, texmf.cnf es encontrado, el cual provee las definiciones de las rutas de búsqueda para los otros archivos, y luego la base de datos de archivos ls-R (para optimizar la búsqueda de archivo) y el archivo aliases, el cual hace posible la declaración de varios nombres (e.g., una breve versión similar a DOS 8.3 y una versión más natural larga) para el mismo archivo.

Después de esto, el dvips continúa para encontrar la configuración genérica de config.ps antes de seguir buscando el archivo de ajustes de personalización .dvipsrc (el cual, en este caso no es encontrado). Finalmente, dvips localiza el archivo de configuración config.cms para las fuentes PostScript de Computer Modern (esto fue iniciado con la opción de -Pcms en dvips). Este archivo contiene la lista de los archivos de mapas, el cual define la relación entre los nombres de las fuentes de TEX, PostScript, y el sistema de archivos.

> más /usr/local/texmf/dvips/cms/config.cms
p +ams.map
p +cms.map
p +cmbkm.map
p +amsbkm.map
dvips de esa manera continúa para encontrar todos estos archivos, en adición al archivo de map psfonts.map, el cual siempre es cargado (contiene declaraciones para fuentes de PostScript que son comúnmente usadas; vea la última parte de Sección 7.2.3 para más detalles acerca de la manipulación de archivos de mapas PostScript).

Ya a este punto, dvips se auto-identifica al usuario:

This is dvips(k) 5.92b Copyright 2002 Radical Eye
Software (www.radicaleye.com)
Luego comienza a buscar el archivo prolog texc.pro:

kdebug:start search(file=texc.pro, must_exist=0, find_all=0,
path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro

Después de encontrar este archivo, dvips nos da los resultados con la fecha y la hora, y nos informa que generará el archivo hello-world.ps. Consiguientemente, necesita el archivo de fuente cmr10, y que este último es declarado como “residente”(bitmaps no son necesitadas):

TeX output 1998.02.26:1204’ -> hello-world.ps
Defining font () cmr10 at 10.0pt
Font cmr10 <CMR10> is resident.
Ahora la búsqueda es por el archivo cmr10.tfm, el cual es encontrado. Después de esto, unos cuantos más archivos prolog (no se muestran) son ingresados como referencias, y finalmente la instancia de Typo-1 cmr10.pfb de la fuente, es localizada e incluida en el archivo de resultados (vea la última línea).

kdebug:start search(file=cmr10.tfm, must_exist=1, find_all=0,
path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
/var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must_exist=0, find_all=0),
...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must_exist=0, find_all=0,
path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]

kdebug:start search(file=cmr10.tfm, must_exist=1, find_all=0,
path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
/var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must_exist=0, find_all=0,
...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must_exist=0, find_all=0,
path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]

##### 7.2.5. Opciones de ejecución

Una función útil de Web2C es la posibilidad de controlar un número de parámetros de memoria (en particular, tamaños de matrices) a través de la ejecución del archivo texmf.cnf que es leído por Kpathsea. Las configuraciones de la memoria pueden ser encontradas en Parte-3 de ese archivo en la distribución de TEX Live. Los más importantes son:

main_memory

  Total de palabras de memoria disponible, para TEX, Metafont y MetaPost. Usted puede hacer un nuevo archivo de formato, para todas las diferentes configuraciones. Por ejemplo, usted pudiese generar una “inmensa” versión de TEX, y nombrar el archivo formateado inmensotex.fmt. Utilizando la manera estándar de especificar el nombre del programa que es usado por Kpathsea, el valor particular de la variable main_memory se leerá de texmf.cnf.

extra_mem_bot

  Espacio extra para estructuras “grandes” de TEX: cajas, pegamentos, puntos de interrupción, etc. Especialmente útil si se utiliza PI CTEX.

extra_mem_bot

  Número de palabras para la información de fuente disponible para TEX. Esto es más o menos el tamaño total de todos los archivos TFM que fueron leídos.

hash_extra

  Espacio adicional para la tabla hash, de la secuencia de control de nombres. Solamente un aproximado de ≈10,000 secuencias de control pueden ser almacenadas en la tabla hash; si usted tiene por ejemplo, un libro con numerosas referencias, esto quizás no será suficiente. El valor estándar de hash_extra es 50000.

Por supuesto, esta función no es un substituto con las matrices realmente dinámicas y la asignación de memoria, pero debido a que es extremadamente difícil implementar en el archivo original TEX, estos parámetros de ejecución proveen una práctica comprometedora, que permite cierta flexibilidad.

### 8. Agradecimientos

TEX Live es un esfuerzo unido, por virtualmente todos los grupos de usuarios de TEX. Esta edición de TEX Live fue supervisada por Karl Berry. Los otros principales contribuidores, pasados y presentes, aparecen en la siguiente lista:

- Los grupos de usuarios en inglés, alemán, holandés, y polaco de TEX (TUG, DANTE e.V., NTG, y GUST, respectivamente), que proveyeron la infraestructura técnica y administrativa. Por favor, ¡forme parte de un grupo TEX cerca de usted! (Vea http://tug.org/usergroups.html.)
- El equipo de CTAN, notablemente Robin Fairbairns and Rainer Schöpf, que distribuye las imágenes de TEX Live y proveen la infraestructura común para actualizaciones de paquetes, en los cuales TEX Live depende.
- Nelson Beebe, por hacer muchas plataformas disponibles a constructores de TEX Live y su propia comprehensiva revisión.
- John Bowman, por hacer muchos cambios a su avanzado programa gráfico Asymptote, que trabaje con TEX Live.
- Peter Breitenlohner y el equipo e-TEX por la fundación estable del futuro de TEX, y Peter específicamente por la ayuda estelar por la utilización de GNU autotools a través de TEX Live.
- Jin-Hwan Cho y todo el equipo de DVIPDFMx, por su excelentes drivers y respuestas con problemas de configuración.
- Thomas Esser, quien sin su contribución, el maravilloso paquete teTEX para TEX Live nunca hubiese existido.
- Michel Goosens, por la co-autoría de la documentación original.
- Eitan Gurari, cuyo TEX4ht es usado para crear la version de esta documentación en HTML, y quien trabajó esforzadamente todos los años para mejorar este código. Eitan falleció en junio del 2009, y dedicamos esta documentación a su memoria.
- Hans Hagen, por mucha revisión y por hacer su formato de ConTEXt (http://pragma-ade.com) que funcione dentro del marco de funcionalidad de TEX Live.
- Hàn Thế Thành, Martin Schröder, y el equipo de pdfTEX (http://pdftex.org) por la continuación de adiciones a las habilidades de TEX.
- Hartmut Henkel, por significantes contribuciones al desarrollo de pdfTEX, LuaTEX, y mucho más.
- Taco Hoekwater, por renovados esfuerzos de desarrollo en MetaPost y el mismo (Lua)TEX (http://luatex.org), incorporando ConTEXt en TEX Live, y dándole a Kpathsea una característica de multi-procesos, y mucho más.
- Paweł Jackowski, por el instalador de Windows tlpm, y Tomasz Łuczak, por tlpmgui, que ha sido usado en versiones anteriores.
- Akira Kakuto, por proveer los binarios de Windows de su distribución W32TEX para TEX en japonés (http://w32tex.org), y muchas otras contribuciones de desarrollo.
- Jonathan Kew, por desarollar el impresionante motor de XeTEX y por tomar su tiempo, en resolver el problema de integrarlo en TEX Live, al igual que la versión inicial del instalador de MacTEX, y también por nuestro recomendable programa TEXworks.
- Dick Koch, por la mantención de MacTEX (http://tug.org/mactex) en estrecha colaboración con TEX Live, y por su gran entusiasmo en hacerlo.
- Reinhard Kotucha, por sus grandes contribuciones a la infraestructura y el instalador de TEX Live 2008, al igual que por su esfuerzo con la investigación de Windows, el script de getnonfreefonts, y mucho más.
- Siep Kroonenberg, también por sus enormes contribuciones a la infraestructura e instalador de TEX Live 2008, especialmente en Windows, y por su trabajo en actualizar este manual, donde describe muchas de estas funciones.
- Mojca Miklavec, por muchísima ayuda con ConTEXt, edificando muchos sets de binarios y mucho más.
- Heiko Oberdiek, por su paquete epstopdf y muchos otros, también por comprimir los archivos de datos del extenso pst-geo y de esa manera poder incluirlo, pero por encima de todo, por su notable trabajo con hyperref.
- Petr Olšak, quien coordinó y revisó cuidadosamente todo el material eslovaco y checoslovaco.
- Toshio Oshima, por su pre-visualizador dviout para Windows.
- Manuel Pégourié-Gonnard, por ayudar con actualizaciones de paquetes, mejorías en la documentación, y por su participación con el desarrollo de texdoc.
- Fabrice Popineau, por su respaldo original de Windows en TEX Live y trabajo con la documentación francesa.
- Norbert Preining, el principal arquitecto de la actual infraestructura e instalador de TEX Live, y también por la coordinación de la versión de TEX Live para Debian (junto con Frank Küster), y trabajando tanto durante todo el proceso.
- Sebastian Rahtz, por originalmente crear TEX Live y mantenerlo por varios años.
- Phil Taylor, por ajustar las descargas BitTorrent.
- Luigi Scarso, por el continuo desarrollo de MetaPost, LuaTeX, y mucho más.
- Tomasz Trzeciak, por su amplia ayuda con Windows.
- Vladimir Volovich, por su substancial ayuda con la migración y otros problemas de mantenimiento, y especialmente por hacer más asequible el programa xindy.
- Staszek Wawrykiewicz, el principal evaluador para todo TEX Live, y coordinador de las mayores contribuciones polacas: fuentes, instalación en Windows, y mucho más. Staszek falleció en Febrero del 2018, y dedicamos el continuo trabajo a su memoria.
- Olaf Weber, por su paciente mantenimiento de Web2C.
- Gerben Wierda, por crear y mantener el original apoyo técnico de Mac OS X.
- Graham Williams, el originador del Catálogo de TEX.

Edificadores de los binarios: Marc Baudoin (amd64-netbsd, i386-netbsd), Ken Brown (i386-cygwin, x86_64-cygwin), Simon Dales (armhf-linux), Johannes Helschier (aarch64-linux), Akira Kakuto (win32), Dick Koch (x86_64-darwin), Nikola Lečić (amd64-freebsd, i386-freebsd), Henri Menke (x86_64-linuxmusl), Mojca Miklavec (i386-linux, x86_64-darwinlegacy, i386-solaris, x86_64-solaris, sparc-solaris), Norbert Preining (x86_64-linux), Thomas Schmitz (powerpc-linux), Boris Veytsman (armel-linux). Para información en el proceso de edificación de TEX Live vea http://tug.org/texlive/build.html.

Traductores de este manual: Boris Veytsman (ruso), Jjgod Jiang, Jinsong Zhao, Yue Wang, y Helin Gai (chino), Uwe Ziegenhagen (alemán), Manuel Pégourié-Gonnard, Denis Bitouzé, y Patrick Bideault (francés), Marco Pallante y Carla Maggi (italiano), Nikola Lečić (serbio), Petr Sojka & Jan Busa (eslovaco checoslovaco), Staszek Wawrykiewicz y Zofia Walczak (polaco), Carlos Enriquez Figueras (español). La página en el internet de la documentación de TEX Live es http://tug.org/texlive/doc.html.

Por supuesto que el más importante reconocimiento tiene que ir a Donald Knuth, primero antes que todo por inventar TEX, y después por dárselo al mundo.

### 9. Historia del lanzamiento

#### 9.1. Pasado

Conversaciones comenzaron a finales de 1993, cuando el Grupo de Usuarios Holandés de TEX comenzó a trabajar en su CD 4AllTEX para usuarios de MS-DOS, y en ese momento sólo se esperó en producir un sencillo, y racional CD para todos los sistemas. El gol de este proyecto era bastante ambicioso, durante el tiempo que esto se quería llevar a cabo. No obstante a ello esto generó no tan solo el primer CD 4AallTEX, pero también el grupo de trabajo y Consejo Técnico TUG en la Estructura del Directorio de TeX (http://tug.org/tds), el cual especificó cómo crear colecciones consistentes y manejables de los archivos de apoyo y ayuda de TEX. Una muestra completa del proyecto de TDS fue publicado en el ejemplar de diciembre de 1995 de TUGboat, y fue evidente desde temprano, que un producto deseado, estaría basado en un modelo de estructura mediante un CD. La distribución que usted tiene en sus manos, es un resultado directo, de las deliberaciones de este grupo de trabajo. También estaba esclarecido que el éxito del CD 4AllTEX mostró que los usuarios de Unix se beneficiarían de un sistema fácil, y este es el otro principal motivo de TEX Live.

En el otoño de 1995, fue cuando nos dedicamos en realizar un CD TDS basado en Unix, y rápidamente identificamos el teTEX de Thomas Esser, como la configuración ideal, debido a que ya tenía apoyo para múltiples plataformas y fue construido con portabilidad a través de varios sistemas. Thomas acordó en ayudar, y el trabajo comenzó seriamente en el comienzo de 1996. La primera edición fue lanzada en mayo de 1996. A principios de 1997, Karl Berry completó una edición nueva de Web2c, el cual incluyó casi todas las funciones que Thomas Esser había añadido en teTEX, y decidimos basar la 2a edición del CD en el estándar Web2C, con la adición del script texconfig de teTEX. La 3a edición del CD fue basada en una mayor revisión de Web2C, 7.2, por Olaf Weber; y durante el mismo tiempo, una nueva revisión de teTEX estaba siendo llevado a cabo, y TEX Live incluyó casi todas sus funciones. La 4a edición seguía el mismo patrón, usando una nueva versión de teTEX, y un nuevo lanzamiento de Web2C (7.3). El sistema ahora incluye configuraciones completas para Windows.

Para la 5a edición (marzo del 2000), muchas partes del CD fueron revisadas y chequeadas, actualizando cientos de paquetes. Los detalles de los paquetes fueron almacenados en archivos XML. Pero el cambio más grande para TEX Live 5, fue que todos los programas no-libres, fueron removidos. Todo en TEX Live está ahora con el propósito de que sea compatible con las Directrices de Programas Libres de Debian, como está reflejado en Debian Free Software Guidelines (http://www.debian.org/intro/free); hemos hecho nuestro mejor esfuerzo en revisar las condiciones de la licencia para todos los paquetes, pero agradeceríamos muchísimo, escuchar de cualquier error cometido.

La 6a edición (julio del 2001) tuvo mucho más material actualizado. El mayor cambio fue el de un concepto nuevo de instalación: el usuario pudiese seleccionar un set de colecciones más exacto. Las colecciones relacionadas con lenguajes, fueron completamente reorganizadas, de esa manera, seleccionando cualesquiera de estas, instala no solo los macros, sino también las fuentes, etc., pero también prepara un apropiado archivo language.dat

La 7a edición de 2002 tuvo la notable adición de respaldo a Mac OS X, y las vastas posibilidades de actualizaciones a todo tipo de programas y paquetes. Un gol importante fue la integración de los archivos originales con teTEX, para corregir la separación entre versiones 5 y 6.

##### 9.1.1. 2003

En el 2003, con la continua inundación de actualizaciones y adiciones, nos dimos cuenta que TEX Live había crecido de tal manera, que un solo CD no podía contenerlo, y por ese motivo lo separamos en tres diferentes distribuciones (vea la sección 2.1, p. 7). En adición a esto:

- A petición del equipo de LATEX, modificamos los comandos estándares latex y pdflatex (vea p. 11).
- Las nuevas fuentes de Latin Modern fueron incluidas (y ahora son recomendadas).
- Respaldo para Alpha OSF fue removido (ayuda para HPUX fue removida previamente), debido a que nadie tenía (o voluntariamente ofreció) equipos que estuviesen disponibles para compilar nuevos binarios.
- Las configuraciones de Windows, fueron substancialmente cambiados; por primera vez, todo un sistema basado en XEmacs, fue introducido.
- Programas suplementarios muy importantes para Windows, (Perl, Ghostscript, ImageMagick, Ispell) ahora fueron instalados en el directorio de instalación de TEX Live.
- Archivos de mapas de fuentes usados por dvips, dvipdfm, y pdftex ahora son generados por el nuevo programa updmap e instalados en texmf/fonts/map.
- TEX, Metafont, y MetaPost ahora, como estándar, ofrece los resultados de ingresos de caracteres (32 y por encima) como ellos mismos, en la producción de resultados (e.g., archivos \write), archivos de registro de datos, y la terminal de intérprete de comandos, i.e., no traducido mediante el uso de la notación ^^. en TEX Live-7, esta traducción dependía en las configuraciones locales del sistema; mientras que ahora, las configuraciones locales no influyen el funcionamiento de los programas TEX. Si por alguna razón se necesita el resultado que produce ^^, renombra el archivo texmf/web2c/cp8bit.tcx. (Las versiones futuras tendrán maneras más limpias en controlar esto).
- Esta documentación fue substancialmente revisada.
- Finalmente, debido a que los números de las versiones, han incrementado de manera inconsistente, el número de la versión es identificada por el año: TEX Live 2003.

##### 9.1.2. 2004

En el 2004 se vieron muchos cambios:

- Si se habían instalado las fuentes a los directorios locales, los cuales usan sus propios archivos de soporte, como .map o .enc (mucho menos propenso este último) usted tendrá que mover estos archivos de respaldo.

  Los archivos .map se buscan ahora en los subdirectorios fonts/map, solamente (en cada árbol de texmf), junto con la ruta del sistema TEXFONTMAPS. De similar manera, los archivos .enc, son ahora buscados en los directorios fonts/enc solamente, a través de la ruta del sistema ENCFONTS. El comando updmap, atentará de advertirle sobre cualquier problema.

  Para métodos en manipular esto y otra información, por favor de ver http://tug.org/texlive/mapenc.html.

- El TEX Collection ha sido expandido con la adición de un CD de instalación basado en MiKTEX, para aquellos que prefieren la implementación a Web2C. Vea la sección 2 (p. 7).
- Dentro de TEX Live, el único e inmenso árbol texmf, de versiones anteriores, fue reemplazado por tres: texmf, texmf-dist, y texmf-doc. Vea la sección 2.2 (p. 7), y los archivos README para cada uno.
- Todos los archivos de ingreso relacionados con TEX son ahora coleccionados en el subdirectorio tex de los árboles de texmf*, en vez de tener directorios parientes separados tex, etex, pdftex, pdfetex, etc. Vea texmf-dist/doc/generic/tds/tds.html#Extensions.
- Los scripts de ayuda (que no están supuestos a ser invocados por los usuarios) están ahora localizados en un nuevo subdirectorio scripts de los árboles texmf*, y pueden ser buscados mediante la vía de kpsewhich -format=texmfscripts. Por lo tanto si tiene programas que operan bajo estos scripts, necesitarán ser ajustados. Vea texmf-dist/doc/generic/tds/tds.html#Scripts.
- Casi todos los formatos, dejan los caracteres imprimibles como ellos mismos mediante la vía de “archivo de traducción” cp227.tcx, en vez de ser traducidos a la notación ^^. Específicamente, caracteres en las posiciones 32–256, tabulador de adición, tabulador vertical, y marcadores de saltos de páginas son considerados imprimibles y no son traducidos. Las excepciones son los formatos de TEX (solamente 32–126 imprimible), ConTEXt (0–255 imprimible), y aquellos relacionados con Omega. Este funcionamiento estándar es casi el mismo en TEX Live 2003, pero es implementado más limpiamente, con más posibilidades para la personalización que el usuario necesite. Vea texmf-dist/doc/web2c/web2c.html#TCX-files. (Hablando de esto, con el ingreso de Unicode, TEX puede producir resultados con secuencias parciales de caracteres cuando muestre contextos de errores, por la razón que es octeto-orientado u orientado con byte).
- pdfetex es el motor estándar para todos los formatos, excepto el tex básico como tal. (Por supuesto que genera DVI cuando se ejecuta como latex, etc.) Esto quiere decir, entre varias cosas, que las funciones micro-tipográficas de pdftex están disponibles en LATEX, ConTEXt, etc., al igual que las funciones de e-TEX (texmf-dist/doc/etex/base/).
- También quiere decir que más importante que nunca antes la funcionalidad del paquete ifpdf (trabaje con ambos, con TEX básico y LATEX) o código equivalente, porque con simplemente evaluar si \pdfoutput o cualquier otro primitivo es definido, esto no es una manera confiable en determinar si el resultado de PDF está siendo generado. Hicimos esto retroactivamente compatible, de la mejor manera que pudimos hacerlo este año, pero el próximo año, \pdfoutput pudiese ser definido incluso cuando DVI haya sido escrito.
- pdfTEX (http://pdftex.org) tiene muchas nuevas funciones:
  - \pdfmapfile y \pdfmapline proveen respaldo con los mapas de las fuentes, dentro del mismo documento.
  - Expansión micro-tipográfica puede ser usado más fácilmente.
    http://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html
  - Todos los parámetros previamente configurados, a través del archivo de configuración pdftex.cfg tienen que ser ahora a través de primitivos, típicamente en pdftexconfig.tex; pdftex.cfg no es respaldado más. Cualquier subsiguiente archivo .fmt tiene que desecharse nuevamente, tan pronto cuando pdftexconfig.tex haya sido modificado.
  - Vea el manual de pdfTEX para más información: texmf-dist/doc/pdftex/manual/pdftex-a.pdf.
- El primitivo \input en tex (y mf y mpost) ahora acepta doble apóstrofe, y puede contener espacios, y caracteres especiales. Ejemplos típicos:
  \input "archivo con espacios" %plain
  \input{"archivo con espacios"} %latex

  Vea el manual de Web2c para más información sobre esto: texmf-dist/doc/web2c.

- Respaldo técnico para encTEX está ahora incluído dentro de Web2C y consiguientemente para todos los programas de TEX, mediante la opción enc — solamente cuando los formatos sean edificados. encTEX respalda la re-codificación de ingreso y salida, permitiendo el apoyo completo de Unicode (en UTF-8). Vea texmf-dist/doc/generic/enctex/ y http://www.olsak.net/enctex.html.
- Aleph, un nuevo motor que combina e-TEX y Omega, está disponible. Un poco de información está disponible en texmf-dist/doc/aleph/base y en http://www.tex.ac.uk/cgi-bin/texfaq2html?label=aleph. El formato que está basado en LATEX para Aleph es nombrado lamed.
- El último lanzamiento de LATEX tiene una nueva versión de la licencia LPPL — ahora oficialmente una licencia-aprobada por Debian. Para otras actualizaciones, vea los otros archivos ltnews en el texmf-dist/doc/latex/base.
- dvipng, un nuevo programa conversor de archivos de imágenes de DVI a PNG está incluido. Vea http://www.ctan.org/pkg/dvipng.
- Reducimos el paquete cbgreek a un tamaño “mediano” de set de fuentes, con el consejo del autor (Claudio Beccari). Las fuentes extraídas, son las invisibles, esbozadas, y transparentes, las cuales son relativamente y raramente utilizadas, y necesitábamos el espacio de almacenamiento. El set completo, por supuesto que está disponible (http://mirror.ctan.org/tex-archive/fonts/greek/cbfonts).
- Los comandos (enlaces) ini y vir para tex, mf, y mpost ya no son creados, tales como initex. La funcionalidad del comando ini ha estado disponible a través de las opciones de la línea de comandos -ini desde hace varios años.
- El respaldo y ayuda técnica con la plataforma i386-openbsd fue removido. Debido a que el paquete tetex está disponible en el sistema de Puertos de BSD, al igual que los binarios tanto para GNU/Linux y BSD que también están disponibles, parecía que emplear el tiempo para trabajar voluntariamente en esto, era preferible que fuese con otros asuntos que necesitasen de ello.
- Acerca de sparc-solaris (por lo menos), se tuviera que configurar la variable del sistema LD_LIBRARY_PATH para que ejecutara los programas tlutils. Esto es debido a que las mismas son compiladas con C++, y no existe una localización estándar para las librerías de ejecución. (Esto no fue algo nuevo en el 2004, pero no estaba previamente documentado.) De igual manera, en mips-irix, las ejecuciones de MIPSpro 7.4, son requeridas.

##### 9.1.3. 2005

El 2005 presenció un inmenso número de actualizaciones de paquetes y programas. La estructura se mantuvo, relativamente estable desde el 2004, pero inevitablemente hubieron algunos cambios también:

- Los nuevos scripts texconfig-sys, updamp-sys, y fmtutil-sys fueron introducidos, lo cual modificó la configuración en los árboles del sistema. Los scripts texconfg, updmap, y fmtutil, ahora modifican archivos específicos de usuarios, bajo el directorio $HOME/.texlive2005
- Nuevas variables correspondientes a estos scripts como TEXMFCONFIG y TEXMFSYSCONFIG para especificar los árboles donde los archivos de configuración (del usuario o del sistema) fueron encontrados. Por lo tanto, versiones personales de fmtutil.cnf y updmap.cfg pueden moverse hacia estos lugares; otra opción es en redefinir TEXMFCONFIG o TEXMFSYSCONFIG en los archivos de texmf.cnf. Cualquiera que sea el caso, la localización real de estos archivos y los valores de TEXMFCONFIG y TEXMFSYSCONFIG deben de corresponder apropiadamente. Vea la sección 2.3, p. 8.
- El año pasado, primitivos indefinidos, como \pdfoutput para la producción de DVI a pesar que el programa pdfetex estaba siendo usado. Este año, como prometimos, revertimos estas medidas de compatibilidad. De tal manera, que si su documento utiliza ifx\pdfoutput\undefined para evaluar si el PDF está sido producido, esto necesitará cambiarse. Puede usar el ifpdf.sty (el cual funciona en ambos, TEX básico y LATEX) para hacer esto, o robarse su lógica.
- El año pasado, cambiamos la mayoría de los formatos de resultados de caracteres (8-bit) como los mismos (vea la sección anterior). El nuevo archivo TCK empty.tcx ahora provee una manera más fácil para obtener la original notación ^^ si así se desea, como en:
  latex --translate-file=vacío.tcx tuarchivo.tex

- El nuevo programa dvipdfmx está incluido para traducción de DVI a PDF; esto es una actualización activamente mantenida de dvipdfm (el cual está también disponible por ahora, pero no más recomendado).
- Los nuevos programas pdfopen pdfclose están incluidos para permitir la recarga de archivos pdf, en el Adobe Acrobat Reader, sin recomenzar el programa. (Otros lectores de pdf, notablemente xpdf, gv, y gsview, nunca han sufrido de este problema.)
- Para consistencia, las variables HOMETEXMF y VARTEXMF han sido renombradas a TEXMFHOME y TEXMFSYSVAR, respectivamente. También está TEXMFVAR, el cual es por estándar, específico con el usuario. Vea el primer punto encima de esto para más información.

##### 9.1.4. 2006–2007

Durante el 2006–2007, la mayor adición a TEX Live fue el programa XeTEX, disponible como los programas xetex y xelatex; vea http://scripts.sil.org/xetex.

Metapost también recibió una notable actualización, con más planes para el futuro. (http://tug.org/metapost/articles), de igual manera, pdfTEX (http://tug.org/applications/pdftex).

El archivo de TEX .fmt (formato de alta-velocidad), y otras archivos similares para MetaPost y Metafont están ahora almacenados en los subdirectorios de texmf/web2c, en vez del directorio mismo (aunque el directorio esté siendo buscado, por el hecho que algún .fmt’s) exista en el sistema. Los subdirectorios son nombrados por el ‘motor’ en uso, tal como tex o pdftex o xetex. Este cambio debe ser invisible en uso normal.

El programa de tex (básico) no lee ya más, las primeras líneas%& para determinar el formato que ejecutar; esto es divisado por el TEX de Knuth. (LATEX y todo lo demás, aún leen las líneas%&).

Por supuesto que este año también presenció (como usualmente) los cientos de actualizaciones a paquetes y programas. Por favor de revisar CTAN (http://mirror.ctan.org) para actualizaciones.

Internamente, el árbol original es ahora almacenado en Subversión, con una interfaz de web para ver el árbol, como el enlace de nuestra página muestra. Aunque no está visible en la distribución final, esperamos que esto seguirá proveyendo una fundación estable en el desarrollo y construcción en los años venideros.

Finalmente, en mayo del 2006, Thomas Esser anunció que él no continuaría con las actualizaciones de teTEX (http://tug.org/tetex). Y producto de esto, ha existido un alto interés en TEX Live, especialmente entre los distribuidores de GNU/Linux. (Existe un nuevo esquema de instalación para tetex en TEX Live, el cual provee un aproximado equivalente.) Esperamos que esto eventualmente se traduzca a mejorías para todos, en el sistema TEX.

##### 9.1.5. 2008

En el 2008, la infraestructura completa de TEX Live fue rediseñada y re-implementada. Toda la información acerca de la instalación está ahora guardada en un archivo de texto regular tlpkg/texlive.tlpdb.

Entre otras cosas, esto finalmente posibilita actualizar una instalación de TEX Live a través del Internet después de una instalación inicial, una función que ha sido proveída por MiKTEX por años. Esperamos en actualizar regularmente los paquetes, tan pronto como estos sean introducidos a CTAN.

El nuevo y mayor motor de compilación LuaTEX (http://luatex.org) está incluido; que aparte de proveer un nuevo nivel de flexibilidad en la composición tipográfica, es a su vez, un excelente lenguaje de inscripción para uso adentro y afuera de documentos TEX.

Ayuda técnica entre Windows y plataformas basadas en Unix, es ahora mucho más uniforme. En particular, la mayoría de los scripts de Perl y Lua están ahora disponibles en Windows, usando el Perl que internamente se distribuye con TEX Live.

El nuevo script tlmgr (section 5) es la interfaz general para administrar TEX Live después de una instalación inicial. Manipula actualizaciones de paquetes, y consiguientes regeneración de formatos, archivos de mapas, y archivos de lenguajes, opcionalmente incluyendo adiciones locales.

Con el advenimiento de tlmgr, las acciones de texconfig para editar los archivos de configuración de formateo, y de separación silábica, están ahora desactivados.

El programa de índice xindy (http://xindy.sourceforge.net/) está ahora incluido en la mayoría de las plataformas.

La herramienta kpsewhich, puede reportar ahora todas aquellos ingresos que concuerden de un archivo (option –all) y limita aquellos que coincidan en un subdirectorio dado (option –subdir).

El programa dvipdfmx ahora incluye nuevas funciones para extraer la información del borde de las cajas, a través de la línea de comando extractbib; esto fue una de las últimas funciones proveídas por dvipdfm, pero no en dvipdfmx.

Los aliases de las fuentes Times-Roman, y Helvetica, y muchos más, han sido removidos. Diferentes paquetes esperan que funcionen diferentemente (en particular, que tengan diferentes codificaciones), y no hubo manera en resolver esto.

El formato platex ha sido removido, para resolver un conflicto de nombre con un completamente diferente platex; el polski, es ahora el de ayuda principal en polaco.

Internamente, los archivos de cadenas de datos, son ahora compilados en los binarios, para facilitar las actualizaciones.

Finalmente, los cambios hechos por Donald Knuth en su ‘afinación de TEX del 2008’, está incluida en esta versión. Vea http://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf.

##### 9.1.6. 2009

En el 2009, el formato de resultado estándar para Lua(LA )TEX es ahora PDF, para así tomar ventaja del apoyo de LuaTEX con OpenType, et al. Nuevos ejecutables nombrados dviluatex y dvilualatex ejecutan LuaTEX con resultados DVI. La página de LuaTEX es http://luatex.org.

El motor original Omega, y formato Lambda han sido extraídos, después de discusiones con los autores de Omega. El actualizado Aleph y Lamed permanecen, al igual que las utilidades de Omega.

Un nueva versión de las fuentes Type 1 de AMS, está incluida, incluyendo Computer Modern: con unos cuantos cambios en la configuración de estos, que a través de los años, han sido llevado a cabo por Knuth, con los archivos originales de Metafont, han sido integrados y actualizados. Las fuentes Euler han sido completamente reconfiguradas por Hermann Zapf (vea http://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). En todos los casos, los métricos no han cambiado. La página en el Internet de las fuentes de AMS se encuentra en http://www.ams.org/tex/amsfonts.html.

El nuevo editor con GUI TEXworks está incluido para Windows, y también en MacTEX. Para otras plataformas, y para más información, vea la página en el Web de TEXworks, http://tug.org/texworks. Este editor es multi-plataforma, inspirado por TeXShop para Mac OS X con el objetivo en ser fácil de usar.

El programa de gráficas Asymptote está incluido para varias plataformas. Esto implementa un lenguaje de descripción de lenguajes, basado en texto, con cierto parecido con Metapost, pero con apoyo para un avanzado formato de tres dimensiones, y otras funciones. Su página en el Web está en http://asymptote.sourceforge.net.

El programa por separado, dvipdfm, ha sido reemplazado por dvipdfmx, el cual opera en un modo de compatibilidad especial, bajo ese nombre. dvipdfmx incluye apoyo para CJK y tiene muchos otros arreglos que se acumularon, a través de los años, desde la última versión de dvipdfm. La página principal de DVIPDFMx está en http://project.ktug.or.kr/dvipdfmx.

Ejecutables para cygwin y plataformas i386-netbsd, están ahora incluidos, aunque se nos fue aconsejado que muchos usuarios de OpenBSD obtienen TEX a través de los paquetes de sus sistemas, y encima de esto, habían dificultades en hacer que los binarios funcionaran en más de una versión.

Una miscelánea de pequeños cambios: ahora usamos comprensión xz, el estable programa que reemplaza a lzma (http://tukaani.org/xz/); el carácter literal $ es permitido en los nombres de archivos, cuando no introduce un nombre de una variable conocida; la librería Kpathsea es ahora multi-hilo, multi-procesos, (hizo uso de esto, en Metapost); y la edificación entera de TEX Live está basada ahora en Automake.

Nota final del pasado: todas las versiones de TEX Live, acompañado de material auxiliar como las etiquetas de los CD, están ahora disponibles en ftp://tug.org/historic/systems/texlive.

##### 9.1.7. 2010

En el 2010, la versión estándar para los resultados en PDF es ahora 1.5, permitiendo más compresión. Esto aplica también a todos los motores que fueron usados para producir PDF y dvipdfmx. Cargando los paquetes pdf14 de LATEX revierte a PDF-1.4, o set \pdfminorversion=4.

Pdf(LA )TEX ahora automáticamente convierte un archivo encapsulado de PostScript (EPS) a un PDF, mediante la vía de del paquete epstopdf, siempre y cuando el archivo de configuración graphics.cfg de LATEX esté cargado, y si el formato PDF es seleccionado como estándar en la salida. Las opciones estándar, tienen como objetivo, eliminar cualquier chance de que los archivos que hayan sido creados a mano, puedan ser sobrescritos, pero puedes también prevenir que por ejemplo un epstopdf se cargue por completo, mediante el ingreso de \newcommand{\DoNotLoadEpstopdf}{} (o \def...) antes de la declaración \documentclass. Este archivo tampoco es cargado, si pst-pdf es utilizado. Para más detalles, vea la documentación del paquete epstopdf (http://ctan.org/pkg/epstopdf-pkg).

Un cambio relacionado con esto, es la ejecución de unos cuantos comandos externos de TEX, mediante la vía de la función \write18, que está ahora activado por estándar. Estos comandos son repstopdf, makeindex, kpsewhich, bibtex, y bibtex8; la lista está definida en texmf.cnf. En aquellos sistemas, que tienen que prohibir todos estos comandos externos, esta opción se puede desactivar, en el instalador (vea la sección 3.2.4), o sobrescribe el valor después de la instalación mediante la ejecución de tlmgr conf texmf shell escape 0.

Y aún otro cambio fue en BibTeX y Makeindex, que ahora rehúsan producir los archivos en un directorio arbitrario (como el mismo TEX), como valor estándar. Esto es así, porque ahora su uso puede ser activado, mediante el restricto \write18. Para cambiar esto, la variable del entorno del sistema TEXMFOUTPUT puede ser fijada, o la configuración openout_any modificada.

XeTEX ahora respalda el ajuste de margen de un bloque de texto, de la misma manera que pdfTEX. (La expansión de la fuente, no es actualmente respaldado.)

Por configuración estándar, tlmgr ahora guarda una copia automáticamente de cada paquete actualizado (tlmgr option autobackup 1), de esta manera, las actualizaciones que hayan tenido rupturas, puedan ser fácilmente revertidas con tlmgr restore. Si usted realiza actualizaciones, posteriores a la instalación, y no cuenta con el espacio de almacenamiento en el disco para estas copias de seguridad, ejecute tlmgr option autobackup 0.

Nuevos programas incluyen: el motor pTEX y utilidades relacionadas con el mismo para composición tipográfica en japonés; el programa BibTeXU para activación de Unicode en BibTeX; la utilidad chxtex (http://baruch.ev-en.org/proj/chktex) para la revisión de los documentos (LA )TEX; el programa dvisvgm (http://dvisvgm.sourceforge.net) que es un traductor DVI-a-SVG.

Ejecutables para estas nuevas plataformas están ahora incluidas: amd64-freebsd, amd64-kfreebsd, i386-freebsd, i386-kfreebsd, x86_64-darwin, x86_64-solaris.

Un cambio en TEX Live 2009 que fallamos en mencionar: numerosos ejecutables relacionados con TEX4ht (http://tug.org/tex4ht), fueron removidos de los directorios de los binarios. El programa genérico mk4ht puede ser utilizado para ejecutar cualquiera de las combinaciones de tex4ht.

Finalmente, la versión de TEX Live en el TEX Collection DVD no puede ser más ejecutada en vivo (extrañamente curioso). Un DVD sencillo, ya no cuenta con más espacio. Un beneficioso efecto secundario de esto, es que la instalación directa de un DVD como tal, es mucho más rápida.

##### 9.1.8. 2011

Los binarios para Mac OS X (universal-darwin y x86_64-darwin) ahora solamente funcionan en Leopard y versiones recientes; Panther y Tiger, no tienen compatibilidad.

Biber, el programa para procesamiento de bibliografías está incluido en plataformas comunes. Su construcción está estrechamente acompañada por el paquete biblatex, el cual re-implementa completamente las facilidades bibliográficas proveídas por LaTeX.

El programa (mpost) ya no crea ni utiliza más, los archivos .mem. Los archivos necesarios, tales como plain.mp, son simplemente leídos durante la ejecución. Esto es relacionado, con el apoyo a Metapost como una librería, que es un significante avance, y que no es un cambio visible al usuario.

La implementación updmap en Perl, previamente utilizada solamente en Windows, ha sido reconfigurada y ahora está siendo utilizada en todas las plataformas. No debe haber ningún cambio visual para el usuario, como resultado de esto, excepto que opera mucho más rápido.

Los programas initex e initex fueron restaurados, (pero sin otras variantes ini*).

##### 9.1.9. 2012

tlmgr respalda actualizaciones de múltiples repositorios en la red. La sección sobre múltiples repositorios en los resultados que provee tlmgr help tiene más de estos.

El parámetro \XeTeXdashbreakstate está fijado a 1 como estándar, para ambos xetex y xelatex. Esto permite saltos de líneas, después de guiones cortos y largos, lo cual siempre ha sido el funcionamiento de TEX básico, LATEX, LuaTEX, etc. Aquellos documentos existentes de XeTEX los cuales deben retener la compatibilidad perfecta de saltos de líneas, necesitarán configurar \XeTeXdashbreakstate a-0 explícitamente.

Los archivos de salida, que son generados por pdftex y dvips, pueden exceder ahora, hasta 2gb.

Las 35 fuentes estándar de PostScript, están incluidas en los resultados de dvips, por norma o estándar, debido a que numerosas versiones de estas, están ahora presentes.

En el modo restricto de ejecución \write18, configurado como estándar, el programa mpost es ahora permitido.

Un archivo texmf.cnf es también encontrado en ../texmf-local, e.g., /usr/local/texlive/texmf-local/web2c/texmf.cnf, si el mismo existe.

El script updamp lee updmap.cfg por cada árbol en vez de una configuración global. Este cambio, debe ser invisible, a menos que updmap.cfg’s hayan sido editados directamente. Puedes ver más sobre estos, invocando updmap --help.

Las plataformas: armel-linux y mipsel-linux fueron añadidas; sparc-linux y i386-netbsd no se encuentran más en la distribución.

##### 9.1.10. 2013

La organización de la distribución: el directorio en alto-nivel texmf/ ha sido unido en texmf-dist/, para simplicidad. Ambas variables de Kpathsea TEXMFMAIN, y TEXMFDIST, ahora apuntan hacia texmf-dist.

Muchas colecciones pequeñas de lenguajes han sido unidas, para simplificar la instalación.

MetaPost: respaldo nativo para la producción de PNG y puntos-flotantes (IEEE doble) han sido añadidos.

LuaTEX: se actualizó con Lua 5.2, y ahora incluye una nueva librería (pdfscanner) para procesar contenido PDF externo, entre muchas cosas más (vea el sitio en el Internet).

XeTEX (también vea sus páginas para más):

- La librería HarfBuzz es usada para la organización de las fuentes, en vez de ICU. (ICU es aún usada para el respaldo de codificación de archivos de ingreso, bi-dirección, y el opcional salto de línea de Unicode.)
- Para diseño de Grafito, Graphite2 y HarfBuzz son ahora utilizados.
- En Macs, Core Text es usado en vez del (deprecado) ATSUI.
- La preferencia de fuentes TrueType/OpenType en vez de Type1, cuando los nombres son los mismos.
- El arreglo de búsquedas que no coincidan, entre XeTEX y xdvipdfmx.
- Apoyo de fuentes para matemática de OpenType.

xdvi: ahora utiliza las fuentes FreeType en vez de t1lib para la visualización.

El microtype.sty: ahora respalda XeTEX (protuberancia) y LuaTEX (protuberancia, expansión de fuente, rastreo), entre otras mejorías.

tlmgr: nueva acción pinning para facilitar la configuración de múltiples repositorios; esa sección en tmlgr --help tiene más, y en el Internet en http://tug.org/texlive/doc/tlmgr.html#MULTIPLE-REPOSITORIES.

Plataformas: armhf-linux, mips-irix, i386-netbsd, y amd64-netbsd añadido o revivido; powerpc-aix removido.

##### 9.1.11. 2014

El 2014, presenció otra afinación de TEX por parte de Knuth; esto afectó todos los motores, pero el único cambio visible, fue la restauración de la cadena preloaded format en la línea de banner. De acuerdo a Knuth, esto ahora refleja el formato que sería cargado por norma, en vez de un formato que no haya sido desechado y que esté pre-cargado en el binario; puede ser rescrito de varias maneras.

pdfTEX: nuevo parámetro de supresión-de-advertencia \pdfsuppresswarningpagegroup; nuevos primitivos para espacios falsos entre-palabras, que ayuden con el reflujo del texto: \pdfinterwordspaceon, \pdfinterwordspaceoff, \pdffakespace.

LuaTEX: Modificaciones notables y arreglos fueron realizados con la carga de fuentes, y la separación silábica. La adición más grande es una nueva variante de motor de compilación, luajittex (http://foundry.supelec.fr/projects/luajittex) y sus hermanos texluajit y texluajitc. Esto utiliza, justo-a-tiempo, un compilador Lua (artículo detallado de TUGboat en http://tug.org/TUGboat/tb34-1/tb106scarso.pdf). luajittex está aún en construcción, no está disponible en todas las plataformas, y es considerablemente menos estable que luatex. Ni nosotros, ni sus constructores recomiendan utilizarlo, excepto para propósitos específicos de experimentación con jit en el código Lua.

XeTEX: Las mismas imágenes de formato, son ahora respaldadas en todas las plataformas (incluyendo Mac); evitar el retorno de descomposición de compatibilidad con Unicode (pero no todas las variantes); la preferencia de OpenType antes de fuentes de Graphite, para compatibilidad con versiones previas de XeTEX.

MetaPost: Un nuevo sistema-numérico decimal es respaldado, acompañado de una opción interna numberprecision; una nueva definición de drawout en el archivo plain.mp, por Knuth; reparaciones de errores, depuraciones, en archivos producidos SVG, y PNG, entre otros.

La utilidad pstopdf en ConTEXt, será removida como comando solitario, después de esta versión, debido a conflictos con las utilidades de OS con el mismo nombre. Puede ser (aún) invocada como mtxrun –script pstopdf.

psutils han sido substancialmente revisadas por un nuevo administrador. Como resultado de ello, diferentes utilidades, raramente utilizadas, (fix*, getafm, psmerge, showchar) están ahora solamente en el directorio scripts/, en vez de ser ejecutables a nivel-de-usuario (esto puede ser revertido, si resulta ser problemático). Un nuevo script, psjoin, ha sido añadido.

La redistribución de MacTEX de TEX Live (section 3.1.2) no incluye más los paquetes opcionales basados en Mac solamente, para las fuentes de Latin Modern, ni TEX Gyre, por la razón que es bastante fácil para que los usuarios individualmente, los seleccionen para el sistema. El programa convert de ImageMagick también ha sido removido, debido a que TEX4ht (específicamente tex4ht.env) ahora utiliza Ghostscript directamente.

La colección langcjk para el soporte de idiomas chino, japonés, y coreano, ha sido dividida en colecciones individuales, con tamaños más moderados.

Plataformas: x86_64-cygwin fue añadida, mips-irix fue removido; Microsoft no ofrece ayuda más para Windows XP, y por esa razón, nuestros programas pueden comenzar a fallar allí en cualquier momento, sin previo aviso.

Plataformas: *-kfreebsd removido, debido a que TEX Live está ahora disponible fácilmente a través de los mecanismos de la plataforma del sistema. Ayuda para plataformas adicionales están disponibles como binarios personalizados (http://tug.org/texlive/custom-bin.html). En adición a esto, algunas de las plataformas se han omitido del DVD (simplemente para ahorrar espacio), pero pueden ser instaladas normalmente a través del Internet.

##### 9.1.12. 2015

LaTeX2e ahora incorpora, por norma estándar, cambios previamente incluidos solamente cuando se cargaba el paquete fixltx2e, el cual es ahora un no-op. Un nuevo paquete latexrelease y otros mecanismos permiten controlar lo que se hace. Los documentos incluidos LATEX News #22 y “cambios en LATEX” tienen más detalles acerca de esto. Incidentalmente, los paquetes babel y psnfss, aunque son partes principales de LATEX, están siendo mantenidos separados, y no están afectados por estos cambios (y deben trabajar aún).

Internamente, LaTeX2e ahora incluye configuración del motor relacionada con Unicode (caracteres que son letras, nombres de primitivos, etc.) el cual era anteriormente parte de TEX Live. Este cambio será invisible para los usuarios; unas cuantas secuencias internas de control de bajo-nivel, han sido renombradas o removidas, pero la funcionalidad debe ser la misma.

PdfTEX: apoyo técnico con JPEG Exif, al igual que JFIF, no emiten ni incluso una advertencia si \pdfinclusionerrorlevel es negativo; sync con xpdf 3.04.

LuaTEX: Nueva librería newtokenlib para escanear fichas o tokens; depuración en el generador de números al azar normal, y en otros lugares.

XeTEX: Arreglos de manipulación de imágenes; el binario de xdvipdfm es buscado primero como hermano para xetex; los opcodes o códigos operativos internos de XDV fueron modificados.

Metapost: Nuevo sistema numérico binario; nuevos programas upmpost y updvitomp con japonés-activado, análogo a up-tex.

MacTEX: Actualizaciones al paquete incluido GhostScript para respaldo de CJK. El Panel de Configuración de la Distribución TEX ahora trabaja en Yosemite (Mac OS X-10.10). Portafolios de recursos de bifurcación para las fuentes (generalmente sin una extensión) no son más respaldados por XeTEX; portafolios de bifurcación de datos (.dfont) permanecen con respaldo.

Infraestructuras: El script fmtutil ha sido re-implementado para leer fmtutil.cnf en una base por-árbol, análogo a updmap. Programas scripts de Web2C mktex* (incluyendo mktexlsr, mktextfm, mktexpk) ahora prefieren programas en sus propios directorios, en vez de utilizar la existente ruta (PATH).

Plataformas: *-kfreebsd fue removido, debido a que TEX Live está ahora disponible fácilmente a través de los mecanismos de la plataforma del sistema. Ayuda para plataformas adicionales están disponibles como binarios personalizados (http://tug.org/texlive/custom-bin.html). En adición a esto, algunas de las plataformas se han omitido del DVD (simplemente para ahorrar espacio), pero pueden ser instaladas normalmente a través del Internet.

##### 9.1.13. 2016

LuaTEX: Cambios radicales de los primitivos, tanto en renombres como en eliminaciones de estos, al igual que la reorganización de la estructura de nodos. Los cambios están resumidos en un artículo por Hans Hagen, “LuaTEX 0.90 backend changes for PDF and more” (http://tug.org/TUGboat/tb37-1/tb115hagen-pdf.pdf); para todos los detalles acerca de esto, vea el manual de LuaTEX, texmf-dist/doc/luatex/base/luatex.pdf.

Metafont: Nuevos programas parientes altamente experimentales MFlua y MFluajit, que integran Lua con Metafont, con propósitos de evaluación.

Metapost: reparaciones de errores, depuraciones, y preparaciones internas para MetaPost 2.0.

SOURCE_DATE_EPOCH respaldo en todos los motores excepto para LuaTEX (el cual estará disponible para el próximo lanzamiento) y el código original tex (que fue intencionalmente omitido): si la variable del entorno del sistema está configurada y fijada, este valor es utilizado para las fechas, en los resultados del PDF. Si el código SOURCE_DATE_EPOCH_TEX_PRIMITIVES está configurado y establecido, entonces el valor del código SOURCE_DATE_EPOCH es utilizado para la inicialización de los primitivos de TEX \year, \month, \day, y \time. El manual de pdfTEX tiene ejemplos y detalles.

pdfTEX: nuevos primitivos \pdfinfoomitdate, \pdftrailerid, y \pdfsuppressptexinfo que controlan los valores que aparecen en la salida de datos, que normalmente se modifican con cada ejecución. Estas funciones son para los resultados de salida del PDF, no del DVI.

XeTEX: Nuevos primitivos \XeTeXhyphenatablelength, \XeTeXgenerateactualtext,
\XeTeXinterwordspaceshaping, \mdfivesum; el límite de caracteres de clases se incrementó a 4096; y el id de la unidad de octeto o byte incrementó.

Otras utilidades:

- gregorio es un nuevo programa, parte del paquete gregoriotex que es para la composición tipográfica de notaciones musicales de cantos Gregorianos. Está incluido estándar en shell_escape_commands.
- upmendex es un programa de creación de índices, mayormente compatible con makeindex, con respaldo para la clasificación de Unicode; entre otros cambios.
- afm2tfm hace ahora ajustes de altura hacia arriba de los métricos de las fuentes que están basadas en acentos; una nueva opción -a omite todos estos ajustes.
- ps2pk puede manipular las fuentes extendidas PK/GF.

MacTEX: El Panel de Configuración de la Distribución TEX ya no existe; su funcionalidad ahora se encuentra en TeX Live Utility; conjunto de aplicaciones GUI (Interfaz Gráfica de Usuario) actualizadas; un nuevo script cjk-gs-integrate puede ser ejecutado por aquellos usuarios que desean incorporar varias fuentes CJK en el visualizador Ghostscript.

Infraestructura: Respaldo y apoyo para el fichero de configuración a nivel-del-sistema de tlmgr; verificación de las sumas de control de los paquetes; si el GPG está disponible, verifique la firma, la credencial de las actualizaciones en la red. Estos chequeos ocurren mediante ambos tanto en el instalador como en el programa TEX Live Manager tlmgr (Si el GPG no está disponible, las actualizaciones proceden como es usual.)

Plataformas: alpha-linux y mipsel-linux fueron removidas.

##### 9.1.14. 2017

LuaTEX: Más funciones de devolución de llamadas o funciones de callback, más control en la composición tipográfica, más acceso a los comandos internos; librería ffi para cargar código dinámico fue añadida en algunas plataformas.

pdfTEX: Variables de entorno SOURCE_DATE_EPOCH_TEX_PRIMITIVES del año pasado fueron renombrabas a FORCE_SOURCE_DATE, sin cambios en la funcionalidad; la lista de fichas o tokens de \pdfpageattr que contiene la cadena del código /MediaBox, omite la salida del código predeterminado de /MediaBox.

XeTEX: Matemática de Unicode/Opentype está ahora basada en el respaldo de la tabla de matemáticas de HarfBuzz; y algunas correcciones de errores.

Dvips: implementación que el último papersize especial o el último especial del tamaño del papel gane, cuando múltiples dimensiones son especificadas, para consistencia con el programa dvipdfmx y expectativas del paquete; la opción -LO (LO config setting) restaura la funcionalidad anterior del primer especial ganador.

epTEX, eupTEX: Nuevos primitivos \pdfuniformdeviate, \pdfnormaldeviate, \pdfrandomseed, \pdfsetrandomseed, \pdfelapsedtime, \pdfresettimer, de pdfTEX.

MacTEX: Empezando este año, solamente aquellas versiones de Mac OS X para las cuales Apple aún lanza parches de seguridad, serán respaldadas en MacTEX, bajo la plataforma de nombre x86_64-darwin; actualmente esto quiere decir Yosemite, El-Capitan, y Sierra (10.10 y más recientes). Los binarios para versiones anteriores de Mac OS X no están incluidas en MacTEX, pero están aún disponibles en TEX Live (x86_64-darwinlegacy, i386-darwin, powerpc-darwin).

Infraestructura: El árbol TEXMFLOCAL es ahora buscado antes de TEXMFSYSCONFIG y TEXMFSYSVAR (por norma estándar); se espera y se tiene la esperanza que esto coincida mejor con las expectativas de los archivos locales que sobrescriben los archivos del sistema. También, tlmgr tiene un modo nuevo shell para uso interactivo y de programación, y una nueva acción conf auxtrees que fácilmente añade y remueve árboles extra.

updmap y fmtutil: Estos scripts ahora avisan e informan con una advertencia cuando son invocados sin explícitamente haber especificado tanto el así llamado modo (updmap-sys, fmtutil-sys, o la opción -sys), o en el modo de usuario (updmap-user, fmtutil-user, o la opción -user). Se espera que esto reducirá el problema perenne en invocar el modo de usuario por accidente y que por consiguiente se pierdan las actualizaciones futuras del sistema. Vea http://tug.org/texlive/scripts-sys-user.html para más detalles.

install-tl: acceso de rutas personales son ahora configuradas bajo los valores de MacTEX (~/Library/...) predeterminados en Macs. Nueva opción -init-from-profile para comenzar una instalación con los valores de un perfil dado; un nuevo comando P para que explícitamente guarde un perfil; nuevos nombres de variable de perfil (pero los anteriores son aún aceptados).

SyncTEX: el nombre temporal de un archivo aparece ahora como foo.synctex(busy), en vez de foo.synctex.gz(busy) (no .gz). Compiladores y sistemas de edificación que quieren remover los archivos temporales pueden necesitar ajustes.

Otras utilidades: texosquery-jre8 es un nuevo programa multi-plataforma que extrae información del sistema operativo como la configuración de la localización, entre otros aspectos, de un documento TEX y está incluido estándar en el intérprete de la línea de comandos shell_escape_commands para la ejecución restricta del shell. (Viejas versiones de JRE están respaldadas por texosquery, pero no pueden ser habilitadas en modo restricto, debido a que no son respaldadas por Oracle, incluso para problemas de seguridad.)

Plataformas: Vea la entrada acerca de MacTEX encima; no hay otros cambios.

#### 9.2. Presente—2018

Kpathsea: Se ignora las mayúsculas con todos los nombres de archivos que coincidan, es ahora el estándar en los directorios que no son parte del sistema; establezca un texmf.cnf o la variable del entorno del sistema texmf_casefold_search con el valor 0 para desactivarlo. Detalles completos se encuentran en el manual de Kpathsea (http://tug.org/kpathsea).

epTEX, eupTEX: Nuevo primitivo \epTeXversion.

LuaTEX: Preparación para el lanzamiento de Lua 5.3 en el 2019: el binario luatex53 está disponible en la mayoría de las plataformas, pero debe ser renombrado luatex para que sea efectivo. O utilice los ficheros de ConTEXt Garden (http://wiki.contextgarden.net); más información acerca de esto se puede encontrar allí.

MetaPost: Arreglos con direcciones equivocadas en la ruta de acceso. Salidas de TFM y de PNG.

pdfTEX: Permite vectores de codificación para las fuentes de bitmap; el actual directorio no está configurado con un hash en el PDF ID; arreglos de depuración para \pdfprimitive y todo lo relacionado con el mismo.

XeTEX: Respaldo para Rotate en la inclusión de imagen en PDF; escape con valores sin ceros si los resultados de la salida del driver fallan; varios arreglos con UTF-8 y otros primitivos.

MacTEX: Vea más abajo, los cambios en el respaldo de la versión. Adicionalmente, los ficheros instalados en Applications/TeX/ a través de MacTEX han sido reorganizados para tener mejor clarificación; ahora esta localización contiene cuatro programas de interfaz gráfica GUI (BibDesk, LaTeXiT, TeX Live Utility, y TeXShop) en el nivel más alto, y directorios con utilidades adicionales y documentación.

tlmgr: nuevos instaladores tlshell (Tcl/Tk) y tlcockpit (Java); resultados de salida JSON; uninstall tiene ahora un sinónimo para remove; nueva acción/opción print-platform-info.

Plataformas:

- Nuevo: x86_64-linuxmusl y aarch64-linux Removido: armel-linux, y powerpc-linux
- x86_64-darwin respalda 10.10–10.13 (Yosemite, El-Capitan, Sierra, y High-Sierra).
- x86_64-darwinlegacy respalda 10.6–10.10 (aunque x86_64-darwin es preferido por 10.10). Todo el respaldo para 10.5 (leopard) ha cesado, esto quiere decir, que ambos powerpc-darwin y i386-darwin platforms han sido removidos.
- Windows: XP ya no es respaldado.

#### 9.3. Futuro

¡TEX Live no es perfecto! (Y nunca lo será.) Nuestro propósito es continuar con el lanzamiento de nuevas versiones, y desearíamos proveer más ayuda material, más utilidades, más programas de instalación, y (por supuesto) un árbol de macros y fuentes con más mejorías y con mejor revisión. Este trabajo está siendo llevado a cabo por voluntarios, en sus tiempos libres, y siempre habrá más que hacer. Por favor vea http://tug.org/texlive/contribute.html.

Por favor, envíe correcciones, referencias y ofertas de ayuda a:

tex-live@tug.org
http://tug.org/texlive

¡Feliz TEXing!