FAQ de CervanTeX CervanTeX Versión 1.97 de 2006-05-09 (15:12:22) Esta es la lista de preguntas y respuestas frecuentes del grupo de usuarios hispanohablantes de TeX/LaTeX CervanTeX. Está basada en las preguntas que se repiten con frecuencia en los distintos foros y en algunas contribuciones adicionales interesantes. Aunque todas ellas son preguntas razonables, especialmente para un neófito, resulta un poco repetitivo verlas aparecer continuamente en los distintos foros de discusión sobre TeX/LaTeX. Por esta razón se han intentado reunir en esta FAQ. Se ruega echarle un vistazo antes de preguntar en la lista de correo o en el grupo de noticias cosas que ya se han pregun- tado y respondido múltiples veces y que están en esta FAQ. ______________________________________________________________________ Índice general 1. ¿Qué son TeX y sus programas hermanos? 1.1 ¿Qué es TeX? 1.2 ¿Por qué debo asegurarme de usar TeX 3.X? 1.3 Si TeX es tan bueno, ¿por qué es gratuito? 1.4 ¿Qué es LaTeX? 1.5 ¿Qué es LaTeX2e?, ¿Por qué debo usarlo si me va bien con el otro (LaTeX209)? 1.6 ¿Qué son los paquetes de la AMS (AMS-TeX, AMS-LaTeX)? 1.7 ¿Qué es METAFONT? 2. ¿Qué ventajas e inconvenientes tiene TeX/LaTeX? 2.1 Ventajas frente a otros procesadores. 2.2 Inconvenientes o más bien, ¿cuáles son las críticas más habituales? 3. ¿Qué documentación hay disponible sobre TeX/LaTeX? 3.1 Tutoriales de LaTeX en castellano. 3.2 Libros en castellano 3.3 Tutoriales en otros idiomas 3.4 Libros en otros idiomas 3.5 Revistas. 4. ¿Que elementos intervienen al procesar un documento con LaTeX? 4.1 El documento fuente: ¿Cómo creo un documento con LaTeX, lo proceso, lo veo y lo imprimo? 4.2 ¿Qué es un archivo DVI? 4.3 ¿Qué es un conversor (driver)? 4.4 ¿Qué son los archivos .pk? 4.5 ¿Qué son los archivos .tfm? 4.6 ¿Qué son los tipos (fuentes) CM? 4.7 ¿Qué son los tipos (fuentes) EC/DC? 4.8 ¿Qué son los tipos (fuentes) virtuales? 4.9 ¿Qué son las órdenes \special? 4.10 ¿Qué es el postscript y el postscript encapsulado (archivos .eps)? 4.11 ¿Qué es el formato pdf? 4.12 ¿Qué son los paquetes en LaTeX? 4.13 ¿Qué son los archivos .dtx? 5. ¿Cómo consigo LaTeX y otros programas relacionados? 5.1 Distribuciones TeX/LaTeX 5.1.1 Distribuciones libres o shareware 5.1.2 Distribuciones comerciales 5.2 Editores de texto que trabajan especialmente bien con LaTeX 6. Preguntas específicas para el LaTeX en castellano 6.1 ¿Cómo puedo usar TeX en castellano? o ¿Qué es lo mínimo que hay que saber para escribir en castellano con TeX/LaTeX? 6.2 Con LaTeX, ¿cómo puedo escribir los acentos y demás caracteres extendidos? 6.2.1 Mediante órdenes LaTeX 6.2.2 Directamente mediante el paquete inputenc 6.2.3 ¿Cómo introducir acentos en modo matemático? 6.3 ¿Puedo compartir mis archivos LaTeX en los que he escrito los acentos directamente? 6.4 ¿Por qué cuando se selecciona texto en Adobe Reader o xpdf, desde un documento PDF generado con LaTeX, las letras acentuadas y eñes no se copian bien? 6.5 ¿Cómo cambiar los literales que produce LaTeX? 6.6 ¿Cómo hacer que LaTeX parta correctamente las palabras en castellano? 6.6.1 ¿Qué configuraciones (o patterns) existen para la partición de palabras? 6.6.2 ¿Cómo activo el patrón de partición de palabras para el castellano? 6.6.3 A pesar de que he activado los patrones de partición de palabras del castellano, hay una palabra que se me resiste 6.6.4 Mi TeX no parte las palabras que tienen acentos. ¿Por qué? 6.7 Acerca de spanish.sty 6.7.1 ¿Dónde se puede obtener la documentación de spanish en castellano? 6.7.2 ¿Cómo cambio los nombres de las secciones de bibliografía, índice, etc... que pone spanish.sty? 6.7.3 ¿Por qué spanish.sty pone los meses en minúscula? 6.7.4 ¿Por qué el spanish de babel reemplaza el punto decimal por una coma? 6.7.5 ¿Por qué spanish.sty pone los números romanos siempre en mayúscula? 6.7.6 ¿Por qué spanish.sty acentúa la I de Índice? 6.7.7 ¿Por qué spanish para babel dice cuadro en lugar de tabla? 6.7.8 ¿Cómo consigo que babel y spanish.sty no utilicen los atajos de teclado NUNCA? 6.8 ¿Cómo puedo indicar la abreviatura de los ordinales? 6.9 ¿Cómo forzar sangría después de las cabeceras? 6.10 ¿Cómo puedo escribir las funciones matemáticas en español? 6.11 ¿Qué verificadores ortográficos puedo utilizar para español? 6.12 ¿Cómo utilizo BibTeX en castellano? 6.12.1 Utilizar estilos adaptables (los abstyles) 6.12.2 Utilizar el paquete custom-bib 6.13 ¿Cómo genero un índice alfabético con la ordenación correcta en castellano? 7. ¿Que es...? 7.1 ¿Qué es el CTAN (Comprehensive TeX Archive Network). 7.2 ¿Qué es el esquema de codificación de Cork? 7.3 ¿Qué es babel? 7.4 ¿Qué son eTeX, eLaTeX y omega? 7.5 ¿Qué es RevTeX? 7.6 ¿Qué es una box y cuándo conviene utilizarlas? 8. ¿Cómo hago ...? 8.1 ¿Cómo y dónde instalo nuevos paquetes o archivos de estilo? 8.1.1 Dónde buscar un paquete nuevo y qué traer 8.1.2 ¿Qué es cada uno de los archivos que traigo? 8.1.3 Extrayendo archivos de estilo de los .dtx y .ins 8.1.4 ¿Dónde colocar nuevos archivos de estilo? 8.1.5 Activando ramas locales y personales del árbol de directorios LaTeX global 8.1.6 Rehaciendo la base de datos de archivos instalados 8.1.7 ¿Cómo verifico los directorios en los que TeX busca archivos de estilo? 8.2 ¿Cómo personalizo el aspecto del documento? 8.2.1 ¿Cómo cambio la fuente de un documento o instalo nuevas? 8.2.2 ¿Puedo utilizar una fuente TrueType como Arial en LaTeX? 8.2.3 Incluyendo subdocumentos TeX/LaTeX en el documento 8.2.4 ¿Cómo evito que salga la palabra capítulo en las cabeceras de capítulo? 8.2.5 ¿Cómo cambio la cabecera de capítulo por otra más a mi gusto? 8.2.6 Quiero una sección no numerada, pero que aparezca en la tabla de materias. 8.2.7 No me funciona \subsubsubsection. 8.2.8 ¿Cómo quito los encabezados que LaTeX pone automáticamente en las páginas blancas? 8.2.9 ¿Cómo quito los encabezados, pies o la numeración de las páginas? 8.2.10 ¿Cómo pongo encabezados o pies de página a mi gusto? 8.2.11 ¿Cómo hago que LaTeX y TeX no partan nunca las palabras? 8.2.12 ¿Cómo ajusto los márgenes de un documento LaTeX? 8.2.13 ¿Cómo obtengo un documento apaisado? 8.2.14 ¿Cómo ajusto el espaciado en el documento LaTeX? 8.3 Listas al gusto de cada cual. 8.3.1 ¿Cómo ajusto el espaciado en una lista? 8.3.2 ¿Cómo cambio el tipo de numeración en las listas numeradas? 8.3.3 Quiero mostrar un símbolo distinto en las listas itemize 8.3.4 ¿Puedo ajustar la separación entre texto y listas? 8.3.5 ¿Cómo interrumpir una lista numerada con un comentario y continuar después con la numeración correcta? 8.3.6 ¿Puedo hacer listas en paralelo? 8.4 Referencias cruzadas, índices, bibliografías y tablas de materias. 8.4.1 ¿Hay alguna herramienta de gestión de bases de datos bibliográficas en BibTeX? 8.4.2 ¿Cómo introduzco la bibliografía o el índice en la tabla de materias? 8.4.3 ¿Cómo pongo el índice con su contenido al principio de cada capítulo? 8.4.4 ¿Cómo añado bibliografía al final de cada capítulo en LaTeX? 8.4.5 ¿Cómo divido la bibliografía por temas en LaTeX? 8.4.6 ¿Cómo cito una página de una referencia bibliográfica? 8.4.7 ¿Cómo cito una url con BibTeX? 8.4.8 ¿Cómo colapso una serie de citas consecutivas? 8.4.9 ¿Cómo hago una referencia cruzada a un documento externo? 8.4.10 Afinando el aspecto de la tabla de materias o listas de figuras y tablas. 8.5 ¿Cómo introduzco dibujos, diagramas e imágenes en LaTeX? 8.5.1 Dibujando con TeX 8.5.2 Introduciendo figuras postscript encapsulado en LaTeX 8.5.3 Introduciendo imágenes en mapa de bits en LaTeX. 8.5.4 Inclusión de una imagen desde un PDF con múltiples páginas. 8.5.5 Introduciendo código y figuras postscript en pdfTeX 8.5.6 ¿Cómo coloco un fragmento TeX en una figura? 8.6 Figuras, tablas y elementos flotantes 8.6.1 ¿Cómo puedo poner una figura rodeada de texto? 8.6.2 ¿Cómo puedo poner una figura a dos columnas? 8.6.3 ¿Cómo consigo un mayor control de la posición de figuras y demás elementos flotantes? 8.6.4 ¿Puedo poner una figura en una tabla? 8.6.5 ¿Cómo colocar dos figuras o tablas juntas de distintas formas?, 8.6.6 ¿Puedo poner un pie en tablas y figuras que no flotan?, 8.6.7 ¿Cómo hago para incluir elementos flotantes grandes o numerosos sin que den errores o se vayan al final? 8.7 ¿Cómo giro un elemento en un documento LaTeX? 8.8 ¿Cómo escribo algunos símbolos? 8.9 ¿Cómo convierto mis documentos a LaTeX y desde LaTeX? 8.9.1 ¿Cómo obtengo un documento PDF a partir de mi documento TeX? 8.9.2 ¿Cómo obtengo una versión texto a partir de un documento PDF? 8.9.3 ¿Cómo obtengo un documento html a partir de mi documento TeX? 8.9.4 Convirtiendo a LaTeX desde otros formatos 8.10 ¿Cómo rehago los formatos de TeX y LaTeX? 8.11 ¿Cómo llamo a un editor desde TeX/LaTeX? 8.12 Algunas cosillas matemáticas. 8.12.1 ¿Cómo escribo un número con periodo utilizando LaTeX? 8.12.2 ¿Cómo puedo hacer para que la etiqueta de una ecuación p.ej. (3.5) contenga además el número de la sección actual p.ej. (3.1.5) 8.12.3 ¿Cómo hay que hacer para lograr la N, R de doble trazo con que se representan los números naturales, reales, etc... 8.12.4 ¿Puedo forzar que una fórmula tenga el mismo número que otra? 8.12.5 ¿Puedo escribir símbolos matemáticos en negrita? 8.12.6 ¿Puedo rotar una ecuación? 8.12.7 Algunas preguntas matemáticas de breve respuesta. 8.13 ¿Cómo hago cuadernillos, trípticos y documentos con formatos especiales? 8.13.1 ¿Cómo hago cuadernillos con TeX o LaTeX? 8.13.2 ¿Cómo hago trípticos con LaTeX? 8.13.3 ¿Puedo preparar un póster con TeX/LaTeX? 8.13.4 ¿Puedo hacer libretos y carátulas de CD con LaTeX? 8.14 ¿Cómo puedo preparar una exposición utilizando LaTeX? 8.14.1 Haciendo transparencias con LaTeX 8.14.2 Haciendo una presentación con LaTeX 8.14.2.1 beamer 8.14.3 Más información sobre presentaciones 8.15 Algunas cosas que a veces se piden para mandar un documento a la imprenta. 8.15.1 Sacando la imagen especular de un archivo (es decir, con todo al revés). 8.15.2 Sacando el archivo en negativo (es decir, blanco sobre negro). 8.15.3 Marcas de corte. 8.16 Algunas cuestiones adicionales, o menos FAQ 8.17 ¿He encontrado un error en LaTeX ¿Cómo lo notifico? 9. ¿Por qué no consigo ...? 9.1 ¿Por qué no salen las imágenes en mi documento? 9.2 ¿Por qué no salen los caracteres acentuados si yo los escribo bien? 9.3 ¿Por qué no encuentro el archivo babelbst.tex cuando uso custom-bib? 9.4 ¿Por qué a veces no me da el mismo resultado o incluso errores al procesar un documento en dos sistemas distintos? 10. Preguntas que se van quedando obsoletas 10.1 ¿Qué es FTC? 10.2 ¿Qué es ML-TeX? 11. Información sobre LaTeX en castellano 11.1 El Grupo de Usuarios de TeX Hispanohablantes (CervanTeX) 11.1.1 ¿Qué es CervanTeX? 11.1.2 ¿Cómo puedo entrar en contacto con el grupo de usuarios? 11.2 La lista es-tex 11.2.1 ¿Cómo funciona la lista es-tex? 11.2.2 Cuando contesto a alguien de la lista, ¿quién recibe la respuesta? ¿El que mandó el mensaje o la lista entera? 11.2.3 ¿Se archiva en algún sitio la lista es-tex? 11.2.4 Recibo correo de muchas listas. ¿Cómo puedo filtrar lo que venga de la lista es-tex? 11.2.5 ¿Cómo es que hay tanta gente de fuera de España en la lista? 11.3 Las listas spanish-tex y sptex 11.3.1 ¿Se archiva en algún sitio la lista spanish-tex? 11.3.2 ¿Se archiva en algún sitio la lista sptex? 11.4 El grupo de noticias es.comp.lenguajes.tex 11.5 El grupo de noticias es.eunet.spanish-tex 12. Meta-preguntas (preguntas sobre esta FAQ): 12.1 ¿Cuál es la historia de esta FAQ? 12.2 ¿Quién coordina actualmente la FAQ? 12.3 Agradecimientos 12.4 ¿Dónde encuentro la versión más reciente de esta FAQ? 12.5 ¿Dónde puedo encontrar otras FAQ, aunque sea en otros idiomas? ______________________________________________________________________ 1. ¿Qué son TeX y sus programas hermanos? 1.1. ¿Qué es TeX? TeX es un sistema de composición de textos de alta calidad creado por Donald E. Knuth, dirigido en particular a aquéllos textos que contienen una gran cantidad de expresiones matemáticas. No debe pensarse en TeX como un procesador de palabras del tipo WYSIWYG, un archivo tex es un archivo ASCII donde está el texto que deseamos imprimir junto con determinadas instrucciones sobre como debe ser tratado, que debe ser procesado por un compilador (el programa TeX). Éste devuelve un archivo que es independiente de la plataforma y que es el que finalmente se transformará al lenguaje de impresora y se imprimirá. Para escribir TeX Knuth desarrolló un sistema de programación ilustrada denominado WEB. Las fuentes WEB de TeX están disponibles gratuitamente, lo mismo que herramientas para convertir el original en WEB en un programa que pueda compilarse y un texto que pueda imprimirse. El sistema WEB proporciona herramientas para compilar TeX en distintos sistemas operativos. TeX en sí es un procesador de macros, con una alta capacidad de programación. Utilizar TeX puro reviste una cierta dificultad, por lo que Knuth suministró una serie de macros para TeX a las que se denominó plain TeX. Estas macros son el conjunto mínimo de macros que se pueden utilizar de forma eficaz con TeX e incluyen algunos ejemplos de uso de órdenes TeX de alto nivel. Cuando alguien afirma programar en TeX normalmente se refiere a que lo hace en plain TeX 1.2. ¿Por qué debo asegurarme de usar TeX 3.X? Bueno, hace unos años (en el ***), diversas personas (y la existencia de ML-TeX :-) convencieron a Knuth de que el soporte que TeX proporcionaba a otros idiomas era insuficiente. Así que lo modificó de la siguiente manera: · Soporte total a los 8 bits. TeX puede ahora leer los 256 diferentes códigos. Los nuevos caracteres son códigos utilizables como cualquier otro. Antes había algo, pero no bastante. Ahora podemos hacer que ^^e1 sea la á. · TeX soporta ahora 256 tablas de partición simultáneamente. Puedes escribir: ... there is a difference between especially and {\lan- guage\spanish especialmente} in that... y TeX compondrá el párrafo con las reglas de inglés, menos especial- mente que lo hará con las del castellano. · Dos nuevas macros \lefthyphenmin y \righthyphenmin que controlan el tamaño del trozo mínimo que se puede dejar al partir palabras. Previamente estaban fijos a 2 y 3, respectivamente. Pero lo fundamental es que TeX 2.X no existe ya. Hay que cambiar tarde o temprano. No hay parches ni arreglos para TeX 2.X. Por cierto, la versión actual es la 3.14159, y la versión actual de METAFONT es la 2.718. La última versión de TeX será la versión pi (como última voluntad de Donald Knuth), y ya no habrá más cambios. Y el último METAFONT será versión e. 1.3. Si TeX es tan bueno, ¿por qué es gratuito? Porque Knuth lo decidió así, y no parece molestarle que otros ganen dinero vendiendo productos y servicios basados en TeX. De hecho, aunque algunas herramientas que se usan junto a TeX se ofrecen bajo la GNU General Public License (Copyleft), TeX en sí ni siquiera tiene esa restricción. La única restricción impuesta por Knuth es que debe dar el mismo resultado en todas las implementaciones, para garantizar la absoluta portabilidad de los documentos escritos con TeX. Algunas empresas ofrecen implementaciones comerciales de TeX/LaTeX con elementos propios (véase la sección ``Implementaciones comerciales'') 1.4. ¿Qué es LaTeX? LaTeX es un paquete de macros para TeX, originalmente escrito por Leslie Lamport para proporcionar un sistema de procesamiento de documentos más simple de uso que TeX, pero con toda su potencia. LaTeX proporciona una serie de órdenes para describir la estructura del documento, de forma que el usuario final no deba pensar mucho en la presentación. Mediante distintas clases de documentos y paquetes adicionales, el mismo documento puede producirse con muchos diferentes aspectos. 1.5. ¿Qué es LaTeX2e?, ¿Por qué debo usarlo si me va bien con el otro (LaTeX209)? LaTeX2e es la nueva versión estándar de LaTeX, preparada y mantenida por el equipo del proyecto LaTeX3. Es la versión actual de LaTeX y está disponible desde cualquier punto CTAN, en CTAN:macros/latex Desde que es oficial, LaTeX = LaTeX2e y el otro ahora se llama LaTeX 2.09 y está obsoleto. LaTeX2e es compatible hacia atrás con LaTeX209, pero incluye toda una serie de características nuevas. Hay una razón de peso para no usar LaTeX 2.09: Solamente LaTeX está mantenido, lo cual quiere decir (entre otras cosas) que si encontramos un error hay gente a quien decírselo y puede que lo arreglen, mientras que si tenemos problemas con LaTeX 2.09 nadie nos hará caso, porque LaTeX 2.09 ya no va a cambiar jamás. 1.6. ¿Qué son los paquetes de la AMS (AMS-TeX, AMS-LaTeX)? AMS-TeX es un paquete de macros para TeX. Escrito originalmente por Michael Spivak para la Sociedad Americana de Matemáticas (AMS) entre 1983 y 1985. Está basado en plain TeX, pero proporciona más medios para producir fórmulas matemáticas de aspecto profesional con menor esfuerzo por parte de los autores, con un gran cuidado en aspectos como el tamaño y la posición de las fórmulas. Entre los aspectos tratados se encuentran las ecuaciones de más de una línea, la numeración de ecuaciones, los puntos de elipsis, las matrices, los acentos dobles, sub y superíndices en varios niveles, así como otras cosas. Según fue aumentando la popularidad de LaTeX la AMS desarrolló AMS- LaTeX, que consiste en una colección de clases y paquetes para LaTeX que ofrece a los autores la funcionalidad de AMS-TeX. 1.7. ¿Qué es METAFONT? Donald Knuth escribió METAFONT al mismo tiempo que TeX. Mientras TeX define la colocación de los elementos en una página, METAFONT define cómo son estos elementos, sus tamaños y cómo se crean. El lenguaje utilizado por METAFONT para definir tipos permite describir distintas cosas, la geometría del grafo, las propiedades del elemento de impresión, información adicional que permita distinguir entre distintos tamaños del mismo tipo, o diferencias entre dos tipos que pertenecen a la misma o distinta familia. Aunque Knuth y otros han diseñado un buen número de tipos utilizando METAFONT, el diseño de tipos en general y en particular con METAFONT es un área muy especializada que nunca deberá abordar el usuario normal. Simplemente METAFONT deberá estar instalado para cuando TeX quiera generar copias de nuevos tipos. 2. ¿Qué ventajas e inconvenientes tiene TeX/LaTeX? 2.1. Ventajas frente a otros procesadores. Además de las ventajas que aquí se describen, en la página http://www.cudenver.edu/~hgreenbe/courses/texinfo/wordvslatex.html se recopilan (en inglés) buen numero de mensajes con una información detallada de las razones que han llevado a toda una serie de personas a utilizar LaTeX Funciona y es estable y multiplataforma. Tan simple como eso, LaTeX no se cuelga, el formato de los archivos es mucho más estable que en otros procesadores y cualquier cambio es primero profundamente meditado y después profusamente documentado, existen implementaciones para distintas plataformas y en todas el resultado es exactamente el mismo (si se tienen los mismos estilos y tipos, claro). Alta calidad en la edición de ecuaciones. Esta es siempre la razón última por la que un usuario científico se inclina hacia LaTeX. Este procesador ajusta los tamaños de paréntesis, integrales, subíndices y superíndices, alinea los elementos de las matrices, construye cajas, etc. LaTeX permite redactar fácilmente documentos estructurados. A través de distintas clases de documento y de su conjunto de macros, LaTeX posibilita escribir textos dividiéndolos en capítulos, secciones, subsecciones, controlando en todo momento la numeración y las referencias cruzadas. Construye índices de contenidos, tablas o figuras. Ajusta los tamaños y tipos de letras según la parte del documento en que se hallen. Facilidad en la construcción de macros y órdenes. A poco de comenzar a usar este procesador, el usuario se encuentra definiendo o redefiniendo órdenes para que éstas se ajusten a sus preferencias personales. Por ejemplo, es posible que una determinada expresión aparezca repetidas veces en el texto. Nada mas fácil que definir una orden que reemplace a todo un bloque. O bien, es posible que no guste la forma en que LaTeX numera las páginas. Una redefinición al principio del documento permite cambiar esto. Se escribe en ASCII. Esto, que al principio puede parecer un inconveniente (ya que implica teclear mucho más) se torna en ventaja al cabo del tiempo. Por un lado permite incrementar la velocidad de escritura (pues no hay que andar utilizando ratón o menús), por otro facilita el uso de cualquier editor de texto (no contiene caracteres de control) y permite su transmisión por correo electrónico (puede escribirse en ASCII de 7 bits). Esto hace que muchas revistas científicas admitan artículos escritos en LaTeX, enviados por e-mail. Ellos lo procesan en el lugar de destino, hacen los cambios necesarios y lo imprimen. Es gratis Pues eso. Para ver porqué véase la sección ``¿Porqué TeX es gratis?''. A pesar de ello, existen también implementaciones comerciales. 2.2. Inconvenientes o más bien, ¿cuáles son las críticas más habit- uales? Es muy difícil. A diferencia de los procesadores visuales o WYSIWYG, que pueden usarse casi desde el primer día con resultados aceptables, LaTeX requiere un periodo de aprendizaje antes de conseguir los primeros frutos. Incluso cuando ya se es un usuario medio o avanzado, siempre es conveniente tener cerca un manual o un LaTeXperto, al que preguntarle. Este proceso de iniciación consiste principalmente en aprenderse las órdenes esenciales. Después le siguen órdenes secundarias. Más tarde, puede uno aprender a programar en este lenguaje. Llegado ese punto se puede dar el siguiente salto, atacar el plain-TeX o incluso el TeX, para introducir órdenes de muy bajo nivel, pero esto muy rara vez lo necesitará un usuario normal. Estas dos ultimas fases sólo son precisas si uno está interesado en los intríngulis del sistema y los intríngulis de LaTeX se le quedan cortos. La contrapartida de este esfuerzo es que cuando se trabaja con LaTeX y se compara el resultado con lo obtenido con otros procesadores, la salida de éstos últimos parece "poco seria" en cuanto se exigen fórmulas matemáticas. Algo como los dientes, que duelen al salir, pero luego se hacen imprescindibles. No se ven los resultados hasta que se compila el archivo. Una de las decepciones que sufre el usuario novato es que no ve los frutos de su trabajo hasta que compila. Como suelen aparecer errores de compilación, esto suele ser frustrante (aparte de conllevar una pérdida de tiempo). La única solución es armarse de paciencia. Con el tiempo, los errores disminuyen y, simultáneamente, se aprende a procesar de cabeza, por lo que no se necesita hacer una visualización para saber como va a quedar. De todas formas, LaTeX no está especialmente dirigido a los aspectos puramente estéticos de cada página en concreto, sino a los estructurales del documento. Si uno está interesado estrictamente en la estética (por ejemplo, porque trabaja en la autoedición), LaTeX no es el procesador adecuado. Éste basa la belleza de los documentos creados más en la claridad, en el buen criterio y en una estética agradable que en la posibilidad de hacer fácilmente diseños rebuscados para cada página. Existen, no obstante, soluciones intermedias entre LaTeX y los procesadores WYSIWYG. Así, el TeXtures de los Mac, el xdvi de las X-Window bajo Unix o los dviwin, yap o winview de los PC's permiten mantener en pantalla el archivo que se está editando y la visualización del último, lo cual facilita la corrección de los documentos. No permite introducir imágenes. Esta acusación habitual no es en absoluto cierta. Simplemente hay que ser conscientes de los medios de visualización e impresión de que disponemos y obrar en consecuencia. Véase la sección ``Introduciendo figuras en LaTeX'' Lo que no debe olvidarse nunca es que tanto TeX como LaTeX están pensados como lenguajes de composición de documentos, no de autoedición. A cada cual lo suyo. No tiene variedad de tipos (fuentes) Es cierto que los tipos CM originalmente desarrollados por Knuth son limitados en cantidad y variedad, por lo que a medida que LaTeX se difundía han aumentado las demandas de más tipos para usos diversos. Aunque el crecimiento es todavía lento, existe una gran cantidad de tipos disponibles en el CTAN en: CTAN:fonts En las versiones para salidas postscript si es posible el uso de cualquier tipo, pero no se garantiza que las ecuaciones mantengan la calidad requerida. 3. ¿Qué documentación hay disponible sobre TeX/LaTeX? Además de las referencias que aquí se citan, puede consultarse la sección de manuales en las páginas de CervanTeX, http://www.cervantex.org/manuales.php 3.1. Tutoriales de LaTeX en castellano. Una descripción de LaTeX Tomás Bautista (bautista _AT_ cma.ulpgc.es) ha escrito un documento titulado Una descripción de LaTeX (basado inicialmente en LaTeX-Kurzbeschreibung, de H. Partl, E. Schlegl e I. Hyna), donde se han introducido algunas notas específicas de la implementación del estilo spanish.sty desarrollado por J. Sánchez. Este documento se encuentra en CTAN (en CTAN:documentation/short/spanish) y la versión más actualizada está siempre en ftp://ftp.iuma.ulpgc.es/pub/tex/latex2e/doc/ldesc2e/ Apuntes. Manual de LaTeX Preparado en Chile y disponible en http://cipres.cec.uchile.cl/~admcons/manuales/latex.html Bases de datos bibliográficos, LaTeX y el idioma español Luis Seidel Acerca del uso de BibTeX en castellano. Disponible en postscript en la página del autor y en formato pdf en la Universidad de la Rioja: http://feynman.faii.etsii.upm.es/~seidel/bibliogr.ps ftp://tex.unirioja.es/pub/tex/doc/bibliogr.pdf Curso de LaTeX Kjetil Halvorsen. Transparencias de un curso de LaTeX disponibles en ftp://tex.unirioja.es/pub/tex/doc/cursotex.zip Recetario para LaTeX por Aristarco. Disponible en http://recetariolatex.cjb.net Referencias rápidas de LaTeX por Fernando Arbeiza. Disponible en http://www.loarco.homelinux.org/lqref-es 3.2. Libros en castellano Iniciación a LaTeX2e Javier Sanguino Botella, Addison-Wesley (1997) Composición de textos científicos con LaTeX. G. Valiente. Edicions UPC, Barcelona, 1997 LaTeX, primeros pasos. F. Ortegón Gallego. Editorial Masson, Barcelona 1.992. (Sobre LaTeX 2.09) LaTeX, una imprenta en sus manos. Bernardo Cascales Salinas, Pascual Lucas Saorín, Jose Manuel Mira Ros, Antonio Pallarés Ruiz y Salvador Sánchez-Pedreño Guillén. Aula Documental de Investigación, Madrid, 2000. El libro de LaTeX. Bernardo Cascales, Pascual Lucas, José Manuel Mira, Antonio Pallarés y Salvador Sánchez-Pedreño. Prentice Hall, Madrid, 2003. El universo LaTeX. Rodrigo De Castro. Facultad de Ciencias, Universidad Nacional de Colombia, Bogotá, 2003. 3.3. Tutoriales en otros idiomas A Gentle Introduction to TeX de Michael Dobb, disponible en CTAN:documentation/gentle. Es un excelente tutorial de introducción al plain-TeX en inglés. Una referencia clásica de TeX Simplified Introduction to LaTeX de Harvey J. Greenberg, disponible en CTAN:documentation/simplified-latex/latex.ps (versión postscript) y la versión más reciente en http://www.cudenver.edu/~hgreenbe/aboutme/pubrec.html. Basado en un curso para pregraduados. LaTeX: from quick and dirty to style and finesse Escrito por Tony Roberts, se encuentra disponible en la Universidad de Southern Queensland (Australia) http://www.sci.usq.edu.au/staff/robertsa/LaTeX/ con una réplica en Estados Unidos http://ricardo.ecn.wfu.edu/LaTeX/. LaTeX for Word Processor Users Escrito por Guido Gonzato, es un tutorial LaTeX pensado específicamente para usuarios de procesadores de texto. Está disponible en CTAN:info/latex4wp l2tabu Escrito por Mark Trettin, es un tutorial sobre lo que no debe hacer un usuario de LaTeX2e. Disponible en el CTAN como un archivo pdf, http://www.ctan.org/tex-archive/info/l2tabu/. Contiene una lista de órdenes y paquetes obsoletos que no deben utilizarse bajo LaTeX2e, así como otros errores habituales. Online tutorials on LaTeX del grupo de usuarios de TeX de la India, disponible en http://www.tug.org.in/tutorials.html. 3.4. Libros en otros idiomas A Guide to LaTeX H. Kopka y P.W. Daly, Addison-Wesley Professional (2004) Probablemente, el mejor manual existente sobre LaTeX. Contiene una guía completa de órdenes, abundantes ejemplos e información adicional. (Incluye las dos versiones en uso de LaTeX, LaTeX2e y la más antigua, LaTeX2.09). The LaTeX Companion. Frank Mittelbach, Michel Goossens, Johannes Braams, David Carlisle, Chris Rowley, Addison Wesley Professional (2004). Este manual sirve de ampliación del anterior. Es una recopilación e información sobre los llamados paquetes (packages), conjuntos de macros que distintos autores han puesto a disposición pública. The LaTeX Web Companion: Integrating TeX, HTML, and XML Michel Goossens, Sebastian Rahtz, Eitan M. Gurari, Ross Moore y Robert S. Sutor, Addison Wesley Professional (1999). Publicando documentos en la WWW mediante LaTeX LaTeX--A Document preparation system L. Lamport (dos ediciones) Addison-Wesley (1985 y 1994). Durante mucho tiempo este fue "el libro" del LaTeX. Escrito por el mismo autor del programa, contiene todo lo esencial para introducirse en este procesador, si bien resulta un tanto insuficiente para usuarios avanzados. La primera edición corresponde a la versión antigua del programa (LaTeX209, hoy obsoleta) y la segunda al LaTeX2e. The LaTeX Graphics Companion M. Goossens, S. Rahtz y F. Mittelbach, Addison-Wesley (1997). Un extenso manual acerca de cómo ilustrar documentos con TeX y postscript. The TeXbook D.E. Knuth, Addison-Wesley (1986). Este es "el libro" para los que quieren conocer las entrañas de TeX. Contiene todo sobre el lenguaje TeX, escrito por el mismo autor del programa. Es un libro completo y ameno pero absolutamente incomprensible para los novatos. El archivo fuente en TeX de este libro está disponible para aquellos que desean conocer los trucos que el autor empleó a la hora de escribirlo (algunos verdaderamente complejos). Knuth proporciona el código fuente con fines didácticos, no para que se imprima. De hecho, si se intenta TeXearlo entrará en un bucle infinito que dice que eso no debe hacerse. Aunque no es complicado hacer que deje de ocurrir, sería ilegal hacerlo... :-) TeX by Topic, A TeXnician's Reference de Victor Eijkhout, editado por Addison-Wesley (1992) y disponible en http://www.eijkhout.net/tbt/, es otro de los libros clásico sobre TeX (no LaTeX) que puede descargarse gratis (y legalmente) en un pdf. TeX for the Impatient de Karl Berry, también está disponible en CTAN:info/impatient/ de forma libre. Making TeX work de Norman Walsh, editado por O'Reilly (ISBN: 156592-051-1), pero actualmente descatalogado. Sin embargo está disponible de forma libre en http://makingtexwork.sourceforge.net/mtw/. Aunque algunas cosas están obsoletas, (de hecho todavía se refiere a LaTeX 2.09), tanto su contenido como sus fuentes pueden aún ser de utilidad. 3.5. Revistas. The PracTeX Journal Una revista de TeX on-line y gratuita. Disponible en http://dw.tug.org/pracjourn/. 4. ¿Que elementos intervienen al procesar un documento con LaTeX? 4.1. El documento fuente: ¿Cómo creo un documento con LaTeX, lo pro- ceso, lo veo y lo imprimo? Como hemos dicho TeX/LaTeX es realmente un lenguaje de programación de textos. En el documento fuente original se introduce el texto a procesar junto con una serie de órdenes especificando cómo debe ser procesado éste. Este paso se realiza con el editor de texto favorito del autor, aunque hay algunos editores de texto que están, mejor adaptados, o totalmente integrados para su uso con TeX/LaTeX -- véase ``editores para TeX'' --. Pongamos por ejemplo que el documento creado es documento.tex. Una vez terminado el documento fuente (documento.tex), éste se procesa mediante TeX si se han utilizado las órdenes de plain-TeX o LaTeX si se han utilizado las órdenes de LaTeX. Se corrigen los posibles errores de sintaxis y se repite el proceso hasta que éstos se han eliminado. Como resultado del procesamiento se tiene un archivo independiente del dispositivo, o DVI (documento.dvi). 4.2. ¿Qué es un archivo DVI? Un archivo DVI es el archivo resultante de procesar el texto fuente a través de TeX. Su forma no depende del dispositivo que se vaya a utilizar para verlo/imprimirlo. Un archivo DVI está pensado para ser leído por un conversor que produzca una salida adecuada para una determinada impresora, o para un determinado visualizador en la pantalla del ordenador. Los archivos DVI utilizan una codificación interna de TeX, de forma que un documento fuente debe producir exactamente el mismo archivo DVI, con independencia de la implementación de TeX que se utiliza para producirlo. Un archivo DVI contiene toda la información necesaria para imprimir o ver el resultado, excepto los tipos o su aspecto concreto (aunque contiene sus medidas) o información que se introducirá mediante una orden \special -- véase ``¿Qué son los \special?''. 4.3. ¿Qué es un conversor (driver)? Un conversor es un programa que toma su entrada de un archivo DVI y produce un archivo que puede enviarse a una impresora o una salida directa a una pantalla. Estos conversores normalmente son específicos a cada impresora o lenguaje de impresora. Por ejemplo, una impresora postscript entenderá siempre la salida de un conversor postscript, pero en general no de otros formatos. Al igual que el archivo DVI, el conversor necesita información sobre los tipos que puede encontrar en distintos lugares. 4.4. ¿Qué son los archivos .pk ? Los archivos .pk (cuyo nombre viene de packed raster) contienen tipos de letra en forma de mapa de bits. METAFONT produce una salida en mapa de bits en un formato no comprimido denominado .gf, que es convertido a .pk mediante una utilidad denominada gftopk. Para cada diseño de letra, tamaño, peso y familia es necesario un archivo .pk distinto, e incluso para distintos dispositivos de salida. Como consecuencia de ésto se guardan en una estructura compleja de directorios, o en librerías de tipos, para normalizar el acceso a las mismas. 4.5. ¿Qué son los archivos .tfm ? tfm es la abreviatura de TeX font metric, métrica de los tipos TeX. Los archivos .tfm guardan la información acerca de los tamaños de los caracteres en cada tipo, así como las ligaduras y desplazamientos dentro de cada tipo. Se necesita un archivo .tfm para cada tipo utilizado por TeX, es decir para cada diseño, peso y familia, aunque uno valga para todas las magnificaciones. TeX utiliza los archivos .tfm para componer la página, pero en general los conversores no los necesitan. 4.6. ¿Qué son los tipos (fuentes) CM? Los tipos CM son los tipos originalmente creados por Donald E. Knuth. Cuando desarrolló TeX, lo acompañó de este conjunto completo de tipos de alta calidad. Estos tipos eran independientes de la impresora utilizada (ya que eran tratados como gráficos) lo que producía la misma calidad en cualquier sitio. Con el tiempo, estos tipos (los Computer Modern o CM) se convirtieron en la firma del procesador, que permitía identificar un documento a primera vista. 4.7. ¿Qué son los tipos (fuentes) EC/DC? Son fuentes del tipo de las Computer Modern, pero con 256 caracteres, que cubren las necesidades de casi todas las lenguas habladas en Europa y algunas otras que utilizan el alfabeto latino. Su nombre viene de European Computer Modern Fonts. Dichas fuentes contienen caracteres acentuados siguiendo el esquema de codificación de Cork. Han estado durante bastante tiempo en periodo de pruebas y durante ese tiempo se llamaban DC. Ya se distribuyen normalmente al público en general, con el nombre EC, y a partir de ese momento las DC se consideran obsoletas. Estas fuentes ya están presentes en las distribuciones modernas de TeX/LaTeX, pero en caso de que se trabaje con una distribución antigua pueden conseguirse en: CTAN:fonts/ec/ready-mf y los archivos tfm para LaTeX están en CTAN:fonts/ec/tfm Si tenemos tipos de Cork (PostScript, DC, etc.) y queremos utilizar esta codificación en las fuentes de salida se debe introducir en el preámbulo del documento la línea \usepackage[T1]{fontenc} 4.8. ¿Qué son los tipos (fuentes) virtuales? Los tipos (fuentes) virtuales proporcionan a TeX una forma de trabajar con algo más complejo que los caracteres individuales definidos en un tipo. En un tipo virtual se definen a partir de elementos simples de los tipos normales, elementos más complejos que TeX considerará como si fueran elementos de un tipo normal (tienen sus tamaños y su archivo .tfm de métrica), pero que en realidad el procesador del DVI compondrá a partir de distintos elementos constituyentes para formar a partir de ellos el elemento complejo descrito en el tipo virtual. De esta forma es posible remapear caracteres, hacer un tipo compuesto con elementos tomados de distintos tipos o en general construir elementos muy complejos a partir de elementos simples de los distintos tipos. Por ejemplo se utilizan tipos virtuales para remapear tipos postscript. TeX en sí no ve los tipos virtuales, únicamente trabaja con las métricas que le da el tipo virtual en su .tfm como si se tratara de tipos normales. 4.9. ¿Qué son las órdenes \special ? TeX proporciona una forma de expresar cosas que los conversores pueden hacer, pero de las que TeX no sabe nada. Por ejemplo TeX no sabe cómo introducir figuras postscript en un documento o cómo cambiar el color del texto impreso, pero algunos conversores sí saben cómo hacerlo. Para ello TeX proporciona la orden \special. TeX simplemente entiende la orden como correcta y la pasa con sus argumentos al archivo DVI, sin hacer nada de lo que en ella se dice. Es el conversor el que debe interpretar la orden y hacer lo que se le pide. La sintaxis de los \special es fuertemente dependiente del dispositivo de salida y en general no es válida para distintos dispositivos. LaTeX2e proporciona paquetes estándar de gráficos (graphics, graphicx) y manejo de color (color), que hacen más fácil la inclusión de gráficos, rotación, reescalado y cambios de color --Véase la sección ``Introducir gráficos con LaTeX''. 4.10. ¿Qué es el postscript y el postscript encapsulado (archivos .eps )? PostScript (PS) es un lenguaje de programación para describir páginas. Como lenguaje estructurado permite la programación (tiene estructuras de control y bucles), y recuerda el lenguaje de programación FORTH. Originalmente fue desarrollado por Adobe. Existen varios intérpretes de PostScript que permiten la visualización de este formato. El más extendido es Ghostscript (GS), de Aladdin, del que puede obtenerse información en http://www.cs.wisc.edu/~ghost/index.html y en http://www.aladdin.com cuando acaben de construirla. El formato PS se basa en describir cada página desde un origen de coordenadas que se sitúa en la esquina inferior izquierda de la página. PS permite, sin embargo, redefinir el origen, de forma que se puede recomenzar la descripción de un bloque de una página desde un origen arbitrario. PS encapsulado (EPS) es el formato estándar para importar y exportar archivos PS en cualquier tipo de entornos. Usualmente es un archivo que contiene una sola página que describe una figura. El archivo EPS está especialmente pensado para incluirlo en otros archivos PS, y es como cualquier otro archivo PS con algunas restricciones. La FAQ de PostScript puede alcanzarse en http://www.lib.ox.ac.uk/internet/news/faq/comp.lang.postscript.html, de donde está tomado mucho de lo anterior. 4.11. ¿Qué es el formato pdf ? PDF (Portable Document Format) es, como su nombre indica, un formato de archivos transportable entre distintas plataformas, creado por Adobe y especialmente diseñado para visualizar documentos tal y como se han diseñado. Permite usar colores, gráficos, seguir enlaces e imprimir pero, fundamentalmente, permite ver en la pantalla los documentos, siendo un formato compacto. Es muy similar a PS, pero no tiene capacidades de programación. En relación con TeX, PDF es un formato que sustituye al DVI -- ver la pregunta ``¿Qué es DVI?'' -- en la salida de TeX. En la web hay información abundante sobre PDF en http://www.pdfzone.com/webring/. Los visualizadores de PDF más recomendables son Adobe Reader (antes Acrobat Reader), de Adobe, gratuito (http://www.adobe.com), xpdf http://www.foolabs.com/xpdf/home.html y Ghostview http://www.cs.wisc.edu/~ghost/index.html. 4.12. ¿Qué son los paquetes en LaTeX? Escribir un documento a base de primitivas TeX puede resultar extremadamente engorroso. LaTeX utiliza las primitivas de TeX para definir otro conjunto de comandos más amigable, para las tareas más habituales (definir capítulos, tablas, listas enumeradas...). No obstante, LaTeX no incluyó nuevos comandos de alto nivel para cualquier tarea imaginable, sino que se hizo extensible a base de paquetes, de forma que hay un cuerpo de LaTeX y unos añadidos en forma de paquetes. Un paquete es un fichero que contiene más código, que se incluye en el preámbulo del documento (con \usepackage{nombre- de_paquete}),y que define nuevos comandos basándose, ya sea en las primitivas de TeX o en los comandos previamente definidos por LaTeX. La distribución de TeX/LaTeX instalada en el sistema ya incluirá una buena cantidad de paquetes listos para su uso. Sin embargo, pueden añadirse nuevos paquetes -- véase ``Instalación de paquetes''. 4.13. ¿Qué son los archivos .dtx ? Tanto LaTeX2e como muchos de los paquetes de macros se escriben en un lenguaje de programación ilustrada, con código y documentación en el mismo fichero. Este formato, conocido como doc se debe a Frank Mittelbach. El fichero que contiene las fuentes comentadas suele tener la extensión .dtx y normalmente debe aligerarse de la documentación antes de su uso como macro, o correr LaTeX sobre el fichero para producir una versión maquetada de la documentación. Habitualmente se suministra un fichero .ins para facilitar esto, que utiliza el paquete docstrip. Pueden incluirse varios paquetes dentro de un mismo fichero .dtx. Para más información acerca de cómo extraer el contenido de un fichero .dtx véase ``extraer de un .dtx''. LaTeX no utiliza los ficheros .dtx una vez procesados para producir los .sty o .cls, por lo que no es estrictamente necesario tenerlos instalados, aunque puede ser recomendable, ya que son siempre la principal fuente de información sobre el paquete. 5. ¿Cómo consigo LaTeX y otros programas relacionados? 5.1. Distribuciones TeX/LaTeX En principio se podría coger todo el sistema elemento a elemento y ponerlo todo en común. Sin embargo, para que ésto funcione correctamente, el tiempo requerido y la complejidad del trabajo son grandes. Por esta razón algunas personas o empresas ya lo han hecho y lo ofrecen preparado en lo que se denominan distribuciones. Se entiende por distribución un conjunto de binarios y paquetes de macros LaTeX junto con otras utilidades adicionales, empaquetados de forma coherente y organizada, para que trabajen en común de la forma más eficiente posible. Hay distribuciones de libre distribución, shareware (se puede distribuir y probar, pero si se quiere usar regularmente es necesario pagar el registro) y otras de distribución comercial. Aunque algunas de las distribuciones comerciales tienen características adicionales sobre las distribuciones libres, a veces es al contrario. Aunque algunas distribuciones están disponibles para distintos sistemas operativos, lo más habitual es que estén limitadas a un sistema operativo. Las distribuciones libres o shareware pueden conseguirse en el CTAN -- véase ``¿Qué es el CTAN?'' --, o a través de los CD-ROM editados por distintos grupos de usuarios de LaTeX, mientras que las comerciales se consiguen a través de sus respectivos distribuidores o directamente si no los hay. Para buscar distribuciones para los distintos sistemas operativos, la estructura de un nodo CTAN es siempre la misma. Existe un directorio tex-archive del cual cuelga un árbol de directorios. En particular, existe un directorio systems, del que penden las distintas implementaciones. Existen versiones para Atari Amiga UNIX VMS Os2 Windows NT Mac MS-DOS No es necesario tener una acceso de red para acceder al CTAN. El grupo de usuarios alemanes de TeX (DANTE) ha hecho una recopilación en CD- ROM del contenido del CTAN. Las edición de 1999 y posteriores se han distribuido a través del grupo de usuarios CervanTeX. Para mayor información se puede consultar la página web del grupo CervanTeX 5.1.1. Distribuciones libres o shareware Unix teTeX es, para sistemas Unix la elección más multiplataforma. Se puede encontrar en CTAN:systems/unix/teTeX y contiene por un lado una serie de archivos que no dependen del sistema operativo y por otro lado binarios para toda una serie de sistemas operativos Unix. Linux Aunque lo que se acaba de decir de Unix es también válido para Linux, recalcar además que en las principales distribuciones de Linux vienen paquetes de teTeX listos para instalar y utilizar sin apenas esfuerzo. Antes también había otra distribución denominada NTeX. Es necesario tener un especial cuidado y no utilizar la incluida en el CD-ROM de Slackware'96, que incluía una versión de las fuentes CM que no respetaba las condiciones de distribución y cambiaba la métrica respecto de las estándar sin cambiar el nombre, rompiendo la portabilidad de los documentos. En la práctica este aviso debe estar ya obsoleto. Mac Los Macs modernos ya no utilizan el sistema operativo clásico sino uno basado en *BSD unix (Mac OS X), con una capa gráfica que no son las X-Window (pero que también se pueden poner). Por este motivo muchas aplicaciones unix clásicas se han adaptado con facilidad a Mac OS X, entre ellas teTeX. La página http://www.rna.nl/tex.html tiene una gran cantidad de información sobre el uso de TeX en Mac OS X, incluyendo un instalador de teTeX. Se necesita un editor que se comunique bien con TeX, como los que se mencionan más adelante. Otras páginas muy interesantes son http://www.esm.psu.edu/mac-tex/default.html y http://latex.yauh.de/index_en.html. Para Mac clásicos sigue existiendo OzTeX. Éste es una versión shareware de TeX para los ordenadores Macintosh clásicos. Incluye un visualizador de dvi y un conversor a postscript. Está disponible en CTAN:non-free/systems/mac/oztex. Su página original está en http://www.trevorrow.com/oztex/ DOS/OS2 emTeX es, para sistemas DOS la distribución más extendida. Puede encontrarse en CTAN:systems/msdos/emtex, aunque desde hace tiempo no se ven versiones nuevas. gTeX era otra distribución para DOS, pero recientemente ha sido retirada de CTAN a petición de su creador. También está emTeX-TDS, que no es más que un árbol de archivos de estilo para TeX/LaTeX preparado para ser utilizado con los binarios de emTeX. Win32 · MikTeX de Christian Schenk es también una distribución completa independiente de teTeX. tiene su propio visualizador yap que permite imprimir, aunque también se incluye dvips. Está disponible en CTAN:systems/win32/miktex. Si se tiene conexión de red, las últimas versiones permiten traer e instalar paquetes sobre la marcha según se van necesitando. Para obtener información sobre la instalación de un sistema LaTeX (mikTeX) en Windows puede consultarse la página http://www.udlap.mx/~ma108907/latex/winlatex.html. · XEmTeX, de Fabrice Popineau, es una distribución integrada de TeX, LaTeX, ConTeXt, Xemacs y otros programas para Windows. Todos los programas han sido compilados de forma nativa para optimizar el rendimiento bajo Windows. Se suministra configurado para que funcione nada más instalarse. Su página es http://www.fptex.org/ · fpTeX de Fabrice Popineau era una versión de teTeX para Windows. Sin embargo, su autor lo ha dejado de lado para concentrarse en XEmTeX. De momento sigue disponible en CTAN:systems/win32/fptex, pero ya no está mantenido. 5.1.2. Distribuciones comerciales Windows · Scientific WordScientific Word/WorkPlace/Notebook ofrece una forma de trabajo tipo casi WYSIWYG con un procesador TeX en segundo plano. Más información en http://www.sciword.demon.co.uk/. Incluye TrueTeX. Aunque proporciona un entorno amistoso para la escritura de documentos, en algunos casos integrado con maple para realizar cálculos simbólicos, es muy rígido cuando es necesario salirse de los estilos estándar proporcionados con SW y no es fácil compartir archivos LaTeX generados con SW con otras personas que no lo usen, porque necesitan una serie de paquetes específicos. Además, los argumentos opcionales de algunas macros dan error en SW, aunque dependiendo de uso que se le de, ésto puede no aparecer. A pesar de todo, puede ser útil para una persona que no quiere hacer cosas complicadas. 5.2. Editores de texto que trabajan especialmente bien con LaTeX Unix · GNU emacs o xemacs utilizado en combinación con el paquete AUCTeX (disponible en CTAN:support/auctex) o como un paquete ya incluido en muchas distribuciones) proporciona menús desplegables y secuencias de control para las estructuras habituales, verifica sintaxis y la muestra coloreada, permite llamar a TeX y a los conversores desde el editor y mucho más. Complejo, pero muy potente. Joaquín Ataz ha escrito un manual para su uso con LaTeX, Creación de ficheros LaTeX con GNU Emacs, disponible en CTAN:info/spanish/guia-atx/guia-atx.pdf · kile Trabaja sobre cualquier plataforma con KDE instalado y según la documentación, hasta en OS-X... Tiene opciones para compilación y conversiones con una única pulsación de tecla, se pueden personalizar las órdenes y se integra con cualquier visualizador dvi, ps o pdf que tengamos. Disponible en la mayor parte de las distribuciones Linux y en http://kile.sourceforge.net. Mac Para Mac OS X hay algunos editores que se entienden bien con TeX · TeXShop Muy majo y en castellano. Se encuentra en http://www.uoregon.edu/~koch/texshop/. · iTeXMac Tiene más cosas, pero es más lento y hay muchos mensajes de "aún no implementado". Se encuentra en http://itexmac.sourceforge.net/. DOS/OS2 TeXshell es un entorno de trabajo simple y fácilmente personalizable que puede ser utilizado con el editor favorito de cada uno. También cuenta con un editor propio que permite seguir los errores de la compilación fácilmente aunque no soporta archivos de más de 64K. Aunque puede particularizarse a otras distribuciones, viene muy preconfigurado para emTeX. Win32 · winedt es un paquete shareware del que se suele oir hablar bien. Proporciona un entorno de trabajo desde el que llamar a los distintos programas y un editor potente y bien configurado · Winshell es un programa libre de prestaciones menores, pero que puede ser más que suficiente para muchos usuarios. · TeXnic Center es también un buen entorno de trabajo para Win32. Está disponible en CTAN en CTAN:systems/win32/TeXnicCenter/ Otros programas que no son editores completos, pero que ayudan a la edición son: LaTable es un ayudante de creación de tablas que permite generar el código LaTeX necesario para la creación de una tabla. La tabla se diseña en un entorno visual muy cómodo y la herramienta genera el código LaTeX que se incorpora al documento con un simple copy-paste. También permite guardar las tablas generadas para su posterior modificación. Todavía tiene detalles, pero cuenta con muchas opciones bastante útiles, y genera un código relativamente limpio... además, aunque es un programa Win32 funciona bien en Linux usando el emulador Wine. Disponible en http://www.g32.org/latable/. Es freeware de uso, pero sus fuentes no están disponibles. TeXaide para quienes sigan pensando que las ecuaciones se deben hacer con diseñadores ... (se consiguen mucho mejores resultados a mano, pero no faltan quienes abandonan LaTeX cuando se enfrentan a las ecuaciones. Según los que lo han probado, el código que genera no es en ocasiones muy limpio, pero suele funcionar bien. Es un programa Win32 que también funciona en Linux usando el emulador Wine. Disponible en http://www.dessci.com/en/products/texaide/. 6. Preguntas específicas para el LaTeX en castellano 6.1. ¿Cómo puedo usar TeX en castellano? o ¿Qué es lo mínimo que hay que saber para escribir en castellano con TeX/LaTeX? En realidad, no es necesario nada adicional que no esté ya incluido en las distribuciones más habituales. El problema normalmente se reduce a tres cosas: 1. Introducción de caracteres acentuados. Véanse las respuestas a las preguntas ``mediante órdenes LaTeX'', ``¿Cómo introducir directamente los caracteres extendidos?'' y ``acentos en modo matemático'' 2. Literales en castellano. Véase la respuesta a la pregunta ``¿Cómo cambiar los literales que LaTeX produce?''. 3. Patrones de partición de palabras (silabeo o guionado). Véase ``patrones de guionado'' donde se explica cómo hacer que TeX parta las palabras siguiendo las reglas del español. 6.2. Con LaTeX, ¿cómo puedo escribir los acentos y demás caracteres extendidos? 6.2.1. Mediante órdenes LaTeX Cuando no hay más remedio, los caracteres extendidos se escriben así: á ==> \'a Á ==> \'A ñ ==> \~n ¿ ==> ?` é ==> \'e É ==> \'E Ñ ==> \~N ¡ ==> !` í ==> \'\i{} Í ==> \'I ü ==> \"u ó ==> \'o Ó ==> \'O Ü ==> \"U ú ==> \'u Ú ==> \'U Sin embargo, ésto normalmente no es necesario. Véase la respuesta a la pregunta ``Introducir directamente los caracteres extendidos'' 6.2.2. Directamente mediante el paquete inputenc El paquete inputenc permite escribir directamente en la página de códigos habitual, convirtiéndose internamente el texto introducido a texto LaTeX, de acuerdo con las diferentes tablas de equivalencia para las distintas páginas de códigos y de forma completamente transparente al usuario. Si somos usuarios de UNIX, debemos poner al principio de nuestro documento (en lo que se denomina el preámbulo, entre \documentclass... y \begin{document}) lo siguiente: \usepackage[latin1]{inputenc} si la codificación es iso-8889-1 (también conocida como latin1). Si la codificación es utf-8, como en muchas distribuciones recientes de Linux: \usepackage[utf8]{inputenc} pero si la instalación es antigua, debe utilizarse el paquete ucs (en muchas distribuciones se le llama latex-ucs, aunque carga ucs.sty): \usepackage{ucs} \usepackage[utf-8]{inputenc} Si trabajamos con MS-Windog hay que usar cp1252 (que es casi el latin1) \usepackage[cp1252]{inputenc} (ansinew es una variante obsoleta). Si trabajamos con DOS, hay que poner esto: \usepackage[cp850]{inputenc} y si somos de Macintosh, esto otro: \usepackage[applemac]{inputenc} (aunque hay editores de Mac que guardan como latin1 o utf8). Por lo tanto, el método recomendado para utilizar caracteres de 8 bits en TODAS las plataformas en LaTeX2e es escribir: \usepackage[tipo]{inputenc} para decir qué página de códigos de entrada usamos. Ni este método ni el que se menciona en ``acentos LaTeX'' son válidos en modo matemático. 6.2.3. ¿Cómo introducir acentos en modo matemático? Para introducir acentos en modo matemático no hay más remedio que hacerlo mediante órdenes LaTeX, pero en este caso son distintas de las de la sección ``acentos LaTeX''. Por ejemplo máx se escribiría en modo matemático como m\acute{a}x y ñ como \tilde{n}. Si se quiere un acento sobre una i, tanto spanish para babel como el paquete dotlessi (CTAN:macros/latex/contrib/supported/bezos/dotlessi.sty) proporcionan la orden \dotlessi; por ejemplo, mín se escribiría m\acute{\dotlessi}n. spanish.sty ya proporciona algunas de estas palabras acentuadas, por ejemplo, después de cargar el paquete babel con la opción spanish mediante \usepackage[spanish]{babel}, $\min a$ permite escribir la palabra acentuada. También proporciona un \dotlessi que complementa a \imath. 6.3. ¿Puedo compartir mis archivos LaTeX en los que he escrito los acentos directamente? Si los caracteres acentuados están escritos mediante órdenes LaTeX pueden compartirse sin problemas, ya que se utiliza únicamente codificación de 7 bits. Si introduzco las letras acentuadas directamente como en ``utilizando inputenc'', tendré dos posibles problemas: 1. ¿Me servirá para otros ordenadores que utilicen una página de códigos diferente?, pues la segunda mitad del conjunto de caracteres es distinta de unos a otros. 2. ¿Podré enviarlo por correo electrónico?, pues solamente acepta 7 bits. ¿Cómo se soluciona esto? Con GNU recode, con MIME, o con las dos cosas, según el caso. 1. Si simplemente se quiere procesar el documento, sí que servirá para otros ordenadores: Ejemplo: Si nosotros tenemos Unix y alguien que usa Macintosh nos da (en disquete) un archivo con los códigos del Mac, nuestro LaTeX lo entenderá y lo procesará bien si lleva la llamada a inputenc, dando el resultado correcto, aunque no podamos ver correctamente el texto original con nuestro editor de texto. Si queremos además modificar el documento o simplemente ver bien o simplemente ver bien el texto sin procesar original, necesitaremos convertirlo a la página de códigos que se utilice en nuestro ordenador. Para ello recurriremos a GNU recode escribiendo: recode applemac:latin1 archivo.tex que nos convierte el documento de la página de códigos applemac a la latin1. Si ahora modificamos la línea del inputenc para que ponga latin1 en lugar de applemac todo funciona exactamente igual que antes en cuanto al resultado. ¡Magia! ¿Dónde encontrar fuentes o binarios precompilados de recode? En los siguientes lugares: fuentes En cualquier réplica del archivo GNU, en el directorio recode. DOS ftp://ftp.simtel.net/pub/simtelnet/gnu/gnuish/dos_only o en el mismo lugar en cualquier réplica del archivo simtel. DOS32 ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/ o en el mismo lugar en cualquier réplica del archivo simtel. win32 http://www.weihenstephan.de/~syring/win32/UnxUtils.html unix En caso de no tener directamente binarios precompilados, suele ser sencillo compilar el programa a partir de las fuentes para cada sistema unix concreto. 2. Para evitar problemas con el correo, siempre se puede convertir el documento a formato LaTeX antes de mandarlo por correo. Después de todo, la mayoría de lo que se escribe es para uno mismo, no para mandarlo por correo. Ejemplo: Si alguien tiene un Mac, para enviar algo por correo debe en primer lugar hacer una copia del documento (pues GNU recode machaca el original). Con la copia se puede hacer: recode -d applemac:latex archivo.tex y ya podemos enviar el archivo.tex resultante por correo. Supongamos que el receptor trabaja con Unix, tendría que escribir: recode -d latex:latin1 archivo.tex y cambiar el inputenc, en su caso. En cualquier caso, si es posible, es mucho mejor enviar el archivo directamente con acentos utilizando el estándar MIME con quoted- printable, de esta forma llega el archivo con los acentos intactos aún usando los canales habituales de 7 bits. Naturalmente debemos ponernos de acuerdo con el receptor del mensaje para que él también tenga un programa que acepte MIME, pero dado que es un estándar, todo el mundo debería acabar teniéndolo. Nota al margen: recode 3.4 no transforma correctamente de 850 a iso, porque no convierte bien los retornos de carro. A partir de la versión 3.4.1 se supone que lo hace correctamente. Si la versión de recode que tenemos es la problemática, se puede usar la opción -a de unzip para corregir los retornos de carro. Si nuestro documento no tiene mayúsculas acentuadas, se puede usar la opción ibmpc:l1 (ibmpc es sinónimo de 437). 6.4. ¿Por qué cuando se selecciona texto en Adobe Reader o xpdf, desde un documento PDF generado con LaTeX, las letras acentuadas y eñes no se copian bien? El problema aparece cuando se utiliza un tipo de letra que no utiliza la codificación T1, y desaparece cuando se usa. El tipo por omisión de LaTeX es el Computer Modern que no contiene vocales acentuadas. Cuando el texto usa por ejemplo á, LaTeX crea esta letra juntando dos caracteres, una a y un acento agudo. El aspecto en pantalla y en papel es el correcto, pero al seleccionar ese texto en el Acrobat Reader, lo que se obtiene es la secuencia 'a. Otros tipos de letra sí contienen una letra á, y si se usa este tipo y se indica a LaTeX que use la codificación T1, la selección de texto en Reader ya funcionará bien. Así que el problema se soluciona siguiendo estos pasos: · Indicarle a LaTeX que use la codificación T1. Esto se logra mediante un \usepackage[T1]{fontenc}. · Disponer de una fuente que realmente use esa codificación. Si ponemos \usepackage[T1]{fontenc} sin más en un documento, entonces LaTeX cambia el tipo por omisión, y en vez de Computer Modern, usará European Computer Modern (EC). Si este tipo está instalado, el PDF se generará sin problemas y el asunto de seleccionar texto quedará arreglado. Pero aparecerá otro problema, y es que normalmente los tipos EC que vienen instaladas en las distribuciones de LaTeX vienen sólo en formato PK, que es un formato que después se ve muy mal en el Reader (como borroso y descolocado). Para esto la solución típica solía ser usar el paquete ae, el cual instala un tipo virtual, que aparentemente usa la codificación T1 (para que LaTeX quede contento), pero que en realidad usa las fuentes CM en vez de las EC (para poder usar los tipos postscript en vez de los PK y así tener un PDF que se vea bien con el Reader). Sin embargo esta solución hace que el problema de la selección de texto reaparezca, ya que, aunque desde el punto de vista de LaTeX los tipos ae usan codificación T1, la realidad es que en el PDF final no lo usa, y la á sigue siendo una combinación de a y ' (como no podía ser de otra forma, ya que la fuente CM no tiene el carácter á). Así que en este caso el truco de usar el paquete ae no sirve, y no queda más remedio que recurrir a un tipo que realmente use la codificación T1, como los tipos Postscript estándar (Times-Roman, Palatino, etc.) Existe una versión postscript de los tipos EC, cuyo desarrollo tiene lugar junto al del lenguaje de descripción musical lilypond y están disponibles en http://www.lilypond.org/download/fonts/. Asimismo los tipos cm-super, disponibles en CTAN:fonts/ps-type1/cm-super/ también aceptan la codificación T1. Resumiendo, la solución es bien buscar y usar los tipos EC o alguno que utilice la codificación T1, o si no compensa el esfuerzo utilizar directamente los tipos Postscript estándar. Para ello basta añadir al preámbulo del documento \usepackage{times} % Usar tipo Times-Roman \usepackage[T1]{fontenc} % Usar la codificación T1 Con esto ya funcionará lo de cortar y pegar desde el Reader, aunque utilizando otro tipo de letra con otra métrica que puede cambiar la maquetación. En vez de times también pueden utilizarse palatino o bookman, dependiendo de los gustos. 6.5. ¿Cómo cambiar los literales que produce LaTeX? Cuando Lamport hizo el LaTeX original, proporcionó una serie de estilos estándar como ejemplo de uso. Estos estilos se hicieron muy populares, principalmente porque todas las instalaciones de LaTeX los tienen. Sin embargo, estos estilos utilizan unos convenios muy particulares y es fácil que un usuario desee cambiarlos. Algo especialmente molesto para el uso en castellano de los estilos estándar, es que generan determinados títulos (p.ej. Contents, Bibliography, etc.) en inglés, lo que hace inaceptable su uso. Aunque era posible crear versiones modificadas para otros idiomas, se extendió la idea de internacionalizar dichos estilos. Por ejemplo, donde ponía la palabra Contents se ha cambiado por \contentsname y se define aparte el valor de esta macro. Esta es la forma en que funciona LaTeX2e actualmente. De esta manera, es posible continuar usando los mismos estilos estándar en diferentes idiomas, simplemente redefiniendo el valor de estas macros en el documento o en un estilo aparte, por ejemplo con \renewcommand{\contentsname}{Tabla de materias} Un paquete de estilos que hace esto es babel -- Véase ``¿Qué es babel?''. Cuando se quieren hacer estos cambios en un documento que utiliza babel con spanish.sty hay que proceder de una forma un poco distinta. Véase ``Modificando los literales de spanish.sty'' 6.6. ¿Cómo hacer que LaTeX parta correctamente las palabras en castellano? 6.6.1. ¿Qué configuraciones (o patterns) existen para la partición de palabras? Lo primero que hay que decir es que la partición en castellano es algo mucho más complejo de lo que pudiera parecer a simple vista. Aunque el español es un lenguaje muy regular, tiene ciertas anomalías que convierten este tema en un campo minado. Hay dos conclusiones básicas: 1) No es posible encontrar el 100% de los cortes legales y 2) no es deseable. Para empezar, la Academia permite partir tanto por componentes (sub-ur-ba-no) como silábicamente (su-bur-ba-no). Además el concepto de sílaba es en algunos casos confuso y la etimología tampoco ayuda (Ej: su-bli-me, a pesar de derivar de sub-limis, contra sub-li-mi-nal). Sin mencionar que los conceptos de diptongo e hiato distan mucho de estar claros. Este último caso viene a carecer de importancia, pues libros de estilo consultados prescriben ignorar los hiatos al partir palabras. El siguiente comentario de Fernando M. Fournon González-Barcia es interesante para ilustrar los problemas: "La RAL dice que es POTESTATIVO lo de la separación por pre- fijos. Al menos en el esbozo, que si somos puristas y nos atenemos a la única gramática válida, la del 31, casi ni eso." "Creo que, estéticamente, lo mejor es no partir nunca, salvo cuando la cosa vaya a quedar muy fea (esta recomendación también la hace la RAL), como hace el LaTeX, y entonces par- tir lo más conservadoramente posible. Si para los poquísimos casos en que un párrafo se pone pesado y en vez de partir subur-bano hay que hacer sub-urbano, pues ..., que se haga a mano, ¿no?." "Otra cosa es que al partir surjan vocablos malsonantes. Esto SÍ que debería de comprobarlo cualquier separador de palabras, pues normalmente es muy difícil detectarlos a sim- ple vista (si es que hay tiempo para releer nuestros propios artículos). O sea, que antes que una lista de prefijos, sug- eriría la creación de una lista de tacos y cacofonías varias. :-)" Es decir, lo mejor es evitar cualquier caso conflictivo en los patrones (patterns) de uso general. Localmente puede hacerse los que se quiera, usando excepciones o introduciéndolos a mano, por ejemplo. Al día de hoy existen 4 tablas diferentes de partición: · Los producidos en 1986 por Armando Jinich, María Garza y Max Díaz de Aurion Tecnología, México. Están en el dominio público desde 1990. Pueden encontrarse en: ftp://ftp.dante.de/tex-archive/language/spanish/old/sil- aba.tex Estos patrones han sido producidos a partir de las reglas de la gramática. Actualmente no soportan explícitamente acentos. Max Díaz es actualmente max _AT_ east.aurora.com · Los producidos por Manuel Vázquez de la Universidad de Zaragoza, que puede ser localizado en (vazquez _AT_ cc.unizar.es). Estos patrones están basados en la gramática. · Los que distribuye Arbortext producidos por Sistemas Gráficos y Audiovisuales de Chihuahua. México. Estos están generados a partir de un diccionario. Soportan acentos. · Los producidos por Julio Sánchez, que pueden obtenerse en: CTAN:language/spanish/hyphen Estos soportan una variedad de opciones, incluido el soporte de acen- tos, tanto como ligaduras como con el código IS 8859/1 (ISO Latin1) para ML-TeX o TeX 3.X. Además, son los actualmente recomendados por CervanTeX. 6.6.2. ¿Cómo activo el patrón de partición de palabras para el castellano? Para activar el patrón de partición para el castellano es necesario tener babel -- Véase ``¿Qué es babel?'' -- instalado y generar el formato cargando el patrón de separación en sílabas en castellano. Esto podemos hacerlo de la siguiente manera Para TeX y LaTeX: Cambiando el archivo language.dat · Editar el archivo language.dat. Dependiendo de la distribución de TeX utilizada este archivo puede estar en distintos lugares. Por ejemplo en teTeX el árbol de TeX parte de TEXMF=/usr/share/texmf y el archivo en cuestión está en TEXMF/tex/generic/config/language.dat. En al caso de Debian/GNU-Linux, está en /etc/texmf/language.dat y el otro es un enlace a éste. · Borrar el % que está al principio de la linea spanish. Si mal no recuerdo viene preparado con silabeo en alemán, si no lo quieren pongan un % adelante. También viene predefinido inglés (o alguna de sus variantes, por ejemplo american). Éste debe estar siempre definido así que no debe desactivarse. · Es conveniente también verificar que la línea con nohyphenation está activada (sin el comentario). Ésto es muy útil cuando se quiere desactivar la partición de palabras. · En caso de tener el MikTeX, la operación es la misma, pero el archivo language.dat está en TEXMF\tex\generic\hyphen\local o en TEXMF\tex\generic\config donde TEXMF representa el punto del que parte el árbol de directorios TeX · teTeX tiene la utilidad texconfig que invocada como # texconfig hyphen latex lanza un editor para cambiar el fichero language.dat y que, al cerrar el editor, genera los formatos automáticamente, por lo que no es necesario hacer el paso siguiente explícitamente. Para LaTeX. Una vez hecho lo anterior no es necesario más que rehacer los formatos -- Véase ``¿Cómo rehacer los formatos?'' --. Entonces cuando se llame a babel con la opción spanish, éste se encargará de utilizar los patrones de guionado en castellano. Para plain-TeX Por omisión, cuando el initex crea el formato, carga el archivo hyphen.tex que contiene las reglas de silabeo en inglés. Para activarlo también en plain-TeX se debe copiar el archivo hyphen.cfg como hyphen.tex en algún sitio que en el camino de búsqueda de TeX esté antes del hyphen.tex que viene como parte de plain-TeX y asegurarse que existe el archivo ushyph1.tex (que realmente es el mismo que el hyphen.tex original, pero con otro nombre). Este paso no es necesario si sólo se quiere la partición de palabras para LaTeX y se va a utilizar babel, pero tampoco sobra. Para los usuarios de teTeX los archivos están en TEXMF/tex/config/babel/hyphen.cfg y el hyphen.tex original en TEXMF/tex/generic/hyphen/hyphen.tex Para los usuarios de MikTeX, los archivos están en TEXMF/generic/hyphen/hyphen.cfg y TEXMF/generic/hyphen/hyphen.tex En caso de no conseguirse hacer lo anterior también puede sustituirse el archivo hyphen.tex por el hyphen.cfg, pero debe tenerse cuidado al actualizar la distribución de no sobreescribir el hyphen.tex con al que venga con la distribución nueva. Entonces es necesario reconstruir el formato como se indica en ``¿Cómo rehacer los formatos?''. Cuando se quiere usar el silabeo en castellano, hay que agregar en el archivo .tex, al principio, una linea que diga \language1 si el castellano es el segundo lenguaje (no sinónimo) del language.dat (\language0 correspondería al inglés americano) 6.6.3. A pesar de que he activado los patrones de partición de pal- abras del castellano, hay una palabra que se me resiste Aunque los patrones de partición de palabras intentan abarcar el mayor número de casos posible, siempre puede quedar alguna palabra recalcitrante. También puede ocurrir que la partición sea correcta, pero no deseable a los ojos del autor del documento. En este caso hay dos posibilidades: · Si la palabra es poco frecuente y sólo falla en muy pocas ocasiones. En este caso es preferible decirle directamente a la palabra en el lugar donde aparece, dónde se le permite partirse, mediante \-. Por ejemplo: fotorrefractivo y electroóptico --> foto\-rre\-frac\-tivo y elec\-tro\-óptico · Si es una palabra frecuente que es una potencial causa de problemas en el documento. En este caso es preferible definir en el preámbulo del documento cómo se permite la partición de esta palabra de forma global para todo el documento, mediante \hyphenation. Por ejemplo: \hyphenation{foto-rre-frac-tivo,elec-tro-óptico} 6.6.4. Mi TeX no parte las palabras que tienen acentos. ¿Por qué? El primitivo \accent detiene la partición. Es posible ayudar a TeX invocando la siguiente macro después de un acento: \def\allowhyphens{\penalty10000 \hskip0pt} spanish.sty lo hace automáticamente en caso necesario. En cualquier caso, lo mejor es usar fuentes con las letras acentuadas como por ejemplo las descritas en ``DC/EC'', o ML-TeX, y patrones de partición que contemplen esto. 6.7. Acerca de spanish.sty Los archivos para escribir en castellano con babel (spanish.*) los creó y mantuvo durante mucho tiempo Julio Sánchez. Ahora esos archivos los mantiene Javier Bezos y desde hace tiempo son oficiales en la estructura de babel. Es posible que alguna distribución de LaTeX aún utilice los archivos antiguos y que haya algunas diferencias respecto de lo que aquí se describe. La actualización está más que recomendada. 6.7.1. ¿Dónde se puede obtener la documentación de spanish en castel- lano? La documentación de spanish que se incluye al componer user.drv está en inglés, pero el archivo spanish.dtx también la incluye en castellano. Basta con componer este archivo y obtendremos un detallado manual como spanish.dvi. La versión más reciente del manual de spanish.sty se encuentra en http://perso.wanadoo.es/jbezos/archive/spanish.pdf. Debe tenerse cuidado con las versiones, pues puede referirse a una versión muy posterior a la que se encuentra instalada en el sistema. 6.7.2. ¿Cómo cambio los nombres de las secciones de bibliografía, índice, etc... que pone spanish.sty ? Si no importa que este cambio no siga las características de babel y spanish de cambio de idioma sobre la marcha, etc.., se puede hacer de la misma forma que en la sección ``¿Cómo cambiar los literales que produce LaTeX?'' poniendo las definiciones después de llamar a babel. El problema de este método es que no está bien integrado con babel y por ese lado puede dar problemas, ya babel activa algunos cambios al llegarse al \begin{document}. Si embargo existe una forma más elegante e integrada con spanish y babel. En el preámbulo del documento hay que añadir lo siguiente, por ejemplo, para cambiar Bibliografía por Referencias y Tabla por Cuadro \addto\captionsspanish{% \def\bibname{Referencias}% \def\tablename{Cuadro}% } Y así con todos los nombres necesarios. La lista de nombres está en los dos lugares siguientes TEXMF/tex/generic/babel/spanish.ldf TEXMF/tex/generic/babel/spanish.tex Nunca deben modificarse los ficheros spanish.ldf y spanish.tex direc- tamente, ya que el documento resultante ya no sería universal, al procesarlo en un sistema distinto daría distinto resultado, y no sería posible acompañar el documento original con los archivos de estilo modificados puesto que la LPPL (la licencia bajo la que se distribuye LaTeX) no permite la distribución de versiones modificadas de éstos bajo el mismo nombre. 6.7.3. ¿Por qué spanish.sty pone los meses en minúscula? Ese es el uso aceptado en la actualidad. Documentos de la propia RAL lo hacen así. El María Moliner también. Véase la siguiente cita del María Moliner, 1990, "7. Aunque entre los preceptos de la G.R.A. figura el de escribir con mayúscula los nombres de los meses, de los días de la semana y de las estaciones, [...] ha dejado decididamente de usarse la letra mayúscula en uno y otro de estos casos" 6.7.4. ¿Por qué el spanish de babel reemplaza el punto decimal por una coma? Por tres razones: 1) porque las normas internacionales establecen que ha de usarse coma para los decimales, excepto en aquellos países cuya tradición hace preferible el punto (la propia ISO usa coma en sus informes); 2) porque el punto decimal en España carece de fuerza legal y sólo la coma es oficialmente válida, y 3) porque la coma es el único signo usado en la vida diaria. Probablemente, la situación es similar en otros países, salvo México. Se puede cambiar el comportamiento predefinido con la orden \decimalpoint o \spanishdecimal{.} en el preámbulo, después de cargar babel. En unas pocas materias, como el análisis númerico o la estadística, es necesario distinguir la coma decimal de la coma para separar datos; en este caso se puede aumentar el espaciado de estas últimas con: \makeatletter \def\es@decimal{{\mathchar"613B}} \mathcode`,="8000 \begingroup \catcode`,=13 \gdef,{\mkern2mu\mathchar"613B\mkern8mu} \endgroup \makeatother (Se pueden probar otros valores en lugar de 2 [antes] y 8 [después]. La unidad mu de TeX es para matemáticas [aprox. 1/18 em].) 6.7.5. ¿Por qué spanish.sty pone los números romanos siempre en mayúscula? Realmente no son mayúsculas, sino versalitas (small caps). En la tradición tipográfica española no se utilizan los números romanos en minúsculas, que se sustituyen por las versalitas. Por este motivo, el autor de spanish para babel, lo ha incluido en éste. 6.7.6. ¿Por qué spanish.sty acentúa la I de Índice? Así lo han sostenido los tratadistas más importantes sobre ortografía y tipografía desde hace más de un siglo: << La mayúsculas deben llevar la tilde que les corresponda >> (Sanmartí, 1907). La RAE finalmente lo ha considerado normativo en su ortografía de 1999: <> (p. 31). 6.7.7. ¿Por qué spanish para babel dice cuadro en lugar de tabla? Tal y como se indica en el manual, el inglés table y el español tabla son falsos amigos. Para ser más precisos, podemos reproducir lo que dice el Diccionario académico: Cuadro [...] 10. m. Conjunto de nombres, cifras u otros datos presentados gráficamente, de manera que se advierta la relación existente entre ellos. Tabla [...] 12. f. Cuadro o catálogo de números de especie determinada, dispuestos en forma adecuada para facilitar los cálculos. Tabla de multiplicar, de logaritmos, astronómica. El inglés table tiene un sentido mucho más general que el que tiene el español tabla, y así tendríamos tabla de logaritmos y tabla de multi- plicar frente a cuadro de reyes medievales y cuadro de aminoácidos esenciales. En este aspecto el español tiene más riqueza y precisión que el inglés. En fin, cuadro es todavía la forma más frecuente, la más castellana y tradicional, y la preferida por los mejores tipógrafos (Morato, Martínez Sicluna, Martínez de Sousa, etc.). Nada impide, por supuesto, redefinir el nombre si resultara que todos los cuadros de un documento son tablas, tal y como describe el manual y esta FAQ. 6.7.8. ¿Cómo consigo que babel y spanish.sty no utilicen los atajos de teclado NUNCA? Este ha sido un problema muy frecuente con babel y spanish, que ha dado como consecuencia que, por ejemplo, en las bibliografías nombres como "J.N. Apellido" aparecieran como "J.Ñ. Apellido". Para solucionar este problema, spanish ofrece ahora la orden \deactivatetilden que elimina el uso de ~ para la eñe, al tiempo que preserva su función de espacio sin división (la orden \shorthandoff de babel cancela ambos usos). El estilo spanish también proporciona más facilidades para desactivar otras abreviaciones, que están descritas en spanish.dtx, por ejemplo \deactivatequoting en el preámbulo. Sin embargo ésto y el que funcione correctamente ha cambiado mucho entre distintas versiones de babel lo que hace que a veces los documentos creados con una versión de babel no sean directamente portables a otros sistemas. Aunque es recomendable actualizarse a la última versión de spanish y babel en todos los ordenadores implicados, en caso de no poderse hacer, la siguiente línea (en LaTeX2e) en el preámbulo del documento elimina los atajos de teclado \AtBeginDocument{\gdef~{\nobreakspace{}}\catcode`\"=12} útil para documentos que se utilizarán en distintos ordenadores, alguno de ellos con versiones antiguas de babel o spanish. 6.8. ¿Cómo puedo indicar la abreviatura de los ordinales? En LaTeX2e pueden utilizarse la órdenes \textordfeminine y \textordmasculine; por ejemplo, para abreviar María, escribimos M.\textordfeminine. Una variación de estas macros ha sido incorporada a spanish.sty versión 3.0 y extendida en la versión 4.0. Se invocan como "a y "o, respectivamente, con la posibilidad de usar \sptext para casos como 1\sptext{er}. 6.9. ¿Cómo forzar sangría después de las cabeceras? El objetivo de esa sangría (indentation para los que no estén al tanto) es marcar claramente la separación de los párrafos. Como tal, es superflua después de una cabecera. Hay otros sitios en los que, no sólo es superflua, sino que es confusa, como después de un texto que ya va sangrado (entorno quote, \[ \], un array, etc.) Sin embargo, es esencialmente una cuestión de gusto. Modificarlo en un estilo es bastante fácil. La mayoría de las secciones, etc. en LaTeX son algo así como (en art10.sty): \def\section{\@startsection {section}{1}{\z@}{-3.5ex plus -1ex minus -.2ex}{2.3ex plus .2ex}{\Large\bf}} \def\subsection{\@startsection{subsection}{2}{\z@}{-3.25ex plus -2ex minus -.2ex}{1.5ex plus .2ex}{\large\bf}} El cuarto parámetro, si es negativo, indica que no se debe sangrar en el primer párrafo tras la cabecera. Cámbiese a positivo. Hay otro procedimiento para estilos que ya están escritos y consiste en decir: \let\@afterindentfalse\@afterindenttrue \@afterindenttrue Esta solución es la proporcionada en indentfirst.sty por David Carlisle. 6.10. ¿Cómo puedo escribir las funciones matemáticas en español? Comentario: Hay gente que discute el que las funciones vayan en español y lleve acento el lím, máx, etc. Argumentan que los nombres vienen del latín y allí no había acentos (y que en inglés también vienen del latín, lo cual, por ejemplo, es claramente incierto con gcd). El caso es que en todos los libros tradicionales en castellano se escribía lím y máx con acento. Si últimamente no se hace es precisamente porque TeX (en inglés) no lo tiene así. Todavía estamos a tiempo de no cometer ese error: El caso más común es el del seno que, en plain TeX, basta definirlo como \def\sen{\mathop{\rm sen}\nolimits} % Sustituye a \sin Análogamente, \def\mcd{\mathop{\rm mcd}\nolimits} % Sustituye a \gcd \def\senh{\mathop{\rm senh}\nolimits} % Sustituye a \sinh \def\arcsen{\mathop{\rm arcsen}\nolimits} % Ni el arcsin ni el % arccos originales dejan espacio entre arc y sin o cos. Cuando la función en español tiene algún acento (sobre todo en la i), es más complicado: \def\max{\mathop{\rm m\acute ax}} \def\min{\mathop{\rm m\acute\mathchar"7010n}} \def\inf{\mathop{\rm \acute\mathchar"7010nf}} \def\lim{\mathop{\rm l\acute\mathchar"7010m}} \def\limsup{\mathop{\rm l\acute\mathchar"7010m\, sup}} % El limsup % y el liminf originales dejan espacio entre lim y sup o inf. \def\liminf{\mathop{\rm l\acute\mathchar"7010m\, inf}} Por último, adaptándolas de su definición original (ver pág. 361 del TeXbook) para poner el acento en las dos posibilidades de uso de mod hacemos: \def\bmod{\mskip-\medmuskip \mkern5mu \mathbin{\rm m\acute od} \penalty900 \mkern5mu \mskip-\medmuskip} \def\pmod#1{\allowbreak \mkern18mu ({\rm m\acute od}\,\,#1)} En LaTeX se puede hacer de forma similar pero usando \newcommand o \renewcommand en lugar de \def. 6.11. ¿Qué verificadores ortográficos puedo utilizar para español? ispell ispell es un verificador ortográfico de uso libre que funciona en UNIX, aunque hay un port para emx en fase beta --que funciona o debe funcionar tanto en DOS (con 386 o superior) como en OS/2 2.x o en OS/2 Warp. Para ispell existe lo siguiente: · Ficheros de afijos para español: URL: ftp://ftp.dante.de/tex-archive/language/spanish/ispell ARCHIVO: castellano.aff.gz COMENTARIOS: diccionario y parche elisp disponible en el mismo lugar. Véanse los archivos LEEME o README. URL: http://www.datsi.fi.upm.es/~coes ARCHIVOS: espa~nol.tar.gz COMENTARIOS: incluye espa~nol.aff, lista de palabras,instrucciones y patrones de guionado para TeX en español. · Diccionarios compatibles con ispell: URL: ftp://ftp.dante.de/tex-archive/language/spanish/ispell ARCHIVOS: palabras.sq.gz COMENTARIOS: archivo de afijos y parche elisp disponible en el mismo lugar. Véanse los archivos LEEME o README. URLs: http://www.datsi.fi.upm.es/~coes ARCHIVOS: espa~nol.tar.gz COMENTARIOS: incluye espa~nol.aff, lista de palabras,instrucciones, y patrones de guionado para TeX en español. El que hay en ftp.dante.de es de Julio Sánchez y el que hay en http://www.datsi.fi.upm.es/~coes es de Santiago Rodríguez srodri _AT_ fi.upm.es y Jesús Carretero jesus _AT_ fi.upm.es Dependiendo de como se haya creado el diccionario de castellano es posible que deba llamarse a ispell como ispell -t -T latin1 -d espanol fichero.tex especificando explícitamente la codificación. Excalibur Para Macintosh, existe un verificador ortográfico de documentos LaTeX (y plain TeX) llamado Excalibur. Es gratis, aunque el copyright es del autor, Rick Zaccone (zaccone _AT_ bucknell.edu). Excalibur puede conseguirse por ftp anónimo en ftp://sol.eg.bucknell.edu/pub/mac. Juan Luis Varona (jvarona _AT_ dmc.unirioja.es) ha creado un diccionario con 292342 palabras (versión de septiembre de 1999) que funciona con Excalibur. Está realizado en formato de 7 bits, y la í la reconoce únicamente como \'{\i}. Pero puede modificarse si se desea. La versión más reciente puede encontrarse en ftp://tex.unirioja.es/pub/tex/dict-mac Asimismo, en la dirección mencionada para Excalibur, en el directorio Excalibur-dictionaries, se encuentran disponibles los diccionarios de los distintos idiomas. El diccionario español puede encontrarse también en CTAN en CTAN:systems/mac/support/excalibur/Spanish_Dictionary.sit.hqx 4spell 4spell es un verificador ortográfico para Windows (32 bits) que se distribuye bajo una licencia libre (concretamente la GPL) y tiene un diccionario de castellano. Puede encontrarse en CTAN:support/4spell Winedt El diccionario de Juan Luis Varona también se ha adaptado para su uso con el verificador ortográfico del entorno winedt para Windows. Está disponible en ftp://tex.unirioja.es/pub/tex/dict-win amspell amspell es un verificador ortográfico para DOS. El diccionario de Juan Luis Varona también se ha adaptado para ser utilizado con amspell. La versión para amspell está disponible en ftp://tex.unirioja.es/pub/tex/dict-pc y amspell en CTAN:support/amspell 6.12. ¿Cómo utilizo BibTeX en castellano? Para esto hay dos aproximaciones, 6.12.1. Utilizar estilos adaptables (los abstyles ) Para que BibTeX funcione en español, Tomás Bautista ha modificado con babel una familia adaptable de estilos de BibTeX (también llamadas abstyles). Con las abstyles se tiene la ventaja de utilizar un único estilo, de forma que el idioma de las referencias únicamente depende del elegido con babel. De este modo, si por h o por b, en cierto momento no se quiere el documento en inglés, sino por ejemplo en español o en alemán, sólo habría que cambiar la opción que corresponde en babel y no también el estilo puesto dentro del \bibliographystyle{estilo}. Además, con las abstyles sólo es necesario un aplain.bst preparado para distintos idiomas, según lo elegido en babel. Están disponibles en CTAN:biblio/bibtex/contrib/abstyles-babel/. 6.12.2. Utilizar el paquete custom-bib El paquete custom-bib (disponible en CTAN:macros/latex/contrib/supported/custom-bib/) permite crear estilos bibliográficos a medida, con una amplia serie de opciones y de idiomas. Para utilizarlo, una vez desempaquetado debe hacerse latex makebst.tex y responder a las (muchas) preguntas que se formulan. Es conveniente leerse previamente la documentación para ser consciente de qué se está preguntando en cada momento, ya que muchas de las preguntas no son obvias. El documento de Luis Seidel -- Véase la sección ``Tutoriales en castellano'' -- es una ayuda interesante al respecto. El paquete spanish proporciona el fichero esbst.tex que es el que debe usarse como babelbst.tex para las adaptaciones al castellano. Si la distribución es antigua, este fichero puede estar prácticamente vacío y tener como único efecto que no aparezca un mensaje de error. En este caso es conveniente copiar el archivo esbst.tex de una versión reciente de spanish al directorio donde se va a utilizar el estilo .bst, con el nombre babelbst.tex, ya que es el nombre con que lo espera el estilo .bst creado. 6.13. ¿Cómo genero un índice alfabético con la ordenación correcta en castellano? El problema con que uno se encuentra al utilizar makeindex es que no ordena correctamente las palabras con caracteres acentuados, ya que por ejemplo ordena la á como \'a que es lo que TeX escribe al archivo de índice y salvo que fuera la más reciente versión de makeindex de 8 bits ni siquiera las reconocería si estuvieran escritas directamente al archivo de índice como palabras acentuadas. A pesar de las limitaciones mencionadas para los idiomas que no pueden describirse mediante la tabla de caracteres de 7 bits, es posible utilizar makeindex en idiomas como el castellano. Para solucionar este problema hay varias aproximaciones: Decir a makeindex cómo debe ordenar la palabra acentuada Por ejemplo, para los acentos o para la ñ se introduciría la entrada al índice como \index{optica@óptica} \index{indice@índice} \index{can^^ffa@caña} y para una palabra compuesta como por ejemplo en \index{optica electromagnetica@óptica electromagnética} Utilizar el paquete esindex esindex es un paquete desarrollado por Javier Bezos para facilitar la escritura de índices correctamente alfabetizados en castellano. Su única orden es \esindex que convierte su argumento a una forma adecuada. Por ejemplo, \esindex{ca'n'on} equivale a \index{can^^ffon@ca'n'on} Es necesario usar babel y que los acentos estén escritos en forma de abreviaciones ('a, 'e, etc.). El paquete utiliza ciertas órdenes internas de babel por lo su funcionamiento puede cambiar con ver- siones distintas a la 3.6. Hay que señalar que con este paquete no se crea en el índice una entrada propia para la palabras que empiezan por eñe, sino que tan sólo se añaden al final de la ene. En el rarísimo caso de que hubiera palabras que empiezan por eñe habría que modificar el archivo .ind a mano. Este paquete puede encontrarse en CTAN:macros/latex/contrib/supported/bezos/ Utilizar xindy xindy es un sistema de indexación desarrollado por Roger Kehr, del Instituto de Informática Teórica de Darmstadt, que puede ser configurado fácilmente para adaptarse a las normas ortográficas de distintos idiomas, cada uno de ellos con un alfabeto distinto y con unas reglas de ordenación también distintas. xindy puede definir, para cada carácter del alfabeto, dónde debe ser éste ordenado (reglas de ordenación), así como a qué carácter o cadena es equivalente (reglas de equivalencia). Permite incluso definir reglas de ordenación de distinto nivel que pueden ser aplicadas de forma sucesiva. Este paquete puede encontrarse en /CTAN:indexing/xindy/ y su página web está en http://www.iti.informatik.tu-darmstadt.de/xindy/ Existen unos archivos de estilo para utilizar xindy en castellano en la página anterior y la versión más reciente, incluyendo bina- rios para linux se puede encontrar en el directorio http://www.aq.upm.es/~agmartin/linux/store/xindy, con tgz para libc5 (xindy-2.0.1.tgz) y libc6 (xindyg21-2.1.tgz) Uno de los esti- los (es-mkidx.xdy) ordena según las reglas modernas del castellano mientras que el otro (es-tridx.xdy) ordena según las reglas ya obsoletas, con ch y ll. Su uso es algo distinto del habitual en makeindex xindy -f tex2xindy estilo.xdy tu_archivo.idx donde tex2xindy es un filtro que convierte sobre la marcha del for- mato habitual de los .idx al formato especial que utiliza xindy, estilo.xdy puede ser cualquiera de los dos mencionados (u otro cualquiera para otro idioma o particularizado por el autor del doc- umento) y tu_archivo.idx es el que crea LaTeX a partir de las lla- madas a \index. 7. ¿Que es...? 7.1. ¿Qué es el CTAN ( Comprehensive TeX Archive Network ). Son las abreviaturas de Comprehensive TeX Archive Network (Red del Archivo Completo de TeX). Son tres servidores de FTP que almacenan prácticamente todo lo relacionado con el TeX. Sus nodos son: · ftp.dante.de (Alemania) · ftp.tex.ac.uk (Reino Unido) · ftp.shsu.edu (Estados Unidos) También se puede acceder mediante gopher o WWW con otros nombres, y existen interfaces de acceso como http://www.ucc.ie/cgi-bin/ctan que muestra una serie de réplicas del CTAN, y permite hacer búsquedas en ellas. En los tres casos el material de TeX está en el directorio /tex- archive. Cada uno es un mirror o réplica de los otros dos: Los tres contienen lo mismo (con un día de diferencia a lo más, en teoría). Por lo tanto conviene conectarse al que que nos caiga más cerca. Dado que siempre hay que ir a /tex-archive, se puede omitir dicho directorio y darse por supuesto. Por ejemplo, si alguien nos dice que LaTeX se encuentra en CTAN:macros/latex quiere decir que podemos encontrarlo por ejemplo en el directorio ftp://ftp.dante.de/tex-archive/macros/latex Nota: Desde hace tiempo, ftp.shsu.edu funciona tan mal que los man- tenedores del CTAN han decidido (20 de junio de 1996) no considerarlo ya más un nodo del CTAN. Para los usuarios de América, se recomienda usar la siguiente réplica: ftp://ftp.cdrom.com/pub/tex/ctan En España existe una réplica del CTAN en ftp://ftp.rediris.es/mirror/tex-archive aunque no se actualiza con la misma rapidez que los nodos del CTAN. 7.2. ¿Qué es el esquema de codificación de Cork? Es el código acordado en la reunión del TUG 1990 en Cork, el llamado TeX 256 international character set que es, al menos en lo que se refiere al castellano, compatible con ML-TeX, ISO Latin Alphabet 1 (IS 8859/1) y el DEC Multinational Character Set. Que además, es el de las fuentes DC/EC. Esto significa que es posible utilizar en entrada los caracteres acentuados directamente (por ejemplo con compose en Sun o terminales VTxxx (xxx >= 200). 7.3. ¿Qué es babel? Babel es un conjunto de estilos escritos por Johannes L. Braams que: · Proporciona macros útiles para la producción de documentos en una veintena de idiomas, incluido el español. · Público y en evolución. Esto significa la posibilidad de enviar documentos a otros sin tener que intercambiar macros primero y que estas macros se actualizan en función de las necesidades. · La posibilidad de cambiar de idioma a mitad de documento, para, por ejemplo, citar en otro idioma y tener disponibles las macros específicas de ese idioma. · Puede ser utilizado en plain TeX también. Además, babel convive cómodamente con otros estilos. Por ejemplo, artikel1.sty usa parte de la ayuda de babel. Es fácil escribir estilos que combinen con babel. Si tu estilo lo escribes usando para los literales las macros que babel define, lo tendrás sin ningún esfuerzo adicional para una veintena de idiomas. Es cierto que la probabilidad de que uses serbo-croata es escasa, pero hay francés, portugués, italiano, alemán, etc. Los convenios de babel derivan del trabajo realizado por Hubert Partl. Estilos escritos de forma compatible con el trabajo de Partl, deben funcionar con babel en principio. De hecho, es ya estándar este convenio en las versiones de LaTeX posteriores a octubre de 1991. Babel puede conseguirse en: CTAN:languages/babel 7.4. ¿Qué son eTeX, eLaTeX y omega ? eTeX es una extensión de TeX con nuevas primitivas y algunas correcciones en el código de TeX para mejorar (aún más si cabe) sus capacidades tipográficas. Es sólo un paso intermedio para NTS, que será el nombre definitivo. eLaTeX es una versión de LaTeX para eTeX, que en realidad es exactamente igual en su funcionamiento, sólo que los archivos de formato de TeX y eTeX no son compatibles. omega es similar en concepto, aunque distinto en realización, ya que utiliza preprocesadores integrados con TeX. Además, funciona con unicode y permite escribir en cualquier lengua conocida (o por conocer). lambda es una versión de LaTeX para omega, y se puede decir lo mismo que sobre eLaTeX. Ambas son prescindibles si sólo quieres usar TeX; pero ambas son imprescindibles si quieres ir más allá en tipografía. 7.5. ¿Qué es RevTeX? RevTeX es un conjunto de macros y estilos en LaTeX realizado por la Sociedad Americana de Física, la Sociedad Americana de Óptica, y el Instituto Americano de Física. Sirve para componer artículos y resúmenes para muchas revistas de estas sociedades y algunas otras. Las ventajas son las de LaTeX (texto en ASCII que puede enviarse por e-mail y entre distintas plataformas, archivos reducidos, más importancia al contenido y la estructura que a la estética, fórmulas matemáticas impecables, manejo sofisticado de referencias y citas, etc.) y las de estar específicamente desarrollado para artículos de una revista científica. Así, es muy fácil preparar preprints que se asemejan mucho al resultado final y donde es muy fácil calcular el número de páginas. Es inmediato preparar separatas en formato PDF. Debe procurarse utilizar al menos la versión RevTeX 4, ya que RevTeX 3.1 no es del todo compatible con LaTeX (hay que modificar algo las tablas, por ejemplo). Se puede encontrar más información en la página Web del Instituto Americano de Física (en la sección de publicaciones, programa Compuscript) http://www.aip.org 7.6. ¿Qué es una box y cuándo conviene utilizarlas? Realmente esta es una pregunta más especializada. Una box es una forma de guardar información para reutilizarla después. Por ejemplo, se podría guardar un logo con información con \newsavebox{\logo} \sbox{\logo}{\includegraphics{logo.eps}} y luego utilizarla con \usebox{\logo}. La diferencia con usar \newcommand{\logo}{\includegraphics{logo.eps}} y luego poner \logo cada vez que se utilice es la siguiente: Lo que hay en un box ya está hecho y compuesto. Lo que hay en una macro son ordenes que se ejecutan cuando se usa la macro, y por tanto no se componen hasta ese momento. Cuando es necesario utilizar muchas veces la definición sale más rentable usar un savebox ya que el recuadro usado contiene siempre exactamente lo mismo y de esta forma, no se llama a \includegraphics en cada pagina, sino tan solo una vez. Sin embargo, una box no admite argumentos como lo hace una macro. 8. ¿Cómo hago ...? 8.1. ¿Cómo y dónde instalo nuevos paquetes o archivos de estilo? Este proceso constará en general de los pasos que se describen a continuación: traer el nuevo paquete, extraer los ficheros de estilo si es necesario, colocarlos en el sitio apropiado y rehacer la base de datos. 8.1.1. Dónde buscar un paquete nuevo y qué traer Normalmente los paquetes nuevos se encontrarán en el ``CTAN'', aunque en ocasiones estarán en otros lugares. En general, se debe descargar el directorio completo del paquete o el archivo comprimido que lo contiene. Esto no es necesario cuando se quiere descargar un archivo de estilo de uno de los directorios misc, que tienen contribuciones al CTAN en forma de archivos de estilo individuales completos en sí mismos. En este caso bastaría con descargar el archivo individual correspondiente. 8.1.2. ¿Qué es cada uno de los archivos que traigo? Un paquete pequeño puede estar compuesto únicamente de un archivo de estilo .sty (por ejemplo paquete.sty) con las instrucciones de uso incluidas como comentarios en el mismo, en un archivo separado o bien en un archivo README. Sin embargo, es más frecuente encontrar el paquete en forma de un par de archivos paquete.ins y paquete.dtx, escritos para ser utilizados con el sistema doc de LaTeX. Los archivos de estilo deben extraerse de éstos. Si hay un README adicional debe leerse éste previamente. 8.1.3. Extrayendo archivos de estilo de los .dtx y .ins En el sistema doc el manual de usuario y el código del paquete documentado se encuentran en el archivo .dtx, mientras que el archivo .ins contiene instrucciones LaTeX acerca de la extracción del código del archivo .dtx. Para extraer los distintos archivos debe seguirse el siguiente procedimiento: · Correr LaTeX sobre paquete.ins. Esto extraerá uno o más archivos (normalmente un paquete.sty, pero dependiendo del paquete pueden generarse más archivos). · Correr LaTeX sobre paquete.dtx para obtener el manual de usuario y posiblemente una versión comentada del código del paquete. · Correr de nuevo LaTeX sobre paquete.dtx. Ésto resolverá las referencias y generará una tabla de materias si el archivo original lo pide así. · Si LaTeX da el error "No file paquete.ind" significa que no encontró el archivo fuente para el índice de órdenes. Para generar el índice basta hacer makeindex -s ind.ist paquete y correr de nuevo LaTeX. · Imprimir y leer paquete.dvi. A veces se proporciona el manual de usuario separadamente del archivo .dtx. En este caso es recomendable procesarlo después de hacer lo anterior, ya que puede necesitar elementos del paquete que está describiendo. 8.1.4. ¿Dónde colocar nuevos archivos de estilo? En primer lugar TeX buscará archivos en el directorio actual. Salvo que se trate de una prueba o de archivos muy relacionados con el documento que se está preparando, es conveniente colocarlos en un lugar de acceso más general. El lugar exacto en el que deben colocarse los nuevos archivos de estilo depende de la distribución TeX que se esté utilizando. Asumiendo que se utiliza una de las distribuciones modernas que son conformes al TDS (por ejemplo, teTeX, fpTeX o mikTeX) hay una serie de normas que deben tenerse en cuenta 1. Instalar siempre los nuevos archivos personales en una rama texmf local del árbol global o en una rama personal, dependiendo de si son archivos para uso común en la máquina o únicamente para el usuario. De esta forma puede actualizarse el árbol oficial sin tocar los archivos locales o personales. Para la rama local, el directorio raíz local tendrá un nombre del tipo: teTeX: /usr/share/texmf.local/ fpTeX: c:\fptex\texmf.local\ mikTeX: c:\localtexmf\ que puede cambiar dependiendo de las opciones dadas durante la insta- lación. Por simplicidad en lo que sigue le denominaremos $TEXMFLOCAL. 2. En la rama local, reproducir la estructura de directorios de la rama principal. Estos son unos ejemplos de dónde deberían colocarse archivos de distintas extensiones: .sty, .cls o .fd: $TEXMFLOCAL/tex/latex// .dvi, .ps o .pdf: $TEXMFLOCAL/doc/latex// .bib: $TEXMFLOCAL/doc/bibtex/bib .bst: $TEXMFLOCAL/doc/bibtex/bst .tfm: $TEXMFLOCAL/fonts/tfm/// .vf: $TEXMFLOCAL/fonts/vf/// .afm: $TEXMFLOCAL/fonts/afm/// .pfb: $TEXMFLOCAL/fonts/type1/// .ttf: $TEXMFLOCAL/fonts/truetype/// donde paquete, fuente y suministrador dependen de cada archivo indi- vidual de cada paquete. La rama personal suele estar en un subdirectorio texmf del directorio de usuario, pero puede cambiar. En ella también es necesario reproducir la estructura de directorios de la rama principal. Dependiendo de la distribución y/o de las opciones de configuración puede ser necesario rehacer la base de datos cuando se añaden o quitan elementos. 8.1.5. Activando ramas locales y personales del árbol de directorios LaTeX global A menudo la rama local del árbol global no está activada por omisión y es necesario activarla: teTeX y fpTeX; En primer lugar es necesario localizar el archivo de configuración texmf.conf. Éste puede estar en /etc/texmf/texmf.conf, /etc/texmf.conf o /usr/share/texmf/web2c/texmf.conf, dependiendo de la distribución. Aunque no siempre es necesario, en la primera línea del archivo borrar la palabra original. Jugando adecuadamente con texmf.cnf, donde están los caminos de búsqueda, se configura sin problemas. Para activar una línea debe quitarse el carácter de comentario % al principio de la línea, para desactivarla añadir el carácter % al principio de la línea. Cuando se activa una línea debe desactivarse la que antes hacía esa función, si la había. Por ejemplo, si se tienen los archivos de la distribución bajo /usr/share/texmf/, archivos locales bajo /usr/share/local.texmf y archivos personales bajo ~/texmf, las líneas del texmf.cnf que lo harían son TEXMFMAIN = /usr/share/texmf para la rama principal, que viene activada por omisión. Para las ramas local y personal se añadiría (o se quitaría el comentario de la misma) una línea del tipo TEXMFLOCAL = /usr/share/texmf.local HOMETEXMF = $HOME/texmf que normalmente vienen comentadas. Finalmente se seleccionaría TEXMF = {$HOMETEXMF,!!$TEXMFLOCAL,!!$TEXMFMAIN} que las junta todas. Como se ha dicho antes, en la estructura de las ramas local y personal debe clonarse la estructura de la rama principal y como se dice en la sección siguiente debe correrse tex- hash (o mktexlsr) después de hacer los cambios para rehacer la base de datos de archivos. Para la rama personal puede ser necesario rehacer la base de datos como usuario. El fichero de configuración está extensamente comentado con explicaciones de la función de cada una de las posibles líneas. 8.1.6. Rehaciendo la base de datos de archivos instalados El paso final consiste en decirle a LaTeX que hay una serie de nuevos archivos que debe ser capaz de encontrar. En la mayor parte de los sistemas LaTeX libres recientes se mantiene una base de datos de archivos instalados, para posibilitar una búsqueda más rápida. En estos sistemas es necesario actualizar esta base de datos cada vez que se instalan nuevos archivos, mediante los programas suministrados con este fin en la distribución. teTeX, fpTeX Correr texhash web2c En cualquier distribución web2c reciente texhash debiera funcionar. Si no es así, probar con mktexlsr MikTeX En una distribución MikTeX anterior a la v2.0, hacer con los menúes desplegables: Start-> Programs-> MikTeX-> Maintenance-> Refresh filename database o en una ventana DOS initexmf -update-fndb En una distribución MikTeX mayor o igual que la v2.0, hacer con los menúes desplegables Start-> Programs-> MikTeX 2-> MikTeX Options y pulsar el botón "Update filename database". 8.1.7. ¿Cómo verifico los directorios en los que TeX busca archivos de estilo? La respuesta más general sería mirando los archivos de configuración, pero si se trata de un TeX que utiliza las rutinas kpathsearch de Karl Berry, es mucho más sencillo % kpsepath tex responderá con la lista de los directorios en los que busca. Una doble barra (//) indica que se busca recursivamente en los subdirecto- rios del que pone. Es decir, que si los paquetes particulares están en ~/texmf/tex/latex/lo-que-sea, o en ~/texmf/tex/mas-paquetes los encontrará. 8.2. ¿Cómo personalizo el aspecto del documento? 8.2.1. ¿Cómo cambio la fuente de un documento o instalo nuevas? Pues depende de la fuente que se quiera usar. Normalmente hay paquetes de estilo que lo hacen automáticamente. Por ejemplo, si pretendes usar la familia de Times, usa el paquete times poniendo en el preámbulo \usepackage{times}. Otra familia disponible es lucida-bright, que puedes cargar con el paquete lucidabr. Si miras estos archivos (times.sty o lucidabr.sty) puedes aprender la forma de usar una fuente, y copiarlo para otros tipos. Hay muchos tipos de letras ya preparados así: times, helvetica (arial está casi clonado de esta), courier, la letra gótica se llama oldgerm, griego... Un segundo paso es ir al CTAN para ver si alguien ha preparado un paquete con el tipo deseado. En el peor de los casos en el que no esté preparado, puede crearse manualmente un paquete a partir de los tipos originales en formato Type-1, aunque no es un proceso inmediato. Más información en CTAN:info/Type1fonts/fontinstallationguide/fontinstallationguide.pdf. 8.2.2. ¿Puedo utilizar una fuente TrueType como Arial en LaTeX? A veces se piden tipos de letra que no están disponibles directamente en LaTeX como Arial. El tipo de letra Arial es TrueType, y este formato no es soportado directamente por LaTeX. Desde pdflatex sí es posible usar tipos TrueType, pero antes hay que crear unos cuantos archivos auxiliares que necesita TeX. El proceso no es sencillo. Está descrito en http://www.radamir.com/tex/ttf-tex.htm Recientemente ha aparecido otro documento que explica cómo convertir los tipos TrueType en tipos PostScript, y cómo usar estos tipos convertidos desde latex->dvips. El documento se encuentra disponible en CTAN:info/TrueType/ y está orientado a un sistema tetex, por lo que es posible que no funcione bajo windows/miktex. El tipo de letra helvetica es muy parecido al tipo Arial y sí está disponible bajo LaTeX. Basta con añadir en el preámbulo del documento \renewcommand{\rmdefault}{phv} \renewcommand{\sfdefault}{phv} pero si hay fórmulas matemáticas éstas seguirían utilizando los tipos computer modern por lo que quedarán feas en medio del texto en hel- vetica. 8.2.3. Incluyendo subdocumentos TeX/LaTeX en el documento Pueden incluirse subdocumentos TeX/LaTeX en un documento mediante las órdenes \input e \include. \input{otro_documento} lo incluirá en el lugar en el que se introduce la orden, mientras que \include{otro_documento} siempre abrirá una página nueva al incluir el documento. Sin embargo, \include permite incluir documentos de forma selectiva mediante la orden \includeonly, mientras que \input no lo permite. Así, la orden \includeonly{doca,docc} en el preámbulo hará que se incluyan únicamente los documentos doca y docc, a pesar de que también docb tenga un \include, ... \includeonly{doca,docc} \begin{document} ... \include{doca} \include{docb} \include{docc} ... 8.2.4. ¿Cómo evito que salga la palabra capítulo en las cabeceras de capítulo? Cuando se usa spanish-babel basta con poner en el preámbulo, después de haberse cargado babel \addto{\captionsspanish}{\def\chaptername{}} y queda eliminada la palabra Capítulo. Si no se usa babel basta con poner en el preámbulo \def\chaptername{}. Realmente esto es un caso particular de cambio de literales, que se trata en las secciones ``literales'' y ``Cambio de nombre de secciones'' 8.2.5. ¿Cómo cambio la cabecera de capítulo por otra más a mi gusto? Hay dos formas, redefiniendo las órdenes que hacen las cabeceras, o utilizando un paquete hecho que facilite el trabajo. Un paquete que permite hacer cosas muy elaboradas con las cabeceras de los capítulos es titlesec, disponible en CTAN:macros/latex/contrib/supported/titlesec 8.2.6. Quiero una sección no numerada, pero que aparezca en la tabla de materias. Por ejemplo, suponiendo que se trate de una lista de símbolos, \section*{Lista de símbolos} \addcontentsline{toc}{section}{Lista de símbolos} Lo mismo para otros elementos (subsección,...). 8.2.7. No me funciona \subsubsubsection . \subsubsubsection no existe, en los estilos estándar es \paragraph quien hace ese papel. 8.2.8. ¿Cómo quito los encabezados que LaTeX pone automáticamente en las páginas blancas? Si se quiere controlar cuándo se quiere o no este comportamiento en cada página con este problema, se puede definir una nueva orden, \newcommand{\clearemptydoublepage}{\newpage{\pagestyle{empty}\cleardoublepage}} y teclear \clearemptydoublepage cada vez que quieras continuar el texto en una pagina impar. Cuando se quiere que esto ocurra automáticamente hay que redefinir la orden \cleardoublepage como sugiere la documentación del paquete fancyhdr, \makeatletter \def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else \vspace*{\fill} \thispagestyle{empty} \newpage \if@twocolumn\hbox{}\newpage\fi\fi\fi} \makeatother Cuando se utiliza el paquete titlesec de Javier Bezos para definir formatos propios de cabeceras y pies de pagina, la opción de paquete clearempty ya hace el trabajo: \usepackage[,clearempty]{titlesec} Otra posibilidad es utilizar el paquete nextpage, \usepackage{nextpage} ... \cleartooddpage[\thispagestyle{empty}] \chapter{...} 8.2.9. ¿Cómo quito los encabezados, pies o la numeración de las páginas? La opción \pagestyle{empty} quitará los encabezados y pies de todas las páginas posteriores a aquélla en la que se invoca. La opción \thispagestyle{empty} quitará los encabezados y los pies de página en la página donde se invoca esta orden. Cuando lo que se quiere es eliminar únicamente el número de página, en general no es conveniente utilizar \renewcommand{\thepage}{} porque eso suprime todos los números de página, incluidos los de los índices o las remisiones. Por tanto, hay que evitarla siempre que se pueda y optar por soluciones mejor construidas y específicas a cada caso, como utilizar una definición personal de cabeceras que pueda activarse a voluntad para ciertas páginas. 8.2.10. ¿Cómo pongo encabezados o pies de página a mi gusto? La forma más habitual es utilizar el paquete fancyhdr. Por ejemplo, con pies \documentclass{book} \usepackage{fancyhdr} \lfoot{titulo a la izquierda} \rfoot{titulo a la derecha} \cfoot{titulo al centro} \pagestyle{fancy} \begin{document} \chapter{A title} \thispagestyle{fancy} %opcional \newpage \section{a section} \end{document} pero titlesec también permite un amplio control del estilo de página. 8.2.11. ¿Cómo hago que LaTeX y TeX no partan nunca las palabras? Para LaTeX si se ha cargado el paquete babel basta con la orden \hyphenrules{nohyphenation} Por supuesto el patrón nohyphenation debe de estar activado en lan- guage.dat y el formato creado con él (Véanse ``¿Cómo activo el patrón de partición de palabras para el castellano?'' y ``¿Cómo rehacer los formatos?''). Para TeX hay que hacer las cosas de otra forma. Una forma de conseguir que TeX no corte casi nunca, (y así de paso se evita que corte mal) es poner: \pretolerance=2000 \tolerance=3000 al principio. Si se quiere que ésto ocurra únicamente en un párrafo o en una región, debe encerrarse lo anterior y la región deseada entre llaves, {\pretolerance=2000 \tolerance=3000 el párrafo o región } Ésto puede utilizarse también para LaTeX 8.2.12. ¿Cómo ajusto los márgenes de un documento LaTeX? Quizás la forma más cómoda sea utilizar el paquete geometry, que se encuentra disponible en CTAN:macros/latex/contrib/supported/geometry. Por ejemplo \documentclass[a4paper, 10pt]{article} \usepackage[a4paper,left=3cm,right=2cm]{geometry} crea una página A4 con margen de 3cm a la izquierda y 2cm a la derecha, sin más complicaciones. Otra cosa mucho más complicada es cómo cambiar los márgenes dentro de un documento, en vez de hacerlo en el preámbulo como lo hace el paquete geometry. Un caso especial se tiene cuando se quiere alargar un poco una página para que quepa un poco más de texto y así evitar situaciones poco estéticas. Para ésto, LaTeX2e proporciona la orden \enlargethispage{distancia} donde se aumenta el tamaño vertical de la página en la distancia especificada. A pesar de esa dificultad, puede utilizarse el paquete chngpage, que proporciona órdenes para cambiar el aspecto de la página en el medio de un documento (por ejemplo, hacerla más estrecha o más ancha, más corta o más larga, e incluso desplazarla horizontal o verticalmente), aunque no permite cambios dentro de un párrafo. 8.2.13. ¿Cómo obtengo un documento apaisado? Cuando se quiere sacar la totalidad del documento apaisada, hay que decirle a TeX que las dimensiones horizontal y vertical están cambiadas, comenzando el documento con la opción landscape, algo del tipo \documentclass[landscape,a4]{article} donde la clase de documento puede ser también cualquier otra como slides. Esto intercambia las distancias horizontal y vertical, pero no rota el documento final para que se ajuste a la posición de la hoja. Para ello se puede utilizar el dvips, por ejemplo en la forma sigu- iente dvips -ta4 -tlandscape tu_archivo -o tu_archivo.ps donde -tlandscape gira la salida. La opción -ta4 es a menudo conve- niente si se utiliza papel a4, para que el giro se haga de forma ade- cuada. 8.2.14. ¿Cómo ajusto el espaciado en el documento LaTeX? Para ajustar el espaciado entre líneas en un documento LaTeX2e se recomienda utilizar el paquete setspace, que se cargará en el preámbulo. Las órdenes \singlespacing, \onehalfspacing, y \doublespacing colocadas en el preámbulo establecen el espaciado global del documento. Pueden establecerse valores intermedios mediante la orden \setstretch{baselinestretch} en el preámbulo. El valor por omisión es espaciado simple. Asimismo se definen tres entornos con los mismos nombres que las órdenes anteriores para cambios del espaciado en regiones del documento (respecto del espaciado estándar en ese momento, doublespacing empezará un entorno de espaciado doble que el espaciado en ese momento, si es doble lo hará aún mayor). Para un documento LaTeX209 puede utilizarse el paquete doublespace. La forma más cómoda de controlar el espaciado entre párrafos es mediante el paquete parskip. 8.3. Listas al gusto de cada cual. 8.3.1. ¿Cómo ajusto el espaciado en una lista? La distancia entre los elementos es la suma de los valores de \parsep (que es también la distancia entre párrafos dentro de un mismo elemento) e \itemsep. Si sólo se quiere cambiar la distancia entre elementos pero no entre párrafos de un mismo elemento, basta con dar un nuevo valor a la distancia \itemsep. Es un espacio elástico, es decir, además de con \setlength{\itemsep}{1cm} se puede definir con algo como \itemsep= 4pt plus 2pt minus 1pt donde 4pt sería el espacio normal, 2pt lo máximo que podría estirarse y 1pt lo máximo que podría encogerse. El valor de \itemsep se restablece con cada \begin{itemize} (o la lista de que se trate), y se hace igual a \parsep, por lo que hay que modificarlo dentro de la lista, por ejemplo. {\topsep=-15pt \parsep=-15pt \partopsep=-15pt \begin{enumerate}\itemsep=-5pt \item{ Pruebas de interespaciado} \item{ Pruebas de interpaginado} \item{ Pruebas de espaciado} \end{enumerate}} Puede hacerse que la separación sea nula, mediante \setlength{\item- sep}{-\parsep} Hacer el cambio para todas las listas es algo más complejo, pero una forma de hacerlo sería redefinir \itemize (y lo mismo para las demás listas) en la forma \let\olditemize\itemize \def\itemize{\olditemize\itemsep=0pt } donde en este caso se ha puesto un valor de 0pt a \itemsep en todas las listas enumeradas. 8.3.2. ¿Cómo cambio el tipo de numeración en las listas numeradas? Por ejemplo, para que escriba los elementos de primer nivel con números como 1 y los de segundo nivel con números en la forma 1.1 \renewcommand{\theenumii}{\arabic{enumii}} \renewcommand{\labelenumii}{\theenumi .\theenumii .} Si algún paquete que estés usando redefine los \theenum, como el babel-spanish, entonces debes asegurate que LaTeX eliga tus parametros colocando las órdenes anteriores entre: \AtBeginDocument{% comandos aqui.. } 8.3.3. Quiero mostrar un símbolo distinto en las listas itemize Dentro de un itemize, puede especificarse en cada \item un parámetro opcional, que es el símbolo que se mostrará (en lugar del topo por defecto), por ejemplo, \item[$\odot$], y si se quieren cambiar todos, con el mismo ejemplo, \renewcommand{\item}{\item[$\odot$]} o, mediante el paquete paralist, \usepackage{paralist} ... \begin{itemize}[$\star$] \item ... \item ... \end{itemize} También puede utilizarse el paquete pifont, así: \usepackage{pifont} \begin{Pilist}{pzd}{248} \item bla \item bla bla \item bla \end{Pilist} El entorno Pilist es análogo a itemize, pero en lugar del bullet usa el caracter que se le pida de la fuente que se le pida. En el ejemplo anterior, se usa el carácter con código 248 de la fuente pzd que tiene gran cantidad de simbolos adecuados para itemize. 8.3.4. ¿Puedo ajustar la separación entre texto y listas? Con el paquete enumitem, en CTAN:macros/latex/contrib/bezos/. 8.3.5. ¿Cómo interrumpir una lista numerada con un comentario y con- tinuar después con la numeración correcta? Entre las mdwtools hay un p