#LyX 2.2 created this file. For more info see http://www.lyx.org/ \lyxformat 508 \begin_document \begin_header \save_transient_properties true \origin /systemlyxdir/doc/es/ \textclass scrbook \begin_preamble % DO NOT ALTER THIS PREAMBLE!!! % % This preamble is designed to ensure that the manual prints % out as advertised. If you mess with this preamble, % parts of this document may not print out as expected. If you % have problems LaTeXing this file, please contact % the documentation team % email: lyx-docs@lists.lyx.org % the pages of the TOC is numbered roman % and a pdf-bookmark for the TOC is added \let\myTOC\tableofcontents \renewcommand\tableofcontents{% \frontmatter \pdfbookmark[1]{\contentsname}{} \myTOC \mainmatter } \@ifpackageloaded{babel}{ % increase link area for cross-references and autoname them, \AtBeginDocument{\renewcommand{\ref}[1]{\mbox{\autoref{#1}}}} \addto\extrasspanish{% \renewcommand*{\equationautorefname}[1]{}% \renewcommand{\sectionautorefname}{sec.\negthinspace}% \renewcommand{\subsectionautorefname}{sec.\negthinspace}% \renewcommand{\subsubsectionautorefname}{sec.\negthinspace}% } }{} \end_preamble \options fleqn,bibliography=totoc,index=totoc,BCOR7.5mm,titlepage,captions=tableheading \use_default_options false \begin_modules logicalmkup \end_modules \maintain_unincluded_children false \language spanish \language_package default \inputencoding auto \fontencoding global \font_roman "lmodern" "default" \font_sans "lmss" "default" \font_typewriter "lmtt" "default" \font_math "auto" "auto" \font_default_family default \use_non_tex_fonts false \font_sc false \font_osf false \font_sf_scale 100 100 \font_tt_scale 100 100 \graphics default \default_output_format pdf2 \output_sync 0 \bibtex_command default \index_command default \paperfontsize 12 \spacing single \use_hyperref true \pdf_title "Manual Personalización de LyX" \pdf_author "Equipo LyX" \pdf_subject "LyX-documentation Customization" \pdf_keywords "LyX, documentation, customization" \pdf_bookmarks true \pdf_bookmarksnumbered true \pdf_bookmarksopen true \pdf_bookmarksopenlevel 1 \pdf_breaklinks false \pdf_pdfborder false \pdf_colorlinks true \pdf_backref false \pdf_pdfusetitle false \pdf_quoted_options "linkcolor=black, citecolor=black, urlcolor=blue, filecolor=blue,pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" \papersize default \use_geometry false \use_package amsmath 0 \use_package amssymb 0 \use_package cancel 0 \use_package esint 0 \use_package mathdots 1 \use_package mathtools 0 \use_package mhchem 0 \use_package stackrel 0 \use_package stmaryrd 0 \use_package undertilde 0 \cite_engine basic \cite_engine_type default \biblio_style plain \use_bibtopic false \use_indices false \paperorientation portrait \suppress_date false \justification true \use_refstyle 0 \notefontcolor #0000ff \branch OutDated \selected 0 \filename_suffix 0 \color #f5fae7 \end_branch \index Índice \shortcut idx \color #008000 \end_index \secnumdepth 3 \tocdepth 3 \paragraph_separation indent \paragraph_indentation default \quotes_language french \papercolumns 1 \papersides 2 \paperpagestyle headings \tracking_changes false \output_changes false \html_math_output 0 \html_css_as_file 0 \html_be_strict true \end_header \begin_body \begin_layout Title Personalizar \SpecialChar LyX : Características para el usuario avanzado \end_layout \begin_layout Author por el equipo \SpecialChar LyX \begin_inset Foot status collapsed \begin_layout Plain Layout \noindent Si tienes correcciones o comentarios, envíalos, por favor, a la lista de correo de Documentación de \SpecialChar LyX , \begin_inset CommandInset href LatexCommand href target "lyx-docs@lists.lyx.org" type "mailto:" \end_inset . Incluye \begin_inset Quotes fld \end_inset [Customization] \begin_inset Quotes frd \end_inset en la cabecera de asunto, y envía una cc al actual mantenedor de este documento , Richard Heck . \end_layout \end_inset \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset Versión 2.2.x \end_layout \begin_layout Standard \begin_inset CommandInset toc LatexCommand tableofcontents \end_inset \end_layout \begin_layout Chapter Introducción \end_layout \begin_layout Standard Este manual trata de las características de \SpecialChar LyX que pueden ser modificadas por el usuario. En él abordamos temas como atajos de teclado, opciones de vista previa en pantalla, opciones de impresora, envío de comandos mediante \SpecialChar LyX Server, internacionalización, instalación de nuevas clases de \SpecialChar LaTeX y de formatos de \SpecialChar LyX , etc. Seguro que no podemos aspirar a tratar todo lo que se puede cambiar, —nuestross desarrolladores añaden características nuevas más deprisa de lo que las podemos documentar— pero explicaremos las modificaciones más comunes y y esperamos orientarte en la dirección correcta para algunas más desconocidas. \end_layout \begin_layout Standard \begin_inset Branch OutDated status collapsed \begin_layout Standard La rama OutDated contiene información de versiones anteriores de este documento que ahora parece estar obsoleta. Por omisión, esta información no aparece en la salida \SpecialChar LaTeX . \end_layout \end_inset \end_layout \begin_layout Chapter Archivos de configuración de \SpecialChar LyX \end_layout \begin_layout Standard Este capítulo tiene por objetivo ayudarte a encontrar tu camino a través de los archivos de configuración de \SpecialChar LyX . Antes de seguir leyendo deberías encontrar donde están los directorios de bibliotecas y de usuario, consultando \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ayuda\SpecialChar menuseparator Acerca de \SpecialChar LyX \end_layout \end_inset . El directorio de bibliotecas es el sitio en el que \SpecialChar LyX tiene sus archivos de configuración de sistema; el directorio de usuario es donde puedes colocar tus versiones modificadas. En este documento, al primero lo denominaremos \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir \end_layout \end_inset y al segundo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout UserDir \end_layout \end_inset . \end_layout \begin_layout Section ¿Qué hay en \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir \end_layout \end_inset ? \end_layout \begin_layout Standard \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir \end_layout \end_inset y sus subdirectorios contienen archivos que pueden emplearse para personalizar el comportamiento de \SpecialChar LyX . Puedes cambiar muchos de ellos desde dentro mismo de \SpecialChar LyX mediante el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Preferencias \end_layout \end_inset . La mayor parte de las adaptaciones personales que querrás hacer en \SpecialChar LyX se puede hacer en este diálogo. Sin embargo, muchos otros aspectos internos de \SpecialChar LyX pueden cambiarse modificando los archivos en \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir \end_layout \end_inset . Estos archivos pertenecen a diversas categorías, descritas en las siguientes subsecciones. \end_layout \begin_layout Subsection Archivos generados automáticamente \end_layout \begin_layout Standard Los archivos que se encuentran en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout UserDir \end_layout \end_inset se generan al configurar \SpecialChar LyX . Contienen varios valores predeterminados que se obtienen por inspección. En general, no es buena idea modificarlos, puesto que podrían ser sobrescritos en cualquier momento. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyxrc.defaults \end_layout \end_inset contiene valores predeterminados para varioscomandos. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout packages.lst \end_layout \end_inset contiene la lista de paquetes que han sido reconocidos por \SpecialChar LyX . No es utilizada por el propio \SpecialChar LyX , pero la información extraida, y otras cosas están disponibles en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ayuda\SpecialChar menuseparator Configuración de \SpecialChar LaTeX \end_layout \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout textclass.lst \end_layout \end_inset la lista de clases de textos encontradas en los directorios \begin_inset Flex Code status collapsed \begin_layout Plain Layout layout/ \end_layout \end_inset , junto con las clases de documentos \SpecialChar LaTeX y su descripción. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyxmodules.lst \end_layout \end_inset la lista de módulos de formato encontradas en los directorios \begin_inset Flex Code status collapsed \begin_layout Plain Layout layout/ \end_layout \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout *files.lst \end_layout \end_inset lista de varios tipos de archivos relacionados con \SpecialChar LaTeX encontrados en el sistema. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout doc/\SpecialChar LaTeX Config.lyx \end_layout \end_inset es generado automáticamente durante la configuración a partir del archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LaTeX Config.lyx.in \end_layout \end_inset . Contiene información sobre la configuración de \SpecialChar LaTeX . \end_layout \begin_layout Subsection Directorios \end_layout \begin_layout Standard Estos directorios están duplicados en \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir \end_layout \end_inset . Si determinado archivo existe en ambos sitios, se usará el de \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir \end_layout \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout bind/ \end_layout \end_inset este directorio contiene archivos con la extensión \begin_inset Flex Code status collapsed \begin_layout Plain Layout .bind \end_layout \end_inset que definen las combinaciones de teclas usadas en \SpecialChar LyX . Si ahí existe una versión nacional de un archivo bind llamado \begin_inset Flex Code status collapsed \begin_layout Plain Layout $LANG_xxx.bind \end_layout \end_inset , ésta se usará en primer lugar. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout clipart/ \end_layout \end_inset contiene archivos gráficos que pueden ser incluidos en documentos. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout doc/ \end_layout \end_inset contiene archivos de documentación de \SpecialChar LyX (incluido éste que estás leyendo). El archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LaTeX Config.lyx \end_layout \end_inset merece atención especial, como se mencionó antes. Si existe una versión nacional del documento de ayuda en el subdirectorio \begin_inset Flex Code status collapsed \begin_layout Plain Layout doc/xx \end_layout \end_inset , éste se usará en primer lugar. Véase \begin_inset CommandInset ref LatexCommand ref reference "cap:Internacionalización-de-LyX" \end_inset para detalles. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout examples/ \end_layout \end_inset contiene archivos de ejemplo que describen el uso de algunas características. Se puede acceder a ellos con el botón \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ejemplos \end_layout \end_inset en el buscador de archivos. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout images/ \end_layout \end_inset contiene archivos de imagen que se usan en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración \end_layout \end_inset . Contiene además los iconos de las barras de herramientas y las enseñas de \SpecialChar LyX mostradas en su inicio. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout kbd/ \end_layout \end_inset contiene archivos de mapas de teclado. Véase \begin_inset CommandInset ref LatexCommand ref reference "sec:keymap" \end_inset para detalles. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout layouts/ \end_layout \end_inset contiene las clases de textos y los archivos de los módulos descritos en \begin_inset CommandInset ref LatexCommand ref reference "cap:Instalación-de-nuevas" \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyx2lyx \end_layout \end_inset contiene los guiones de Python \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyx2lyx \end_layout \end_inset para convertir entre versiones de \SpecialChar LyX . Pueden ejecutarse en línea de comandos si, digamos, quieres convertir ficheros por lotes. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout scripts/ \end_layout \end_inset contiene algunos archivos que demuestran las capacidades de la característica \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Plantilla externa \end_layout \end_inset . También contiene algunos guiones usados por el propio \SpecialChar LyX . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout templates/ \end_layout \end_inset contiene los archivos de plantillas estándar de \SpecialChar LyX descritas en \begin_inset CommandInset ref LatexCommand ref reference "subsec:Creación-de-plantillas" \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout ui/ \end_layout \end_inset contiene archivos con la extensión \begin_inset Flex Code status collapsed \begin_layout Plain Layout .ui \end_layout \end_inset que definen la interfaz de usuario de \SpecialChar LyX . Esto es, archivos que definen qué ítems aparecen en qué menús y barras de herramientas. \end_layout \begin_layout Subsection Archivos que no necesitan modificaciones \end_layout \begin_layout Standard Estos archivos son utilizados internamente por \SpecialChar LyX y generalmente no deben ser modificados sino por los desarrolladores. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout CREDITS \end_layout \end_inset contiene la lista de desarrolladores de \SpecialChar LyX . Se muestra con el menú \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ayuda\SpecialChar menuseparator Acerca de \SpecialChar LyX \end_layout \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout chkconfig.ltx \end_layout \end_inset es un guión de \SpecialChar LaTeX usado durante el proceso de configuración. No lo ejecutes directamente. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout configure.py \end_layout \end_inset es el guión utilizado para la reconfiguración de \SpecialChar LyX . Genera los archivos de configuración en el directorio desde el que se ha ejecutado. \end_layout \begin_layout Subsection Otros archivos en un par de líneas \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout encodings \end_layout \end_inset contiene tablas que describen cómo los distintos códigos de caracteres se transcriben a Unicode. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout external_templates \end_layout \end_inset contiene las plantillas disponibles para la característica \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Material externo \end_layout \end_inset , véase \begin_inset CommandInset ref LatexCommand ref reference "cap:Inserción-de-material" \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout languages \end_layout \end_inset contiene una lista de los idiomas actualmente soportados por \SpecialChar LyX . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout latexfonts \end_layout \end_inset contiene información sobre tipografías soportadas. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout layouttranslations \end_layout \end_inset contiene traducciones para entornos de párrafo (véase \begin_inset CommandInset ref LatexCommand ref reference "subsec:I18n" \end_inset ). \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout unicodesymbols \end_layout \end_inset contiene información sobre glifos unicode y su soporte por \SpecialChar LyX vía \SpecialChar LaTeX . \end_layout \begin_layout Section Directorio de configuración personal \end_layout \begin_layout Standard Aunque uses \SpecialChar LyX como usuario sin privilegios, puedes adaptar su configuración a tus necesidades. El directorio \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir \end_layout \end_inset contiene todos los archivos de configuración personal. Es el directorio especificado como \begin_inset Quotes fld \end_inset Directorio del usuario \begin_inset Quotes frd \end_inset en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ayuda\SpecialChar menuseparator Acerca de \SpecialChar LyX \end_layout \end_inset . Este directorio se usa como espejo de \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir \end_layout \end_inset , que quiere decir que cada archivo en \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir \end_layout \end_inset es un equivalente del correspondiente archivo en \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir \end_layout \end_inset . Cualquiera de los archivos de configuración descritos en las secciones anteriores puede estar en el directorio global del sistema, en cuyo caso afectará a todos los usuarios, y en tu directorio local para tu propio uso. \end_layout \begin_layout Standard Para clarificar las cosas vamos a poner unos ejemplos: \end_layout \begin_layout Itemize Las preferencias establecidas en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Preferencias \end_layout \end_inset se guardan en un archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout preferences \end_layout \end_inset en \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir \end_layout \end_inset . \end_layout \begin_layout Itemize Si reconfiguras mediante \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Reconfigurar \end_layout \end_inset , \SpecialChar LyX ejecuta el guión \begin_inset Newline linebreak \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout configure.py \end_layout \end_inset , y los archivos resultantes se escriben en tu directorio de usuario. Esto significa que cualquier archivo adicional de clase de texto que pudieras haber añadido en \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir/layouts \end_layout \end_inset se sumará a la lista de clases en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración \end_layout \end_inset . \end_layout \begin_layout Itemize Si consigues alguna documentación actualizada del sitio de \SpecialChar LyX y no puedes instalarla porque no tienes permisos para administrar tu sistema, solo has de copiar los archivos en \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir/doc/XX \end_layout \end_inset ¡y las entradas del menú \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ayuda \end_layout \end_inset los abrirán! \end_layout \begin_layout Section Ejecutar \SpecialChar LyX con múltiples configuraciones \end_layout \begin_layout Standard La libertad de configuración del directorio local puede no ser suficiente si quieres tener a tu disposición más de una configuración. Por ejemplo, si quisieras usar diferentes combinaciones de teclas o configuraci ones de impresora en distintos momentos. Esto lo puedes conseguir teniendo varios de estos directorios. Después especificas qué directorio usar al arrancar. \end_layout \begin_layout Standard Ejecutando \SpecialChar LyX con la opción de línea de comandos \begin_inset Flex Code status collapsed \begin_layout Plain Layout -userdir \end_layout \end_inset \emph on \emph default hace que el programa lea la configuración de ese directorio y no del predetermi nado. (Puedes determinar el directorio predeterminado ejecutando \SpecialChar LyX sin la opción \begin_inset Flex Code status collapsed \begin_layout Plain Layout -userdir \end_layout \end_inset ). Si el directorio especificado no existe, \SpecialChar LyX propone su creación, tal como hace con el directorio predeterminado la primera vez que se ejecuta el programa. Puedes modificar las opciones de configuración en ese directorio personal adicional exactamente igual que para el directorio predeterminado. Estos directorios son completamente independientes (pero sigue leyendo). Ten presente que establecer algún valor para la variable de entorno \begin_inset Flex Code status collapsed \begin_layout Plain Layout LYX_USERDIR_20x \end_layout \end_inset tiene exactamente el mismo efecto. \end_layout \begin_layout Standard Tener varias configuraciones también requiere más mantenimiento: si quieres añadir un nuevo formato a \begin_inset Flex Code status collapsed \begin_layout Plain Layout NewUserDir/layouts \end_layout \end_inset que esté disponible en todas tus configuraciones, debes añadirlo a cada directorio por separado. Puedes evitarlo con el siguiente truco: después de que \SpecialChar LyX crea un directorio adicional, la mayoría de los subdirectorios (véase arriba) están vacíos. Si quieres que la nueva configuración sea una réplica de una existente, reemplaza el subdirectorio vacío con un enlace simbólico que apunte al subdirectorio deseado. Ten precaución, no obstante, con el subdirectorio \begin_inset Flex Code status collapsed \begin_layout Plain Layout doc/ \end_layout \end_inset , puesto que contiene un archivo escrito por el guión de configuración (también accesible mediante \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Reconfigurar \end_layout \end_inset ) que es específico de la configuración. \end_layout \begin_layout Chapter El diálogo Preferencias \end_layout \begin_layout Standard Todas las opciones del diálogo de preferencias se describen en el apéndice \emph on El diálogo \emph default \emph on Preferencias \emph default de la \emph on Guía del usuario \emph default . Ahí encontrarás más detalles sobre algunas opciones. \end_layout \begin_layout Section Formatos \begin_inset CommandInset label LatexCommand label name "sec:Formatos" \end_inset \end_layout \begin_layout Standard El primer paso es definir tus propios formatos de archivo si no lo están ya. Para hacerlo abre el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Preferencias \end_layout \end_inset . En \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Gestión de archivos\SpecialChar menuseparator Formatos de archivo \end_layout \end_inset pulsa el botón \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Nuevo\SpecialChar ldots \end_layout \end_inset para definir el nuevo formato. El campo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Formato \end_layout \end_inset es para el nombre que identificará el formato en la GUI (interfaz gráfica de usuario). El \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Nombre corto \end_layout \end_inset se usa para identificar el formato internamente. Además deberás introducir una extensión de archivo. Todos estos son imprescindibles. El campo opcional \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Atajo de teclado \end_layout \end_inset sirve para asociar una combinación de teclas en los menús. (Por ejemplo, teclear \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ctrl+D \end_layout \end_inset ejecuta \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \family sans Documento\SpecialChar menuseparator Ver \family default \SpecialChar menuseparator DVI \end_layout \end_inset ). \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Visor \end_layout \end_inset \end_layout \begin_layout Standard Un Formato puede tener un \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Visor \end_layout \end_inset y un \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Editor \end_layout \end_inset asociados. Por ejemplo, podrías usar \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ghostview \end_layout \end_inset para ver archivos PostScript. Puedes introducir el comando para iniciar el programa en el campo correspondien te. Al definir este comando puedes usar las cuatro variables listadas en la siguiente sección. El visor se lanza cuando ves una imagen en \SpecialChar LyX o usas el menú \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \family sans Documento\SpecialChar menuseparator Ver \end_layout \end_inset . El editor se lanza cuando pulsas el botón \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Editar externamente \end_layout \end_inset que se muestra al hacer clic derecho en un gráfico o en un material externo, por ejemplo. \end_layout \begin_layout Standard El tipo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout MIME \end_layout \end_inset de un formato es opcional, pero si se especifica, debe ser único para todos los formatos. Se usa para detectar archivos de ese formato de los contenidos de archivo. Para algunos formatos de archivo importantes no hay tipo MIME oficialmente registrado con \begin_inset CommandInset href LatexCommand href name "IANA" target "http://www.iana.org/assignments/media-types/" \end_inset . Por tanto \SpecialChar LyX usa la lista extensa de tipos MIME especificada por \begin_inset CommandInset href LatexCommand href name "freedesktop.org" target "http://www.freedesktop.org/wiki/Specifications/shared-mime-info-spec" \end_inset . \end_layout \begin_layout Standard La opción \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Formato de documento \end_layout \end_inset indica a \SpecialChar LyX que ese formato es adecuado para exportar. Si esto está marcado y existe una ruta de conversión adecuada (véase \begin_inset CommandInset ref LatexCommand ref reference "sec:Convertidores" \end_inset ), el formato aparecerá en el menú \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Archivo\SpecialChar menuseparator Exportar \end_layout \end_inset . También aparecerá en el menú \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \family sans Documento\SpecialChar menuseparator Ver \end_layout \end_inset si se ha especificado un visor para ese formato. Los formatos puros de imagen, como \begin_inset Flex Code status collapsed \begin_layout Plain Layout png \end_layout \end_inset , no deberían usar esta opción. Los formatos que pueden corresponder tanto a gráficos vectoriales como a documentos, como \begin_inset Flex Code status collapsed \begin_layout Plain Layout pdf \end_layout \end_inset , sí deberían usarla. \end_layout \begin_layout Standard La opción \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Formato de gráfico vectorial \end_layout \end_inset indica a \SpecialChar LyX que el formato puede contener gráficos vectoriales. Esta información se emplea para determinar el formato objetivo de los gráficos incluidos para la exportación \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdflatex \end_layout \end_inset . Los gráficos incluidos pueden requerir conversión a \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf \end_layout \end_inset , \begin_inset Flex Noun status collapsed \begin_layout Plain Layout png \end_layout \end_inset , o \begin_inset Flex Noun status collapsed \begin_layout Plain Layout jpg \end_layout \end_inset , puesto que \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdflatex \end_layout \end_inset no puede manejar otros formatos de imagen. Si un archivo incluido no está ya en formato \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf \end_layout \end_inset , \begin_inset Flex Noun status collapsed \begin_layout Plain Layout png \end_layout \end_inset , o \begin_inset Flex Noun status collapsed \begin_layout Plain Layout jpg \end_layout \end_inset , se convierte a \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf \end_layout \end_inset si la opción de formato vectorial está marcada, y si no a \begin_inset Flex Noun status collapsed \begin_layout Plain Layout png \end_layout \end_inset . \end_layout \begin_layout Section Copiadores \end_layout \begin_layout Standard Puesto que todas las conversiones de un formato a otro tienen lugar en el archivo temporal de \SpecialChar LyX , a veces es necesario modificar un archivo antes de copiarlo en el directorio temporal para que la conversión se pueda realizar. \begin_inset Foot status collapsed \begin_layout Plain Layout Por ejemplo, el archivo puede hacer referencia a otros archivos —imágenes, por ejemplo— mediante nombres de archivo relativos, y estos pueden resultar inválidos cuando el archivo se copia en el directorio temporal. \end_layout \end_inset Esto lo hace un Copiador: copia un archivo a (o desde) el directorio temporal y puede modificarlo en el proceso. \end_layout \begin_layout Standard Las definiciones de los copiadores pueden usar ocho variables: \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$s \end_layout \end_inset El directorio de sistema de \SpecialChar LyX (p. \begin_inset space \thinspace{} \end_inset e. \begin_inset space \space{} \end_inset \begin_inset Flex Noun status collapsed \begin_layout Plain Layout /usr/share/lyx \end_layout \end_inset ) \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$i \end_layout \end_inset El archivo de entrada \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$o \end_layout \end_inset El archivo de salida \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$b \end_layout \end_inset Nombre base (sin extensión) en el directorio temporal de \SpecialChar LyX \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$p \end_layout \end_inset Ruta completa al directorio temporal de \SpecialChar LyX \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$r \end_layout \end_inset Ruta completa al archivo original \SpecialChar LyX que se procesa \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$f \end_layout \end_inset Nombre del archivo \SpecialChar LyX (sin ruta de directorio) \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$l \end_layout \end_inset El `nombre \SpecialChar LaTeX ' \end_layout \begin_layout Standard El último debería ser el nombre de archivo tal como debería ponerse en un comando \SpecialChar LaTeX \series bold \backslash include \series default . Solo es pertinente cuando se exportan archivos adecuados para esa inclusión. \end_layout \begin_layout Standard Los copiadores pueden emplearse para hacer casi cualquier cosa con archivos de salida. Por ejemplo, supongamos que quieres copiar archivos \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf \end_layout \end_inset generados a un directorio especial, \begin_inset Flex Code status collapsed \begin_layout Plain Layout /home/you/pdf/ \end_layout \end_inset . En ese caso deberías escribir un guión para intérprete de comandos tal como: \end_layout \begin_layout Standard \begin_inset listings inline false status open \begin_layout Plain Layout #!/bin/bash \end_layout \begin_layout Plain Layout FROMFILE=$1 \end_layout \begin_layout Plain Layout TOFILE=`basename $2` \end_layout \begin_layout Plain Layout cp $FROMFILE /home/you/pdf/$TOFILE \end_layout \end_inset Guárdalo en tu directorio local, — \begin_inset Flex Code status collapsed \begin_layout Plain Layout /home/you/.lyx/scripts/pdfcopier.sh \end_layout \end_inset , supongamos— y hazlo ejecutable si ello es necesario en tu sistema. Después, en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Preferencias \end_layout \end_inset , en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Gestión de archivos\SpecialChar menuseparator Formatos de archivo \end_layout \end_inset , selecciona el formato \begin_inset Flex Noun status collapsed \begin_layout Plain Layout PDF(pdflatex) \end_layout \end_inset —u otro de los formatos pdf— e introduce \begin_inset Flex Code status collapsed \begin_layout Plain Layout pdfcopier.sh $$i $$o \end_layout \end_inset en el campo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Copiador \end_layout \end_inset . \end_layout \begin_layout Standard \SpecialChar LyX usa los copiadores en varias de sus propias conversiones. Por ejemplo, si se encuentran los programas apropiados, \SpecialChar LyX instalará copiadores para los formatos \begin_inset Flex Noun status collapsed \begin_layout Plain Layout HTML \end_layout \end_inset y \begin_inset Flex Noun status collapsed \begin_layout Plain Layout HTML \begin_inset space ~ \end_inset (MS Word) \end_layout \end_inset . Cuando se exporta a estos formatos, el copiador se encarga de que se copien no solo el archivo HTML principal, sino también los diversos archivos asociados (estilos, imágenes, etc). Todos estos archivos se escriben en un subdirectorio del directorio en el que se encuentre el archivo original de \SpecialChar LyX . \begin_inset Foot status collapsed \begin_layout Plain Layout Este copiador puede adaptarse. El argumento opcional \begin_inset Quotes fld \end_inset -e \begin_inset Quotes frd \end_inset acepta una lista, separada por comas, con las extensiones que deben copiarse; si se omite se copiarán todos los archivos. El argumeto \begin_inset Quotes fld \end_inset -t \begin_inset Quotes frd \end_inset determina la extensión añadida al directorio generado. Por omisión es \begin_inset Quotes fld \end_inset \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \SpecialChar LyX conv \end_layout \end_inset \begin_inset Quotes frd \end_inset , así, el HTML generado a partir de \begin_inset Flex Noun status collapsed \begin_layout Plain Layout /ruta/a/archivo.lyx \end_layout \end_inset tendrá la forma \begin_inset Flex Noun status collapsed \begin_layout Plain Layout /ruta/a/archivo.html.\SpecialChar LyX conv \end_layout \end_inset . \end_layout \end_inset \end_layout \begin_layout Section Convertidores \begin_inset CommandInset label LatexCommand label name "sec:Convertidores" \end_inset \end_layout \begin_layout Standard Puedes definir tus propios convertidores para convertir archivos entre distintos formatos. Se hace en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Preferencias\SpecialChar menuseparator Gestión de archivos\SpecialChar menuseparator Convertidores \end_layout \end_inset . \end_layout \begin_layout Standard Para definir un nuevo convertidor de un formato a otro, selecciónalos en las listas desplegables \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Del \begin_inset space ~ \end_inset formato \end_layout \end_inset y \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Al \begin_inset space ~ \end_inset formato \end_layout \end_inset , introduce el comando necesario para la conversión y después pulsa el botón \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Añadir \end_layout \end_inset . En la definición de convertidores se pueden usar distintas variables: \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$s \end_layout \end_inset El directorio de sistema de \SpecialChar LyX \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$i \end_layout \end_inset El archivo de entrada \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$o \end_layout \end_inset El archivo de salida \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$b \end_layout \end_inset El nombre del archivo base del archivo de entrada (sin la extensión) \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$p \end_layout \end_inset La ruta al archivo de entrada \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$r \end_layout \end_inset La ruta al archivo de entrada original (esto es diferente de $$p cuando se invoca una cadena de convertidores). \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$e \end_layout \end_inset El nombre iconv para la codificación del documento. \end_layout \begin_layout Standard En el campo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Indicador adicional \end_layout \end_inset puedes introducir los siguientes, separados por comas: \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout latex \end_layout \end_inset Este convertidor ejecuta alguna forma de \SpecialChar LaTeX . Hará estar disponibles los registros de errores \SpecialChar LaTeX de \SpecialChar LyX \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout needaux \end_layout \end_inset Necesita el archivo \SpecialChar LaTeX \begin_inset Flex Noun status collapsed \begin_layout Plain Layout .aux \end_layout \end_inset para la conversión \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout nice \end_layout \end_inset Necesita un \begin_inset Quotes fld \end_inset bonito \begin_inset Quotes frd \end_inset archivo del trastero, que en la práctica quiere decir un archivo \SpecialChar LaTeX como el que queremos exportar, sin \begin_inset Flex Code status collapsed \begin_layout Plain Layout input@path \end_layout \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout xml \end_layout \end_inset La salida es XML \end_layout \begin_layout Standard Las tres siguientes no son realmente indicadores porque aceptan un argumento en la forma \begin_inset Flex Noun status collapsed \begin_layout Plain Layout key \begin_inset space ~ \end_inset = \begin_inset space ~ \end_inset value \end_layout \end_inset : \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout parselog \end_layout \end_inset Si se pone, el error estándar del convertidor se redirecciona a un archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout infile.out \end_layout \end_inset , y el guión dado como argumento se ejecutará como: \begin_inset Flex Code status collapsed \begin_layout Plain Layout script infile.log \end_layout \end_inset . El argumento puede contener \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$s \end_layout \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout resultdir \end_layout \end_inset El nombre del directorio en el que el convertidor descargará los archivos generados. \SpecialChar LyX no creará ese directorio y no copia nada en él, aunque copiará este directorio al destino. El argumento puede contener \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$b \end_layout \end_inset , que será reemplazado por el nombre base de los archivos de entrada y de salida, respectivamente, cuando se copia el directorio. \begin_inset Newline newline \end_inset Ten en cuenta que resultdir y usetempdir no tienen sentido juntos. El último será ignorado si se da el primero. \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout resultfile \end_layout \end_inset Determina el nombre del archivo de salida y puede contener \begin_inset Flex Code status collapsed \begin_layout Plain Layout $$b \end_layout \end_inset . Solo es sensible con \begin_inset Flex Code status collapsed \begin_layout Plain Layout resultdir \end_layout \end_inset y además es opcional; si no se da, por omisión es `index'. \end_layout \begin_layout Standard Ninguno de estos tres últimos se usan actualmente en ninguno de los convertidore s que son instalados por \SpecialChar LyX . \end_layout \begin_layout Standard No tienes que definir convertidores entre todos los formatos que quieras convertir. Por ejemplo, observarás que no hay convertidor `\SpecialChar LyX a PostScript', sin embargo \SpecialChar LyX exporta a PostScript. Lo hace creando primero un archivo \SpecialChar LaTeX (no es necesario un convertidor para esto), que luego es convertido a DVI mediante el convertidor `\SpecialChar LaTeX a DVI', y por último convierte el archivo DVI resultante a PostScript. \SpecialChar LyX encuentra automáticamente estas 'cadenas' de convertidores y siempre escogerá la cadena más corta posible. Sin embargo, aún puedes definir múltiples métodos de conversión entre formatos. Por ejemplo, la configuración estándar de \SpecialChar LyX provee cinco caminos para convertir \SpecialChar LaTeX a PDF: \end_layout \begin_layout Enumerate directamente, usando \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdflatex \end_layout \end_inset \end_layout \begin_layout Enumerate mediante (DVI y) PostScript, usando \begin_inset Flex Noun status collapsed \begin_layout Plain Layout ps2pdf \end_layout \end_inset \end_layout \begin_layout Enumerate mediante DVI, usando \begin_inset Flex Noun status collapsed \begin_layout Plain Layout dvipdfm \end_layout \end_inset \end_layout \begin_layout Enumerate directamente, usando \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Xe\SpecialChar TeX \end_layout \end_inset \end_layout \begin_layout Enumerate directamente, usando \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Lua\SpecialChar TeX \end_layout \end_inset \end_layout \begin_layout Standard Para construir estas cadenas alternativas tienes que definir múltiples 'formatos de archivo' objetivo, como se describe en la sección \begin_inset space ~ \end_inset \begin_inset CommandInset ref LatexCommand ref reference "sec:Formatos" \end_inset . Por ejemplo, en la configuración estándar, se definen los formatos llamados \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf \end_layout \end_inset (para \begin_inset Flex Noun status collapsed \begin_layout Plain Layout ps2pdf \end_layout \end_inset ), \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf2 \end_layout \end_inset (para \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdflatex \end_layout \end_inset ), \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf3 \end_layout \end_inset (para \begin_inset Flex Noun status collapsed \begin_layout Plain Layout dvipdfm \end_layout \end_inset ), \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf4 \end_layout \end_inset (para \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Xe\SpecialChar TeX \end_layout \end_inset ), y \begin_inset Flex Noun status collapsed \begin_layout Plain Layout pdf5 \end_layout \end_inset (para \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Lua\SpecialChar TeX \end_layout \end_inset ), todos ellos compartiendo la extensión \begin_inset Flex Noun status collapsed \begin_layout Plain Layout .pdf \end_layout \end_inset , y que corresponden a los métodos de conversión antes mencionados. \end_layout \begin_layout Chapter Internacionalización de \SpecialChar LyX \begin_inset CommandInset label LatexCommand label name "cap:Internacionalización-de-LyX" \end_inset \end_layout \begin_layout Standard \SpecialChar LyX soporta el uso de una interfaz traducida. La última vez que lo comprobamos, \SpecialChar LyX suministraba textos en treinta idiomas. El idioma elegido se denomina \emph on locale \emph default . (Para lecciones adicionales sobre configuración de idiomas, véase también la documentación de \begin_inset Quotes fld \end_inset locale \begin_inset Quotes frd \end_inset del sistema operativo. En Linux, la página de manual de \begin_inset Flex Code status collapsed \begin_layout Plain Layout locale(5) \end_layout \end_inset es un buen punto de partida). \end_layout \begin_layout Standard Hay que advertir que estas traducciones funcionarán pero tienen algunos fallos. En particular, todos los diálogos se han diseñado con el inglés en mente, lo que significa que algún texto traducido podría ser demasiado largo para ajustarse al espacio asignado. Esto solo es un problema de presentación en pantalla y no causará ningún perjuicio. Además, encontrarás que algunas traducciones no definen atajos de teclado para todo. A veces, simplemente no hay letras libres suficientes para ello. Otras veces, el traductor todavía no lo ha completado. Nuestro equipo de traducción, al que podrías unirte si quieres, \begin_inset Foot status collapsed \begin_layout Plain Layout Si usas con fluidez un idioma distinto del inglés, ¡unirse a estos equipos es una estupenda forma de corresponder a la comunidad \SpecialChar LyX ! \end_layout \end_inset intentará, por supuesto, corregir estas deficiencias en futuras versiones de \SpecialChar LyX . \end_layout \begin_layout Section Traducción de \SpecialChar LyX \end_layout \begin_layout Subsection Traducción de la interfaz gráfica de usuario (mensajes de texto) \end_layout \begin_layout Standard \SpecialChar LyX utiliza la biblioteca GNU \begin_inset Flex Code status collapsed \begin_layout Plain Layout gettext \end_layout \end_inset para manejar la internacionalización de la interfaz. Para que \SpecialChar LyX hable tu idioma preferido en todos los menús y diálogos es necesario un archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout po \end_layout \end_inset para ese idioma. Si está disponible, tendrás que generar a partir de él un archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout mo \end_layout \end_inset e instalarlo. El procedimiento para hacer todo esto se explica en la documentación de GNU \begin_inset Flex Code status collapsed \begin_layout Plain Layout gettext \end_layout \end_inset . Puedes hacer esto solo para ti, pero también podrías compartir el resultado de tu trabajo con el resto de la comunidad \SpecialChar LyX . Envía un mensaje a la lista de desarrolladores de \SpecialChar LyX para más información sobre cómo proceder. \end_layout \begin_layout Standard En resumen, esto es lo que deberías hacer (xx indica el código del idioma): \end_layout \begin_layout Itemize Inspecciona el código fuente de \SpecialChar LyX . (Véase \begin_inset CommandInset href LatexCommand href name "información en la web" target "http://www.lyx.org/HowToUseGIT" \end_inset .) \end_layout \begin_layout Itemize Copia el archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyx.pot \end_layout \end_inset a la carpeta de los archivos \begin_inset Flex Code status collapsed \begin_layout Plain Layout **.po \end_layout \end_inset . Después lo renombras como \begin_inset Flex Code status collapsed \begin_layout Plain Layout xx.po \end_layout \end_inset . (Si \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyx.pot \end_layout \end_inset no está por ningún sitio, puede rehacerse con el comando de consola \begin_inset Flex Code status collapsed \begin_layout Plain Layout make lyx.pot \end_layout \end_inset en ese directorio, o puedes usar como muestra un archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout po \end_layout \end_inset de algún otro idioma). \end_layout \begin_layout Itemize Edita \begin_inset Flex Code status collapsed \begin_layout Plain Layout xx.po \end_layout \end_inset . \begin_inset Foot status collapsed \begin_layout Plain Layout Es un archivo de texto, se puede editar en cualquier editor de texto. Pero hay programas especializados para editar estos archivos, como \family typewriter Poedit \family default (para todas las plataformas) o \family typewriter KBabel \family default (para KDE). Además, \family typewriter Emacs \family default tiene un `modo' para editar archivos \begin_inset Flex Code status collapsed \begin_layout Plain Layout po \end_layout \end_inset , veáse \begin_inset Flex URL status open \begin_layout Plain Layout https://www.gnu.org/software/gettext/manual/html_node/PO-Mode.html \backslash #PO-Mode \end_layout \end_inset . \end_layout \end_inset Para algunos nombres de menú y otros artilugios hay además atajos de teclado que deberían traducirse. Dichas teclas se marcan con una `|' delante, y deberían traducirse de acuerdo con las palabras y frases del idioma. Además tendrías que rellenar la información al principio del nuevo archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout po \end_layout \end_inset , correo electrónico, etc., para que la gente sepa dónde enviarte sugerencias o divertidas diatribas. \end_layout \begin_layout Standard Si estás haciendo esto solo para ti, entonces: \end_layout \begin_layout Itemize Genera \begin_inset Flex Code status collapsed \begin_layout Plain Layout xx.mo \end_layout \end_inset . Se puede hacer con \begin_inset Flex Code status collapsed \begin_layout Plain Layout msgfmt -o xx.mo < xx.po \end_layout \end_inset . \end_layout \begin_layout Itemize Copia el archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout mo \end_layout \end_inset a tu directorio local, en la carpeta apropiada para los mensajes de las aplicaciones en el idioma xx, con el nombre \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyx.mo \end_layout \end_inset (p. \begin_inset space \thinspace{} \end_inset e. \begin_inset space \space{} \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout /usr/local/share/locale/xx/LC_MESSAGES/lyx.mo \end_layout \end_inset \series bold . \end_layout \begin_layout Standard Sin embargo, ya se ha dicho, lo mejor sería poder añadir el nuevo archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout po \end_layout \end_inset a la distribución de \SpecialChar LyX , para que otros puedan usarlo. Esto requiere hacer cambios en \SpecialChar LyX , así que envía un correo a la lista de desarrolladores si estás interesado en hacerlo. \end_layout \begin_layout Subsubsection Mensajes ambiguos \end_layout \begin_layout Standard A veces resulta que un mensaje en inglés tiene diversas traducciones en un idioma dado. Un ejemplo es la palabra \begin_inset Flex Code status collapsed \begin_layout Plain Layout To \end_layout \end_inset , que en alemán se puede traducir por Nach o Bis, según el sentido exacto que tenga \begin_inset Quotes fld \end_inset to \begin_inset Quotes frd \end_inset en inglés. GNU \begin_inset Flex Code status collapsed \begin_layout Plain Layout gettext \end_layout \end_inset no maneja tales traducciones ambiguas. Por lo tanto, debes añadir alguna información contextual al mensaje: en vez de \begin_inset Flex Code status collapsed \begin_layout Plain Layout To \end_layout \end_inset se pone \begin_inset Flex Code status collapsed \begin_layout Plain Layout To[[as in 'From format x to format y']] \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout To[[as in 'From page x to page y']] \end_layout \end_inset . Ahora las dos apariciones de \begin_inset Flex Code status collapsed \begin_layout Plain Layout To \end_layout \end_inset son diferentes para \begin_inset Flex Code status collapsed \begin_layout Plain Layout gettext \end_layout \end_inset y pueden traducirse correctamente por Nach y Bis, respectivamente. \end_layout \begin_layout Standard Por supuesto que la información contextual debe eliminarse del mensaje original si no se usa en la traducción. Por eso hay que ponerla entre dobles corchetes al final del mensaje (véase el ejemplo). El mecanismo de traducción de \SpecialChar LyX asegura que todo lo que va entre corchetes al final de los mensajes se quita antes de mostrarlos. \end_layout \begin_layout Subsection Traducción de la documentación \end_layout \begin_layout Standard La documentación en línea (menú \family sans \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \family sans A \family default yu \family sans da \end_layout \end_inset \family default ) puede (¡debería!) traducirse. Si hay versiones traducidas de la documentación disponible \begin_inset Foot status collapsed \begin_layout Plain Layout Hasta marzo de 2008, al menos algunos de los documentos han sido traducidos a catorce idiomas, y el Tutorial está disponible en algunos más. \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout locale \end_layout \end_inset está adecuadamente configurado, \SpecialChar LyX las cargará \begin_inset Quotes fld \end_inset automágicamente \begin_inset Quotes frd \end_inset . \SpecialChar LyX busca las traducciones en \family typewriter \begin_inset Flex Code status collapsed \begin_layout Plain Layout \family typewriter \SpecialChar LyX Dir/doc/ \family default xx \family typewriter /DocName.lyx \end_layout \end_inset \family default , donde \family typewriter xx \family default es el código para el idioma en uso actualmente. Si no hay versión traducida se presentará por omisión la versión inglesa del documento. Ten en cuenta que las versiones traducidas deben tener los mismos nombres de archivo (el \family typewriter DocName \family default de antes) que el original. Si te animas a traducir documentación (¡de paso, una excelente manera de leerla atentamente!), hay algunas cosas que deberías tener en cuenta: \end_layout \begin_layout Itemize Consulta la web de traducción de la documentación en \begin_inset CommandInset href LatexCommand href name "http://www.lyx.org/Translation" target "http://www.lyx.org/Translation" \end_inset . Así podrás comprobar el estado actual de traducción de documentos a tu idioma. También si hay alguien que esté coordinando la traducción a tu idioma. Si no hay nadie comunícanos, por favor, si estás interesado en ello. \end_layout \begin_layout Standard Una vez que te has decidido a empezar, he aquí algunos consejos que te pueden ahorrar inconvenientes: \end_layout \begin_layout Itemize ¡Únete al equipo de documentación! En \family sans \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ayuda\SpecialChar menuseparator Intro \family sans ducción \end_layout \end_inset \family default , que por cierto, es el primer documento que se debería traducir, hay informació n sobre cómo hacerlo. \end_layout \begin_layout Itemize Infórmate sobre las normas tipográficas de tu idioma. La tipografía es un antiguo arte que ha desarrollado durante siglos una gran variedad de convenciones en diversas partes del mundo. Estudia también la terminología profesional de los tipógrafos en tu país. Inventar tu propia terminología sólo provocará confusión. \emph on (¡Cuidado! La tipografía es adictiva!) \end_layout \begin_layout Itemize Haz una copia del documento para trabajar sobre ella. Puedes guardarla como archivo personal de traducción en tu directorio \family typewriter ~/.lyx/doc/xx/ \family default . \end_layout \begin_layout Itemize De vez en cuando el documento original (del equipo \SpecialChar LyX ) será actualizado. Usa el visor de fuentes en \begin_inset CommandInset href LatexCommand href name "http://www.lyx.org/trac/timeline" target "http://www.lyx.org/trac/timeline" \end_inset para ver los cambios realizados. De esta manera puedes ver fácilmente qué partes del documento traducido necesitan actualizarse. \end_layout \begin_layout Standard Si encuentras un error en el documento original, ¡corríjelo y notifica los cambios al equipo de documentación! (¿No te has olvidado de contactar con el equipo de documentación, verdad?) \end_layout \begin_layout Standard \begin_inset Branch OutDated status collapsed \begin_layout Section International Keyboard Support \end_layout \begin_layout Standard \emph on [Editor's Note: The following section is by \emph default \shape smallcaps \emph on Ivan Schreter \shape default . It needs to be fixed to conform to the new Documentation Style sheet and to make use of the new v1.0 features. The whole thing also needs to be merged with the section following it.-jw It may also be badly out of date.-rh (2008)] \end_layout \begin_layout Subsection Defining Own Keymaps: Keymap File Format \end_layout \begin_layout Standard Let's look at a keyboard definition file a little closer. It is a plain text file defining \end_layout \begin_layout Itemize key-to-key or key-to-string translations \end_layout \begin_layout Itemize dead keys \end_layout \begin_layout Itemize dead keys exceptions \end_layout \begin_layout Standard To define key-to-key or key-to-string translation, use this command: \end_layout \begin_layout Quotation \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash kmap \end_layout \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout key \end_layout \end_inset outstring \end_layout \begin_layout Standard where \begin_inset Flex Code status collapsed \begin_layout Plain Layout key \end_layout \end_inset is the key to be translated and \begin_inset Flex Code status collapsed \begin_layout Plain Layout outstring \end_layout \end_inset is the string to be inserted into the document. To define dead keys, use: \end_layout \begin_layout Quotation \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash kmod \end_layout \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout key \end_layout \end_inset deadkey \end_layout \begin_layout Standard where \begin_inset Flex Code status collapsed \begin_layout Plain Layout key \end_layout \end_inset is a keyboard key and \begin_inset Flex Code status collapsed \begin_layout Plain Layout deadkey \end_layout \end_inset is dead key name. The following dead keys are supported (shortcut name is in parentheses): \end_layout \begin_layout Quotation \emph on Name \begin_inset space \hfill{} \end_inset Example \end_layout \begin_layout Quotation acute (acu) \begin_inset space \hfill{} \end_inset áéíóú \end_layout \begin_layout Quotation grave (gra) \begin_inset space \hfill{} \end_inset àèìòù \end_layout \begin_layout Quotation macron (mac) \begin_inset space \hfill{} \end_inset ō \end_layout \begin_layout Quotation tilde (til) \begin_inset space \hfill{} \end_inset ñÑ \end_layout \begin_layout Quotation underbar (underb) \begin_inset space \hfill{} \end_inset \begin_inset ERT status open \begin_layout Plain Layout \backslash b o \end_layout \end_inset \end_layout \begin_layout Quotation cedilla (ced) \begin_inset space \hfill{} \end_inset çÇ \end_layout \begin_layout Quotation underdot (underd) \begin_inset space \hfill{} \end_inset \begin_inset ERT status open \begin_layout Plain Layout \backslash d o \end_layout \end_inset \end_layout \begin_layout Quotation circumflex (circu) \begin_inset space \hfill{} \end_inset âêîôû \end_layout \begin_layout Quotation circle (circl) \begin_inset space \hfill{} \end_inset ÅůŮ \end_layout \begin_layout Quotation tie (tie) \begin_inset space \hfill{} \end_inset \begin_inset ERT status open \begin_layout Plain Layout \backslash t o \end_layout \end_inset \end_layout \begin_layout Quotation breve (bre) \begin_inset space \hfill{} \end_inset ă \begin_inset ERT status open \begin_layout Plain Layout \backslash u o \end_layout \end_inset \end_layout \begin_layout Quotation caron (car) \begin_inset space \hfill{} \end_inset čšž \end_layout \begin_layout Quotation hungarian umlaut (hug) \begin_inset space \hfill{} \end_inset őű \end_layout \begin_layout Quotation umlaut (uml) \begin_inset space \hfill{} \end_inset äöü \end_layout \begin_layout Quotation dot (dot) \begin_inset space \hfill{} \end_inset ż \begin_inset ERT status open \begin_layout Plain Layout \backslash .s \end_layout \end_inset \end_layout \begin_layout Standard Since in many international keyboards there are exceptions to what some dead keys should do, you can define them using \end_layout \begin_layout Quotation \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash kxmod \end_layout \end_inset deadkey key outstring \end_layout \begin_layout Standard For example, on Slovak keyboard, if you enter caron-o, it generates circumflex-o , so you put in \end_layout \begin_layout Quotation \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash kxmod \end_layout \end_inset caron o " \backslash ^o" \end_layout \begin_layout Standard to make it work correctly. Also, you have to define as exceptions dead keys over i and j, to remove the dot from them before inserting an accent mark. I will change this when the time comes, but so far I haven't had time. \end_layout \begin_layout Standard Oh, and about characters: backslash is escaped, so to enter it, you'll need double backslash. Also, quotes and \begin_inset Flex Code status collapsed \begin_layout Plain Layout # \end_layout \end_inset have different meaning. \begin_inset Flex Code status collapsed \begin_layout Plain Layout # \end_layout \end_inset marks comments, quotes start and end \SpecialChar LaTeX -style commands. To enter quote, you'll need to use \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash " \end_layout \end_inset , to enter \begin_inset Flex Code status collapsed \begin_layout Plain Layout # \end_layout \end_inset , use \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash # \end_layout \end_inset . \end_layout \begin_layout Standard If you make a keyboard description file that works for your language, please mail it to me, so I can include it in the next keymap distribution. \end_layout \begin_layout Standard More keywords will be supported in keymap configuration file in future, like \end_layout \begin_layout Itemize \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash kinclude filename \end_layout \end_inset \emph on \begin_inset space \hfill{} \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout include \end_layout \end_inset another file \end_layout \begin_layout Itemize \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash kprog program \end_layout \end_inset \emph on \begin_inset space \hfill{} \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout define \end_layout \end_inset an external keymap translation program \end_layout \begin_layout Standard Also, it should look into \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyxrc \end_layout \end_inset file for defaults, too (for example, a \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash kinclude \end_layout \end_inset option to include default keyboard). \end_layout \end_inset \end_layout \begin_layout Section \begin_inset CommandInset label LatexCommand label name "sec:keymap" \end_inset Cosas sobre teclados internacionales \end_layout \begin_layout Standard \begin_inset Note Note status open \begin_layout Plain Layout Al revisar este documento en marzo de 2008, no examiné este asunto porque no lo comprendía. Sería bueno que alguien pudiera hacerlo. (RH) \end_layout \end_inset \end_layout \begin_layout Standard Las dos secciones siguientes describen con detalle la sintaxis de los archivos \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up .kmap \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up .cdef \end_layout \end_inset . Deberían servir de ayuda para diseñar tus propios mapas de teclado si los suministrados no satisfacen tus necesidades. \end_layout \begin_layout Subsection El archivo .kmap \end_layout \begin_layout Standard Un archivo . \begin_inset Flex Code status collapsed \begin_layout Plain Layout kmap \end_layout \end_inset asocia pulsaciones de teclas con caracteres o secuencias de ellos. Como sugiere el nombre, sirve para trazar un mapa del teclado. En esta sección se describen las palabras clave \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up kmap \end_layout \end_inset , \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up kmod \end_layout \end_inset , \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up kxmod \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up kcomb \end_layout \end_inset del archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout .kmap \end_layout \end_inset . \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up kmap \end_layout \end_inset Asocia un carácter a una cadena \end_layout \begin_layout LyX-Code \backslash kmap \family roman \emph on char \family default \emph default \family roman \emph on string \end_layout \begin_layout Standard Esto asocia \emph on char \emph default a \emph on string \emph default . Anotar que en \emph on string \emph default , la doble comilla (") y la barra invertida ( \backslash ) deben escaparse con una barra ( \backslash ) previa. \end_layout \begin_layout Standard Un ejemplo de una declaración de \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \shape up kmap \end_layout \end_inset para hacer que el símbolo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \shape up / \end_layout \end_inset sea generado por la tecla \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \shape up & \end_layout \end_inset es: \end_layout \begin_layout LyX-Code \backslash kmap & / \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up kmod \end_layout \end_inset Especifica un carácter acentuado \end_layout \begin_layout LyX-Code \backslash kmod \family roman \emph on char accent allowed \end_layout \begin_layout Standard Esto hará que el carácter \emph on char \emph default sea un acento \emph on accent \emph default sobre el(los) carácter(es) permitido(s) \emph on allowed \emph default . Este es el mecanismo de tecla muerta \begin_inset Foot status collapsed \begin_layout Plain Layout El término \size normal \emph on \color none tecla \size default \color inherit muerta \emph default se refiere a una tecla que no genera ningún carácter por sí mismo, pero seguida de otra tecla genera el carácter acentuado deseado. Por ejemplo, un caráter con diéresis, ü, se genera de esta manera. \end_layout \end_inset . \end_layout \begin_layout Standard Si pulsas \emph on char \emph default y después una tecla que no está entre las permitidas ( \emph on allowed \emph default ), en la salida obtendrás el carácter \emph on char \emph default seguido por el otro carácter, el no permitido. Hay que tener en cuenta que \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \shape up Retroceso \end_layout \end_inset cancela una tecla muerta, de modo que si pulsas \emph on char \emph default \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \shape up Retroceso \end_layout \end_inset , el cursor no retrocede una posición sino que anula el efecto que \emph on char \emph default hubiera tenido sobre la siguiente pulsación. \end_layout \begin_layout Standard En el ejemplo siguiente, el carácter ' va a generar un acento agudo permitido sobre los caracteres a, e, i, o, u, A, E, I, O, U: \end_layout \begin_layout LyX-Code \backslash kmod ' acute aeiouAEIOU \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout kxmod \end_layout \end_inset Especifica una excepción para el carácter acentuado \end_layout \begin_layout LyX-Code \backslash kxmod \family roman \emph on accent char result \end_layout \begin_layout Standard Define una excepción para el \emph on accent \emph default sobre \emph on char \emph default . El \emph on accent \emph default debe haber sido asignado a una pulsación con una declaración previa de \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up \backslash kmo \shape default d \end_layout \end_inset y \emph on char \emph default no debe estar en el conjunto \emph on allowed \emph default de \emph on accent \emph default . Si tecleas la secuencia \emph on accent char \emph default da como resultado \emph on result \emph default . Si dicha declaración no existe en el archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up .kmap \end_layout \end_inset y tecleas \emph on accent char \emph default , obtendrás \emph on accent_key char \emph default , donde \emph on accent_key \emph default es el primer argumento de la declaración \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up \backslash kmod \end_layout \end_inset . \end_layout \begin_layout Standard El comando siguiente generará äi cuando teclees agudo-i ('i): \end_layout \begin_layout LyX-Code \backslash kxmod acute i " \backslash \backslash '{ \backslash \backslash i}" \end_layout \begin_layout Labeling \labelwidthstring 00.00.0000 \begin_inset Flex Code status collapsed \begin_layout Plain Layout kcomb \end_layout \end_inset Combina dos caracteres acentos \end_layout \begin_layout LyX-Code \backslash kcomb \family roman \emph on accent1 accent2 allowed \end_layout \begin_layout Standard Esto es bastante esotérico. Permite combinar el efecto de \emph on accent1 \emph default y \emph on accent2 \emph default (¡en ese orden!) sobre los caracteres permitidos \emph on allowed \emph default . Las teclas para \emph on accent1 \emph default y \emph on accent2 \emph default deben haber sido declaradas con un comando \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up \backslash kmod \end_layout \end_inset \emph on previamente \emph default en el archivo. \end_layout \begin_layout Standard Considera este ejemplo del archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up greek.kmap \end_layout \end_inset : \end_layout \begin_layout LyX-Code \backslash kmod ; acute aeioyvhAEIOYVH \backslash kmod : umlaut iyIY \backslash kcomb acute umlaut iyIY \end_layout \begin_layout Standard Esto permite pulsar \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \shape up ;:i \end_layout \end_inset y obtener el efecto de \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up \backslash '{ \backslash "{i}} \end_layout \end_inset . En este caso un retroceso cancela la última tecla muerta, así que si tecleas \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \shape up ;: Retroceso i \end_layout \end_inset obtienes \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up \backslash '{i} \end_layout \end_inset . \end_layout \begin_layout Subsection El archivo .cdef \end_layout \begin_layout Standard Después de realizados el mapa \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up .kmap \end_layout \end_inset , un archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up .cde \shape default f \end_layout \end_inset traza el mapa de las cadenas que los símbolos generan para los caracteres en la tipografía actual. La distribución de \SpecialChar LyX actualmente incluye al menos los archivos \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up iso8859-1.cdef \end_layout \end_inset and \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up iso8859-2.cdef \end_layout \end_inset . \end_layout \begin_layout Standard En general el archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout \shape up .cdef \end_layout \end_inset es una secuencia de declaraciones de la forma: \end_layout \begin_layout LyX-Code \family roman \emph on char_index_in_set \family default \emph default \family roman \emph on string \end_layout \begin_layout Standard Por ejemplo, para asociar \begin_inset Flex Noun status collapsed \begin_layout Plain Layout \shape up \backslash '{e} \end_layout \end_inset al correspondiente carácter en el conjunto iso-8859-1 (233), se usa: \end_layout \begin_layout LyX-Code 233 " \backslash \backslash '{e}" \end_layout \begin_layout Standard con \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout " \end_layout \end_inset escapados en \emph on string \emph default . Anotar que el mismo carácter puede aplicarse a más de una cadena. En el archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout i \shape up so-8859-7.cdef \end_layout \end_inset tienes \end_layout \begin_layout LyX-Code 192 " \backslash \backslash '{ \backslash \backslash \backslash "{i}}" \begin_inset Newline newline \end_inset 192 " \backslash \backslash \backslash "{ \backslash \backslash '{i}}" \end_layout \begin_layout Standard Si \SpecialChar LyX no puede encontrar una declaración para la cadena por una tecla o una secuencia con tecla muerta, intentará si aparece como un carácter acentuado y probará a dibujar un acento sobre el carácter en la pantalla. \end_layout \begin_layout Subsection Teclas muertas \end_layout \begin_layout Standard Hay una segunda manera de añadir soporte para caracteres internacionales mediante las denominadas teclas muertas. Una tecla muerta trabaja en combinación con una letra para generar un carácter acentuado. Aquí explicaremos como crear una sencillísima tecla muerta para ilustrar cómo funciona. \end_layout \begin_layout Standard Supongamos que necesitas el carácter circunflejo \begin_inset Quotes fld \end_inset ^ \begin_inset Quotes frd \end_inset . Podrías asociar la tecla \begin_inset Flex Noun status collapsed \begin_layout Plain Layout ^ \end_layout \end_inset (antes \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Mayúsculas-6 \end_layout \end_inset ) al comando \SpecialChar LyX \begin_inset Flex Code status collapsed \begin_layout Plain Layout accent-circumflex \end_layout \end_inset en tu archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout lyxrc \end_layout \end_inset . Ahora, cuando pulses la tecla \begin_inset Flex Noun status collapsed \begin_layout Plain Layout ^ \end_layout \end_inset seguida de una letra, obtendrás esa letra con circunflejo sobre ella. Por ejemplo, la secuencia \begin_inset Quotes fld \end_inset \begin_inset Flex Noun status collapsed \begin_layout Plain Layout ^e \end_layout \end_inset \begin_inset Quotes frd \end_inset genera \begin_inset Quotes fld \end_inset ê \begin_inset Quotes frd \end_inset . Si pruebas \begin_inset Quotes fld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout ^t \end_layout \end_inset \begin_inset Quotes frd \end_inset , sin embargo, \SpecialChar LyX no imprime nada puesto que \begin_inset Flex Noun status collapsed \begin_layout Plain Layout t \end_layout \end_inset nunca lleva un circunflejo. Pulsar \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Espacio \end_layout \end_inset tras una tecla muerta imprime el acento solo. ¡Advierte este último punto! Si asocias una tecla a una tecla muerta necesitará s reasociar el carácter de esa tecla a otra tecla. Asociar la tecla \begin_inset Flex Noun status collapsed \begin_layout Plain Layout , \end_layout \end_inset a una cedilla es una mala idea, puesto que solo obtendrás cedillas en lugar de comas. \end_layout \begin_layout Standard Una forma habitual de asociar teclas muertas es usar \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Meta- \end_layout \end_inset , \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ctrl- \end_layout \end_inset , y \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Mayúsculas- \end_layout \end_inset en combinación con un acento, como \begin_inset Quotes fld \end_inset \begin_inset Flex Noun status collapsed \begin_layout Plain Layout ~ \end_layout \end_inset \begin_inset Quotes frd \end_inset o \begin_inset Quotes fld \end_inset \begin_inset Flex Noun status collapsed \begin_layout Plain Layout , \end_layout \end_inset \begin_inset Quotes frd \end_inset o \begin_inset Quotes fld \end_inset \begin_inset Flex Noun status collapsed \begin_layout Plain Layout ^ \end_layout \end_inset \begin_inset Quotes frd \end_inset . Otra forma incluye el uso de \begin_inset Flex Code status collapsed \begin_layout Plain Layout xmodmap \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout xkeycaps \end_layout \end_inset para configurar la tecla especial \begin_inset Flex Code status collapsed \begin_layout Plain Layout Mode_Switch \end_layout \end_inset . Esta tecla actúa de alguna forma como \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Mayúsculas \end_layout \end_inset y permite teclas a caracteres acentuados. También puedes transformar teclas en muertas asociándolas a algo como \begin_inset Flex Code status collapsed \begin_layout Plain Layout usldead_cedilla \end_layout \end_inset y después asociando esta tecla simbólica al correspondiente comando \SpecialChar LyX . \begin_inset Foot status collapsed \begin_layout Plain Layout Nota de \noun on John Weiss \noun default : Esto es exactamente lo que hago en mis archivos \begin_inset Flex Code status collapsed \begin_layout Plain Layout ~/.lyx/lyxrc \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout ~/.xmodmap \end_layout \end_inset . Tengo mi tecla \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Bloq \begin_inset space ~ \end_inset Despl \end_layout \end_inset configurada como \begin_inset Flex Code status collapsed \begin_layout Plain Layout Mode_Shift \end_layout \end_inset y unas cuantas de estas teclas simbólicas \begin_inset Quotes fld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout usldead_* \end_layout \end_inset \begin_inset Quotes frd \end_inset asociadas a cosas como \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Bloq \begin_inset space ~ \end_inset Despl-^ \end_layout \end_inset y \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Bloq \begin_inset space ~ \end_inset Despl-~ \end_layout \end_inset . Así es como genero mis caracteres acentuados. \end_layout \end_inset Puedes hacer casi cualquier cosa con la tecla \begin_inset Flex Code status collapsed \begin_layout Plain Layout Mode_Switch \end_layout \end_inset : una de las teclas \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Ctrl- \end_layout \end_inset , una tecla de función de reserva, etc. En cuanto a los comandos \SpecialChar LyX que generan acentos, consulta la entrada para \begin_inset Flex Code status collapsed \begin_layout Plain Layout accent-acute \end_layout \end_inset en \emph on Reference Manual \emph default . Ahí encontrarás la lista completa. \end_layout \begin_layout Subsection Guardar la configuración de idioma \end_layout \begin_layout Standard Puedes editar tus preferencias para que el entorno de idioma adecuado sea automáticamente configurado al iniciar \SpecialChar LyX , en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Preferencias \end_layout \end_inset . \end_layout \begin_layout Chapter Instalación de nuevas clases de documento, formatos y plantillas \begin_inset CommandInset label LatexCommand label name "cap:Instalación-de-nuevas" \end_inset \begin_inset Argument 1 status collapsed \begin_layout Plain Layout Instalación de clases, formatos \SpecialChar ldots \end_layout \end_inset \end_layout \begin_layout Standard En este capítulo describimos los procedimientos para crear e instalar nuevos archivos de plantillas y formatos de \SpecialChar LyX , así como repasar la instalación correcta de nuevas clases de documentos \SpecialChar LaTeX . \end_layout \begin_layout Standard En primer lugar, permite que digamos algo sobre la relación entre \SpecialChar LyX y \SpecialChar LaTeX . Lo que hay que entender es que, en cierto sentido, \SpecialChar LyX no sabe nada de \SpecialChar LaTeX . Desde el punto de vista de \SpecialChar LyX , \SpecialChar LaTeX solo es uno más de los varios \begin_inset Quotes fld \end_inset formatos de soporte \begin_inset Quotes frd \end_inset en los que es capaz de generar salida. Otros son DocBook, texto sencillo y XHTML. \SpecialChar LaTeX es, por supuesto, un formato particularmente importante, pero muy poca de la información que \SpecialChar LyX tiene sobre \SpecialChar LaTeX está realmente contenida en el propio programa. \begin_inset Foot status collapsed \begin_layout Plain Layout Algunos comandos son lo bastante complejos como para ser incluidos en el código de \SpecialChar LyX . Pero en general los desarrolladores consideran esto una mala cosa. \end_layout \end_inset Esa información, incluso para las clases estándar como \family typewriter article.cls \family default , está almacenada en 'archivos de formato ( \emph on layout \emph default )'. De igual manera \SpecialChar LyX no sabe gran cosa sobre DocBook o XHTML. Esa información está en los archivos de formato. \end_layout \begin_layout Standard El archivo de formato para una determinada clase de documento se puede considera r como un manual de instrucciones para traducir las estructuras de \SpecialChar LyX —párrafos y sus estilos, ciertos tipos de recuadros, etc.— a las estructuras correspondien tes de \SpecialChar LaTeX , DocBook o XHTML. Por ejemplo, casi todo lo que \SpecialChar LyX sabe sobre \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.cls \end_layout \end_inset está contenido en el archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.layout \end_layout \end_inset y en otros archivos incluidos en este. Por esta razón, quien intente escribir archivos de formato debería empezar por estudiar los archivos existentes. Un buen sitio para empezar es \begin_inset Flex Code status collapsed \begin_layout Plain Layout stdsections.inc \end_layout \end_inset , que está incluido en \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.layout \end_layout \end_inset , \begin_inset Flex Code status collapsed \begin_layout Plain Layout book.layout \end_layout \end_inset y muchos otros archivos de formato para clases de documento. En este archivo se definen las secciones y demás: \begin_inset Flex Code status collapsed \begin_layout Plain Layout stdsections.inc \end_layout \end_inset indica a \SpecialChar LyX como traducir los párrafos con estilos como Sección, Subsección, etc., a los comandos y etiquetas correspondientes en \SpecialChar LaTeX , DocBook y XHTML. El archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.layout \end_layout \end_inset solo incluye, básicamente, varios de estos archivos \begin_inset Flex Code status collapsed \begin_layout Plain Layout std*.inc \end_layout \end_inset . \end_layout \begin_layout Standard Pero definir la correspondencia \SpecialChar LyX -\SpecialChar LaTeX no es lo único que hacen los archivos de formato. Su otra tarea es definir cómo aparecerán en pantalla las estructuras de \SpecialChar LyX . El hecho de que los archivos de formato tengan estas dos tareas es a veces fuente de confusión, porque son totalmente independientes. Indicar a \SpecialChar LyX cómo traducir cierto estilo de párrafo a \SpecialChar LaTeX no le dice cómo mostrarlo en pantalla; a la inversa, indicar cómo mostrar en pantalla un estilo de párrafo no tiene nada que ver con su traducción a \SpecialChar LaTeX (solo permite indicar a \SpecialChar LaTeX cómo mostrarlo). Así pues, en general, cuando defines una nueva construcción en \SpecialChar LyX , siempre tienes que hacer dos cosas: 1) indicar la traducción a \SpecialChar LaTeX y, 2) indicar la presentación en pantalla. \end_layout \begin_layout Standard Gran parte de lo dicho es cierto, también, en relación con otros formatos de salida, aunque XHTML es un poco diferente porque en este caso \SpecialChar LyX \emph on es capaz \emph default , en cierta medida, de usar la información de la presentación de un párrafo en pantalla para generar la presentación (en forma de CSS) del párrafo en un navegador. Incluso en este caso, no obstante, la distinción entre lo que hace \SpecialChar LyX internament e y la forma en que las cosas se muestran externamente sigue en vigor, y ambas se pueden controlar separadamente. Véase \begin_inset CommandInset ref LatexCommand ref reference "sec:Etiquetas-para-XHTML" \end_inset para más detalles. \end_layout \begin_layout Section Instalación de nuevos archivos \SpecialChar LaTeX \end_layout \begin_layout Standard Algunas instalaciones quizá no incluyan un paquete \SpecialChar LaTeX que te gustaría usar en \SpecialChar LyX . Por ejemplo, podrías necesitar Foil\SpecialChar TeX , un paquete para preparar transparencias o diapositivas para proyectores. Las modernas distribuciones de \SpecialChar LaTeX como \SpecialChar TeX Live (2008 o posterior) o MiK\SpecialChar TeX proveen una interfaz de usuario para eso. Por ejemplo, en MiK\SpecialChar TeX inicia su programa \begin_inset Quotes fld \end_inset Administrador de paquetes \begin_inset Quotes frd \end_inset para obtener una lista de los disponibles. Para instalar uno, haz clic derecho sobre él o usa el botón de la herramienta de instalación. \end_layout \begin_layout Standard Si tu distribución \SpecialChar LaTeX no proporciona tal \begin_inset Quotes fld \end_inset administrador de paquetes \begin_inset Quotes frd \end_inset , o si el paquete no está disponible en ella, sigue los siguientes pasos para instalarlo manualmente: \end_layout \begin_layout Enumerate Consigue el paquete de \begin_inset CommandInset href LatexCommand href name "CTAN" target "http://www.ctan.org/" \end_inset o de otro sitio. \end_layout \begin_layout Enumerate Si el paquete contiene un archivo con la extensión \begin_inset Quotes fld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout .ins \end_layout \end_inset \begin_inset Quotes frd \end_inset (es el caso de Foil\SpecialChar TeX ) abre una consola, cambia a la carpeta del archivo y ejecuta el comando \begin_inset Flex Code status collapsed \begin_layout Plain Layout latex foiltex.ins \end_layout \end_inset . Así desempaquetamos y disponemos de todos los archivos para instalar. La mayoría de paquetes \SpecialChar LaTeX no están empaquetados y podemos saltar este paso. \end_layout \begin_layout Enumerate Tienes que decidir si el paquete estará disponible para todos los usuarios o no. \end_layout \begin_deeper \begin_layout Enumerate En sistemas *nix (Linux, OSX, etc.), si el paquete va estar disponible para todos los usuarios del sistema, hay que instalarlo en el árbol 'local' de \SpecialChar TeX , de lo contrario instálalo en tu directorio \SpecialChar TeX de usuario. La ubicación de estos árboles, si no existen ya, depende del sistema. Para encontrarlos mira en el archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout texmf.cnf \end_layout \end_inset . \begin_inset Foot status collapsed \begin_layout Plain Layout Usualmente es el directorio \family sans $TEXMF/web2c \family default , aunque se puede ejecutar el comando \begin_inset Flex Code status collapsed \begin_layout Plain Layout kpsewhich texmf.cnf \end_layout \end_inset para localizarlo. \end_layout \end_inset La ubicación del árbol `local' de \SpecialChar TeX está definida por la variable \begin_inset Flex Code status collapsed \begin_layout Plain Layout TEXMFLOCAL \end_layout \end_inset ; generalmente algo como \family sans /usr/local/share/texmf/ \family default o /usr/local/texlive/XXXX donde XXXX es el año de la distribución \SpecialChar TeX Live instalada. La ubicación del árbol `user' de \SpecialChar TeX está definida por \begin_inset Flex Code status collapsed \begin_layout Plain Layout TEXMFHOME \end_layout \end_inset y generalmente es \family sans $HOME/texmf/ \family default o \begin_inset Flex Code status collapsed \begin_layout Plain Layout \family sans $HOME/.texliveXXXX \end_layout \end_inset .. (Si estas variables no están predefinidas, debes hacerlo.) Probablemente necesites permiso de administrador para crear o modificar el árbol `local', pero no para el árbol `user'. \begin_inset Newline newline \end_inset En general, es recomendable instalar en el árbol `user' porque no será modificad o o sobrescrito al actualizar el sistema. Además, se guardará copia de él cuando hagas copia de seguridad de tu directori o `home' (que debe ser lo habitual). \end_layout \begin_layout Enumerate En Windows, para que el nuevo paquete esté disponible a todos los usuarios, cambia a la carpeta donde está instalado \SpecialChar LaTeX y en la subcarpeta \family sans ~ \backslash tex \backslash latex \family default , (En MiK\SpecialChar TeX , debería ser \family sans ~: \backslash Programs \backslash MiK\SpecialChar TeX \backslash tex \backslash latex \family default ) crea una nueva carpeta \begin_inset Flex Code status collapsed \begin_layout Plain Layout foiltex \end_layout \end_inset y copia en ella todos los archivos del paquete. Para hacer el paquete disponible solo a un usuario o si no dispones de permisos, haz lo mismo pero en el directorio de \SpecialChar LaTeX , p. \begin_inset space \thinspace{} \end_inset ej., en MiK\SpecialChar TeX \begin_inset space ~ \end_inset 2.8 en WinXP \begin_inset Newline newline \end_inset \family sans ~: \backslash Documents and Settings \backslash \backslash Application Data \backslash \begin_inset Newline newline \end_inset \begin_inset Phantom HPhantom status open \begin_layout Plain Layout ~: \backslash \end_layout \end_inset MiK\SpecialChar TeX \backslash 2.8 \backslash tex \backslash latex \family default \begin_inset Newline newline \end_inset en Vista sería \begin_inset Newline newline \end_inset \family sans ~: \backslash Users \backslash \backslash AppData \backslash Roaming \backslash 2.8 \backslash MiK\SpecialChar TeX \backslash tex \backslash latex \family default . \end_layout \end_deeper \begin_layout Enumerate Ahora hay que decir a \SpecialChar LaTeX que hay archivos nuevos. Esto depende de la distribución de \SpecialChar LaTeX : \end_layout \begin_deeper \begin_layout Enumerate Para \SpecialChar TeX Live ejecuta el comando \begin_inset Flex Code status collapsed \begin_layout Plain Layout texhash \end_layout \end_inset en una consola. Si el paquete se instaló para todos los usuarios harán falta permisos de administrador. \end_layout \begin_layout Enumerate Para MiK\SpecialChar TeX , si el paquete se instaló para todos los usuarios, inicia el programa \begin_inset Quotes eld \end_inset Settings \begin_inset space ~ \end_inset (Admin) \begin_inset Quotes erd \end_inset y pulsa el botón \begin_inset Quotes eld \end_inset Refresh FNDB \begin_inset Quotes erd \end_inset . Si no, inicia el programa \begin_inset Quotes eld \end_inset Settings \begin_inset Quotes erd \end_inset y haz lo mismo. \end_layout \end_deeper \begin_layout Enumerate Finalmente, hay que decir a \SpecialChar LyX que hay nuevos paquetes disponibles. Usa el menú \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Reconfigurar \end_layout \end_inset y reinicia \SpecialChar LyX . \end_layout \begin_layout Standard Ya está instalado el paquete. En nuestro ejemplo, la clase de documento \begin_inset Flex Code status collapsed \begin_layout Plain Layout Slides \begin_inset space ~ \end_inset (FoilTeX) \end_layout \end_inset estará ahora disponible en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración\SpecialChar menuseparator Clases \begin_inset space ~ \end_inset de \begin_inset space ~ \end_inset documento \end_layout \end_inset . \end_layout \begin_layout Standard Si quieres usar una clase de documento \SpecialChar LaTeX que no aparece listada en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración\SpecialChar menuseparator Clases \begin_inset space ~ \end_inset de \begin_inset space ~ \end_inset documento \end_layout \end_inset , debes crear un archivo de formato (`layout') para ella. Este es el tema de la sección siguiente. \end_layout \begin_layout Section Tipos de archivos de formato \end_layout \begin_layout Standard Esta sección describe los diversos tipos de arhivos de \SpecialChar LyX que contienen informació n sobre el formato. Los archivos \begin_inset Flex Code status collapsed \begin_layout Plain Layout .layout \end_layout \end_inset describen estilos de párrafo y de carácter, y determinan cómo los debería presentar \SpecialChar LyX y cómo deberían traducirse a \SpecialChar LaTeX , DocBook, XHTML o cualquier otro formato de salida que se vaya a usar. \end_layout \begin_layout Standard Intentaremos aquí dar una minuciosa descripción del proceso; sin embargo, hay tantos tipos diferentes de documentos soportados por clases de \SpecialChar LaTeX que no podemos aspirar a tratar todas las distintas posibilidades o problemas que puedas encontrar. La lista de usuarios de \SpecialChar LyX es frecuentada por gente con mucha experiencia en el diseño de formatos deseosa de compartir sus conocimientos. \end_layout \begin_layout Standard Cuando te pongas a escribir un nuevo formato, es de gran ayuda echar un vistazo a los formatos de ejemplo suministrados con \SpecialChar LyX . Si escribes un `layout' de \SpecialChar LyX para una clase de documento \SpecialChar LaTeX o un módulo que podría ser útil también a otros, no dudes en compartir tu labor enviándola a \begin_inset CommandInset href LatexCommand href name "sección 'Layouts' en wiki LyX" target "http://wiki.lyx.org/Layouts/Layouts" \end_inset o incluso a la lista de desarrolladores de \SpecialChar LyX para poderlo incluir en la distribución. \begin_inset Foot status collapsed \begin_layout Plain Layout Hay que advertir que \SpecialChar LyX se acoge a la licencia GPL, por tanto cualquier material aportado debe tener la misma licencia. \end_layout \end_inset \end_layout \begin_layout Subsection Módulos de formato \begin_inset CommandInset label LatexCommand label name "subsec:Módulos-de-formato" \end_inset \end_layout \begin_layout Standard Hemos hablado hasta ahora de `archivos de formato'. Pero hay distintos tipos de archivos con información sobre formatos. Estrictamente, los archivos de formato tienen la extensión \begin_inset Flex Code status collapsed \begin_layout Plain Layout .layout \end_layout \end_inset y proporcionan a \SpecialChar LyX información sobre las clases de documento. Sin embargo, a partir de \SpecialChar LyX 1.6, esta información puede proporcionarse también en \emph on módulos \emph default , que tienen la extensión \begin_inset Flex Code status collapsed \begin_layout Plain Layout .module \end_layout \end_inset . Los módulos son a los paquetes \SpecialChar LaTeX lo que los formatos a las clases \SpecialChar LaTeX , y algunos módulos —como el módulo Notas finales— dan soporte específico a un paquete determinado —en este caso \begin_inset Flex Code status collapsed \begin_layout Plain Layout endnotes \end_layout \end_inset —. En cierto sentido, los módulos de formato son similares a los `archivos incluidos' \begin_inset Foot status collapsed \begin_layout Plain Layout Estos pueden tener cualquier extensión pero, por convenio, se usa la extensión \begin_inset Flex Code status collapsed \begin_layout Plain Layout .inc \end_layout \end_inset . \end_layout \end_inset —como \begin_inset Flex Code status collapsed \begin_layout Plain Layout stdsections.inc \end_layout \end_inset —, ya que, como estos, los módulos no son específicos para una clase de documento dada, sino que se pueden usar con muchos formatos diferentes. La diferencia es que el uso de un archivo incluido con \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.cls \end_layout \end_inset requiere editar dicho archivo, mientras que los módulos se seleccionan en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración \end_layout \end_inset . \end_layout \begin_layout Standard La construcción de módulos es la forma más fácil de iniciarse en la edición del formato, puesto que puede ser tan sencillo como añadir un nuevo estilo de párrafo o un recuadro flexible. No obstante, los módulos pueden, en principio, contener cualquier cosa que pueda contener un archivo `layout'. \end_layout \begin_layout Standard Después de crear un módulo nuevo y copiarlo en la carpeta \begin_inset Flex Code status collapsed \begin_layout Plain Layout layouts/ \end_layout \end_inset , tendrás que reconfigurar \SpecialChar LyX y reiniciar después para que el módulo aparezca en el menú. Sin embargo, los cambios que hagas al módulo se verán inmediatamente si abres \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración \end_layout \end_inset , seleccionas lo que sea y después pulsas \begin_inset Quotes fld \end_inset OK \begin_inset Quotes frd \end_inset . \emph on Es muy recomendable guardar el trabajo antes de hacer eso. \emph default De hecho, \emph on es muy recomendable no intentar editar los módulos mientras se está trabajando simultáneamente en un documento \emph default . Aunque los desarrolladores, por supuesto, se esfuerzan en mantener la estabilid ad de \SpecialChar LyX en estas situaciones, errores sintácticos y similares en el archivo del módulo podrían causar extraños comportamientos. \end_layout \begin_layout Subsubsection Formato local \end_layout \begin_layout Standard Los módulos son a \SpecialChar LyX lo que los paquetes a \SpecialChar LaTeX . Sin embargo, a veces puede suceder que necesites un recuadro específico o un estilo de carácter solo para un documento, y escribir un módulo que estará disponible también para otros documentos tiene poco sentido. En estos casos, lo que necesitas es el \begin_inset Quotes fld \end_inset Formato local \begin_inset Quotes frd \end_inset de \SpecialChar LyX . \end_layout \begin_layout Standard Se encuentra en \family sans Documento\SpecialChar menuseparator Configuración\SpecialChar menuseparator Formato local \family default . El gran cuadro de texto permite introducir todo lo que podría incluirse en un archivo de formato o en un módulo. De hecho, el formato local de un documento se puede considerar como un módulo que le pertenece solo a él. Por tanto, en particular, hay que introducir una etiqueta \begin_inset Flex Code status collapsed \begin_layout Plain Layout Format \end_layout \end_inset . Cualquier formato es aceptable, pero debería usarse normalmente el actual formato. (En \SpecialChar LyX 2.2 el formato actual es 60). \end_layout \begin_layout Standard Una vez introducido algo en el panel \begin_inset Flex Code status collapsed \begin_layout Plain Layout Local Layout \end_layout \end_inset , \SpecialChar LyX habilitará el botón \begin_inset Quotes fld \end_inset Validar \begin_inset Quotes frd \end_inset de debajo. Pulsando ese botón \SpecialChar LyX determinará si lo introducido es información válida para el formato elegido. \SpecialChar LyX informará del resultado pero, desafortunadamente, no indicará qué errores pudiera haber habido. Sin embargo, si \SpecialChar LyX se ha arrancado en una terminal se verán ahí los errores. El formato local no se podrá guardar hasta que se haya introducido algo válido. \end_layout \begin_layout Standard Las advertencias al final de la sección anterior se aplican también aquí. Es mejor no enredar con formato local mientras se está trabajando, especialment e si no se ha guardado el documento. Dicho esto, usar formato local en un documento de prueba puede ser una forma muy conveniente de probar ideas de formato, o incluso de empezar a desarrollar un módulo. \end_layout \begin_layout Subsection Formato para archivos \begin_inset Flex Noun status collapsed \begin_layout Plain Layout .sty \end_layout \end_inset \end_layout \begin_layout Standard Probablemente te vas a encontrar con dos situaciones a la hora de querer soportar una nueva clase de documento \SpecialChar LaTeX , según se trate de archivos de estilo ( \begin_inset Flex Code status collapsed \begin_layout Plain Layout .sty \end_layout \end_inset ) o de archivos de clases \SpecialChar LaTeX2e ( \begin_inset Flex Code status collapsed \begin_layout Plain Layout .cls \end_layout \end_inset ). Dar soporte a un nuevo estilo es bastante fácil. Dar soporte a una nueva clase es un poco más difícil. Trataremos el primer caso en esta sección y el otro en la siguiente. Lo mismo cabe decir, por supuesto, para el soporte de un nuevo DocBook DTD. \end_layout \begin_layout Standard El caso más sencillo es aquel en el que la nueva clase de documento se suministr a como archivo de estilo que se usará conjuntamente con una clase ya soportada. Para nuestro ejemplo supondremos que el archivo de estilo se llama \begin_inset Flex Noun status collapsed \begin_layout Plain Layout myclass.sty \end_layout \end_inset y que se usará conjuntamente con \begin_inset Flex Noun status collapsed \begin_layout Plain Layout report.cls \end_layout \end_inset , que es una clase estándar. \end_layout \begin_layout Standard Empieza por copiar el archivo `layout' existente en tu directorio local: \begin_inset Foot status collapsed \begin_layout Plain Layout Evidentemente, cuál es tu directorio local variará según la plataforma, y además \SpecialChar LyX permite especificarlo al inicio usando la opción \begin_inset Flex Code status collapsed \begin_layout Plain Layout -userdir \end_layout \end_inset . \end_layout \end_inset \end_layout \begin_layout LyX-Code cp report.layout ~/.lyx/layouts/myclass.layout \end_layout \begin_layout Standard Después edita \begin_inset Flex Code status collapsed \begin_layout Plain Layout myclass.layout \end_layout \end_inset y cambia la línea: \end_layout \begin_layout LyX-Code \backslash DeclareLaTeXClass{report} \end_layout \begin_layout Standard por la línea \end_layout \begin_layout LyX-Code \backslash DeclareLaTeXClass[report, myclass.sty]{report (myclass)} \end_layout \begin_layout Standard Después añade: \end_layout \begin_layout LyX-Code Preamble \begin_inset Newline newline \end_inset \backslash usepackage{myclass} \begin_inset Newline newline \end_inset EndPreamble \end_layout \begin_layout Standard cerca del principio del archivo. \end_layout \begin_layout Standard Inicia \SpecialChar LyX y selecciona \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Reconfigurar \end_layout \end_inset . Después reinicia \SpecialChar LyX y haz una prueba con un documento nuevo. En el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración \end_layout \end_inset deberías ver \begin_inset Quotes fld \end_inset \begin_inset Flex Noun status collapsed \begin_layout Plain Layout report (myclass) \end_layout \end_inset \begin_inset Quotes frd \end_inset en la lista de clases de documento. Es probable que algunos de los comandos de secciones y demás en tu nueva clase funcionen de distinta manera a como lo hacen en la clase estándar — \begin_inset Flex Code status collapsed \begin_layout Plain Layout report \end_layout \end_inset en este ejemplo—, de modo que si quieres, ahora puedes enredar un rato con los ajustes de las distintas secciones. La información del formato de las secciones se encuentra en \begin_inset Flex Code status collapsed \begin_layout Plain Layout stdsections.inc \end_layout \end_inset , pero no necesitas copiar ni cambiar este archivo. Simplemente añade tus cambios a tu archivo `layout' después de la línea \begin_inset Flex Code status collapsed \begin_layout Plain Layout Input stdclass.inc \end_layout \end_inset , que incluye \begin_inset Flex Code status collapsed \begin_layout Plain Layout stdsections.inc \end_layout \end_inset . Por ejemplo, podrías añadir estas líneas: \end_layout \begin_layout LyX-Code Style Chapter \end_layout \begin_layout LyX-Code Font \end_layout \begin_layout LyX-Code Family Sans \end_layout \begin_layout LyX-Code EndFont \end_layout \begin_layout LyX-Code End \end_layout \begin_layout Standard para cambiar la tipografía de los encabezados de capítulo a sans-serif. Esto sobrescribirá (o, en este caso, añadirá) la declaración para el estilo Capítulo. \end_layout \begin_layout Standard Tu nuevo paquete puede proporcionar además comandos o entornos no presentes en la clase base. En este caso, los añadirás al archivo `layout'. Véase sección \begin_inset space ~ \end_inset \begin_inset CommandInset ref LatexCommand ref reference "sec:Estructura-del-archivo-layout" \end_inset para información sobre cómo hacerlo. \end_layout \begin_layout Standard Si \begin_inset Flex Noun status collapsed \begin_layout Plain Layout myclass.sty \end_layout \end_inset se puede usar con diferentes clases de documento, e incluso si no es así, lo más sencillo sería escribir un módulo que puedes cargar con la clase base. El módulo más simple posible podría ser: \end_layout \begin_layout LyX-Code # \backslash DeclareLyXModule{My Package} \end_layout \begin_layout LyX-Code #DescriptionBegin \end_layout \begin_layout LyX-Code #Support for mypkg.sty. \end_layout \begin_layout LyX-Code #DescriptionEnd \begin_inset Newline newline \end_inset \end_layout \begin_layout LyX-Code Format 60 \begin_inset Newline newline \end_inset \end_layout \begin_layout LyX-Code Preamble \begin_inset Newline newline \end_inset \backslash usepackage{mypkg} \begin_inset Newline newline \end_inset EndPreamble \end_layout \begin_layout Standard Un módulo más complejo podría modificar el comportamiento de alguna estructura ya existente o definir algunas nuevas. De nuevo te remitimos a sección \begin_inset space ~ \end_inset \begin_inset CommandInset ref LatexCommand ref reference "sec:Estructura-del-archivo-layout" \end_inset para los detalles. \end_layout \begin_layout Subsection Formato para archivos \begin_inset Flex Noun status collapsed \begin_layout Plain Layout .cls \end_layout \end_inset \end_layout \begin_layout Standard En este caso hay dos opciones. Una, que el archivo de clase esté él mismo basado en una clase de documento existente. Por ejemplo, muchas clases de tesis están basadas en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout book.cls \end_layout \end_inset . Para ver si el tuyo lo está, busca una línea parecida a \end_layout \begin_layout LyX-Code \backslash LoadClass{book} \end_layout \begin_layout Standard en el archivo. Si está, entonces puedes proceder en gran parte como en la sección anterior, aunque la línea Declare\SpecialChar LaTeX Class será diferente. Si tu nueva clase es tesis y está basada en book, la línea debería poner: \begin_inset Foot status collapsed \begin_layout Plain Layout Y será mucho más fácil si guardas el archivo como \begin_inset Flex Code status collapsed \begin_layout Plain Layout thesis.layout \end_layout \end_inset : \SpecialChar LyX supone que la clase de documento tiene el mismo nombre que el archivo de formato. \end_layout \end_inset \end_layout \begin_layout LyX-Code \backslash DeclareLaTeXClass[thesis,book]{thesis} \end_layout \begin_layout Standard Si, por el contrario, la nueva clase no está basada en una ya existente, probablemente tendrás que ir pensando en tu propio formato. Recomendamos firmemente copiar un archivo de formato existente que use una clase de \SpecialChar LaTeX parecida y modificarlo, si es posible. O al menos, usa un archivo existente como punto de partida para ver qué items son los que te deben preocupar. Los detalles se discuten a continuación. \end_layout \begin_layout Subsection Creación de plantillas \begin_inset CommandInset label LatexCommand label name "subsec:Creación-de-plantillas" \end_inset \end_layout \begin_layout Standard Una vez escrito un archivo de formato para una clase nueva de documento, podrías pensar en escribir además una \emph on plantilla \emph default para ella. Una plantilla funciona como una especie de tutorial para tu formato, mostrando cómo podría usarse, aunque sea con contenido irrelevante. Naturalmente, puedes echar un vistazo a las plantillas incluidas en \SpecialChar LyX para obtener ideas. \end_layout \begin_layout Standard Las plantillas se crean exactamente igual que un documento normal: usando \SpecialChar LyX . La única diferencia es que los documentos corrientes tienen todos los ajustes posibles, incluso el esquema de tipografías y el tamaño del papel. Generalmente, un usuario no desea que una plantilla sobrescriba sus ajustes preferidos para dichos parámetros. Por esta razón, el diseñador de una plantilla debería quitar comandos como \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash font_roman \end_layout \end_inset o \begin_inset Flex Code status collapsed \begin_layout Plain Layout \backslash papersize \end_layout \end_inset de los archivos de plantillas de \SpecialChar LyX . Esto se puede hacer con cualquier editor de texto sencillo, por ejemplo \begin_inset Flex Code status collapsed \begin_layout Plain Layout vi \end_layout \end_inset o \begin_inset Flex Code status collapsed \begin_layout Plain Layout notepad \end_layout \end_inset . \end_layout \begin_layout Standard Los archivos editados de plantillas que has creado se ubican en \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir/templates/ \end_layout \end_inset , copia los que uses del directorio global de plantillas en \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir/templates/ \end_layout \end_inset al mismo sitio y redefine la ruta a las plantillas en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Preferencias\SpecialChar menuseparator Rutas \end_layout \end_inset . \end_layout \begin_layout Standard De paso advertiremos que hay una plantilla, \begin_inset Flex Code status collapsed \begin_layout Plain Layout defaults.lyx \end_layout \end_inset , que tiene un papel especial: esta plantilla se carga cada vez que abres un documento nuevo con \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Archivo\SpecialChar menuseparator Nuevo \end_layout \end_inset , con el fin de proporcionar ajustes predeterminados por omisión. Para (re)crear esta plantilla desde dentro de \SpecialChar LyX , lo que debes hacer es abrir un documento, establecer los ajustes deseados y usar el botón \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Guardar como predeterminados \end_layout \end_inset . \end_layout \begin_layout Subsection Actualización de antiguos archivos de formato \end_layout \begin_layout Standard El formato de los archivos de formato cambia con cada nueva versión de \SpecialChar LyX , de modo que los antiguos archivos de formato deben ser convertidos. Si \SpecialChar LyX lee un archivo de formato con formato antiguo lanzará la herramienta de conversión \begin_inset Flex Code status collapsed \begin_layout Plain Layout layout2layout.py \end_layout \end_inset , que lo convierte a un archivo temporal con el formato actual. El archivo original se deja sin tocar. Si lo usas a menudo y lo quieres convertir permanentemente para evitar que \SpecialChar LyX tenga que hacerlo cada vez, ejecuta el convertidor a mano: \end_layout \begin_layout Enumerate renombra el archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout myclass.layout \end_layout \end_inset a \begin_inset Flex Code status collapsed \begin_layout Plain Layout myclass.old \end_layout \end_inset \end_layout \begin_layout Enumerate ejecuta el comando \begin_inset Newline newline \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout python \SpecialChar LyX Dir/scripts/layout2layout.py myclass.old myclass.layout \end_layout \end_inset \begin_inset Newline newline \end_inset donde \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir \end_layout \end_inset es el nombre de tu directorio \SpecialChar LyX en el sistema. \end_layout \begin_layout Standard La conversión manual no puede manejar archivos incluidos, así que estos tendrán que convertirse separadamente. \end_layout \begin_layout Section Estructura del archivo `layout' \begin_inset CommandInset label LatexCommand label name "sec:Estructura-del-archivo-layout" \end_inset \end_layout \begin_layout Standard Ha llegado por fin el momento de ponerte manos a la obra y crear o editar tu propio archivo de formato; las siguientes secciones describen aquello a lo que te vas a enfrentar. Nuestro consejo es ir despacito, probando y guardando a menudo. En realidad no es para tanto, pero la multitud de opciones puede llegar a abrumarte si intentas hacer muchas cosas a la vez. Resulta más sencillo usar formatos existentes de \SpecialChar LyX como ejemplo o referencia y modificarlos según tus necesidades. \end_layout \begin_layout Standard Todos los rótulos o etiquetas en los archivos de formato son insensibles a las mayúsculas; esto significa que \begin_inset Flex Code status collapsed \begin_layout Plain Layout Style \end_layout \end_inset , \begin_inset Flex Code status collapsed \begin_layout Plain Layout style \end_layout \end_inset y \begin_inset Flex Code status collapsed \begin_layout Plain Layout StYlE \end_layout \end_inset son el mismo comando. Los valores posibles se imprimen entre corchetes detrás del nombre de la característica. Si en una descripción de una clase de texto no se especifica una característica , el valor por omisión se escribe en estilo \begin_inset Flex Code status collapsed \begin_layout Plain Layout \emph on énfasis \end_layout \end_inset . Si el argumento tiene un tipo de dato como \begin_inset Quotes fld \end_inset string \begin_inset Quotes frd \end_inset o \begin_inset Quotes fld \end_inset float \begin_inset Quotes frd \end_inset , el valor por omisión se muestra de esta manera: \begin_inset Flex Code status collapsed \begin_layout Plain Layout float= \emph on default \end_layout \end_inset . \end_layout \begin_layout Subsection Declaración de la clase de documento y clasificación \end_layout \begin_layout Standard Las líneas de un archivo de formato que empiezan con \begin_inset Flex Code status collapsed \begin_layout Plain Layout # \end_layout \end_inset son comentarios. Hay una excepción a esta regla: todos los formatos deben comenzar con líneas como: \end_layout \begin_layout LyX-Code \size small #% Do not delete the line below; configure depends on this \begin_inset Foot status collapsed \begin_layout Plain Layout \emph on N. \begin_inset space \thinspace{} \end_inset del T. \emph default : No borrar la línea siguiente; la configuración depende de ella \end_layout \end_inset \end_layout \begin_layout LyX-Code \size small # \backslash DeclareLaTeXClass{Article (Standard Class)} \end_layout \begin_layout LyX-Code \size small # \backslash DeclareCategory{Articles} \end_layout \begin_layout Standard La segunda y tercera líneas se usan en la (re)configuración de \SpecialChar LyX . El archivo `layout' es leido por el guión de \SpecialChar LaTeX \begin_inset Flex Code status collapsed \begin_layout Plain Layout chkconfig.ltx \end_layout \end_inset de un modo especial tal que \begin_inset Flex Code status collapsed \begin_layout Plain Layout # \end_layout \end_inset se ignora. La primera línea es solo un comentario, la segunda contiene la declaración obligatoria de la clase de texto y la tercera línea contiene la clasificación opcional de la clase. Si estas líneas aparecen en un archivo llamado \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.layout \end_layout \end_inset , entonces definen una clase de texto de nombre \begin_inset Flex Code status collapsed \begin_layout Plain Layout article \end_layout \end_inset (el nombre del archivo de formato) que usa la clase de documento \SpecialChar LaTeX \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.cls \end_layout \end_inset (por omisión se usa el mismo nombre para ambos). La palabra \begin_inset Quotes fld \end_inset Article (Standard Class) \begin_inset Quotes frd \end_inset se utiliza como descripción de la clase de texto y es la que aparece en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración \end_layout \end_inset . La categoría ( \begin_inset Quotes fld \end_inset Articles \begin_inset Quotes frd \end_inset en el ejemplo) también se usa en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración \end_layout \end_inset : las clases de texto se agrupan por estas categorías (generalmente son géneros, así son categorías típicas \begin_inset Quotes fld \end_inset Articles \begin_inset Quotes frd \end_inset , \begin_inset Quotes fld \end_inset Books \begin_inset Quotes frd \end_inset , \begin_inset Quotes fld \end_inset Reports \begin_inset Quotes frd \end_inset , \begin_inset Quotes fld \end_inset Letters \begin_inset Quotes frd \end_inset , \begin_inset Quotes fld \end_inset Presentations \begin_inset Quotes frd \end_inset , \begin_inset Quotes fld \end_inset Curricula Vitae \begin_inset Quotes frd \end_inset etc.). Si no se ha declarado categoría la clase se pondrá en el grupo \begin_inset Quotes fld \end_inset Sin categoría \begin_inset Quotes frd \end_inset . \end_layout \begin_layout Standard Supongamos que has escrito tu propia clase de texto, que utiliza la clase de documento \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.cls \end_layout \end_inset , pero en la que has cambiado el aspecto de los encabezados de sección. Si lo pones en un archivo \begin_inset Flex Code status collapsed \begin_layout Plain Layout myarticle.layout \end_layout \end_inset , la cabecera de este archivo debería ser: \end_layout \begin_layout LyX-Code \size small #% Do not delete the line below; configure depends on this \end_layout \begin_layout LyX-Code \size small # \backslash DeclareLaTeXClass[article]{Article (con Mis Encabezados)} \end_layout \begin_layout LyX-Code \size small # \backslash DeclareCategory{Articles} \end_layout \begin_layout Standard Esto declara la clase de texto \begin_inset Flex Code status collapsed \begin_layout Plain Layout myarticle \end_layout \end_inset , asociada con la clase de documento \SpecialChar LaTeX \begin_inset Flex Code status collapsed \begin_layout Plain Layout article.cls \end_layout \end_inset , y cuya descripción es \begin_inset Quotes fld \end_inset Article (con Mis Encabezados) \begin_inset Quotes frd \end_inset . Si la clase de texto depende de varios paquetes, puedes declararla así: \end_layout \begin_layout LyX-Code \size small #% Do not delete the line below; configure depends on this \end_layout \begin_layout LyX-Code \size small # \backslash DeclareLaTeXClass[article,foo.sty]{Article (con Mis Encabezados)} \end_layout \begin_layout LyX-Code \size small # \backslash DeclareCategory{Articles} \end_layout \begin_layout Standard Esto indica que la clase de texto utiliza el paquete foo.sty. Finalmente, también es posible declarar clases para código DocBook. Una declaración típica podría ser: \end_layout \begin_layout LyX-Code \size small #% Do not delete the line below; configure depends on this \end_layout \begin_layout LyX-Code \size small # \backslash DeclareDocBookClass[article]{SGML (DocBook Article)} \end_layout \begin_layout LyX-Code \size small # \backslash DeclareCategory{Articles} \end_layout \begin_layout Standard Anotar que estas declaraciones pueden llevar también un parámetro opcional que declare el nombre de la clase de documento (pero no una lista). \end_layout \begin_layout Standard Así, para ser lo más explícito posible, la forma de la declaración del formato es: \end_layout \begin_layout LyX-Code \size small # \backslash DeclareLaTeXClass[class,package.sty]{descripción del formato} \end_layout \begin_layout LyX-Code \size small # \backslash DeclareCategory{category} \end_layout \begin_layout Standard La clase solo debe especificarse si el nombre de archivo de la clase \SpecialChar LaTeX y el nombre de archivo del formato son diferentes; si el nombre del archivo de clase no se especifica, \SpecialChar LyX simplemente supondrá que es el mismo que el del archivo de formato. \end_layout \begin_layout Standard Cuando la clase de texto se ha modificado según tus necesidades, lo que debes hacer es copiarla a \begin_inset Flex Code status collapsed \begin_layout Plain Layout \SpecialChar LyX Dir/layouts/ \end_layout \end_inset o a \begin_inset Flex Code status collapsed \begin_layout Plain Layout UserDir/layouts \end_layout \end_inset , ejecutar \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Herramientas\SpecialChar menuseparator Reconfigurar \end_layout \end_inset , y reiniciar \SpecialChar LyX . Ahora la nueva clase de texto debería estar disponible junto con las demás. \end_layout \begin_layout Standard Una vez instalado el `layout', puedes editarlo y ver los cambios sin tener que reconfigurar ni reiniciar \SpecialChar LyX . \begin_inset Foot status collapsed \begin_layout Plain Layout En versiones de \SpecialChar LyX anteriores a 1.6 no era así. Como resultado, la edición de archivos de formato podía llevar mucho tiempo, pues constantemente había que reconfigurar y reiniciar. \end_layout \end_inset Se puede forzar la recarga del formato en uso mediante la función \SpecialChar LyX \begin_inset Flex Noun status collapsed \begin_layout Plain Layout layout-reload \end_layout \end_inset . No hay atajo predeterminado para esta función —aunque por supuesto, puedes asociarle tú mismo una secuencia de teclas—. Normalmente usarás esta función introduciéndola simplemente en el \emph on mini-buffer \emph default . \end_layout \begin_layout Standard \emph on Aviso \emph default : Esto es mucho más que una \begin_inset Quotes fld \end_inset característica avanzada \begin_inset Quotes frd \end_inset . Es \emph on muy \emph default recomendable que no intentes editar tu formato mientras estés trabajando en un documento importante. Usa un documento de prueba. Los errores sintácticos y similares en tu archivo de formato podrían provocar comportamientos extraños. En particular, tales errores podrían provocar que \SpecialChar LyX vea el formato actual como inválido e intente cambiar a algún otro. \begin_inset Foot status collapsed \begin_layout Plain Layout En realidad, los errores en la sintaxis pueden causar incluso el cierre de \SpecialChar LyX , porque ciertos tipos de error pueden hacer que \SpecialChar LyX sea incapaz de leer \emph on cualquier \emph default información de formato. Por favor ten cuidado. \end_layout \end_inset El equipo \SpecialChar LyX procura que \SpecialChar LyX se mantenga estable en estos casos, pero es mejor prevenir que curar. \begin_inset Foot status collapsed \begin_layout Plain Layout De todos modos, haz copias de seguridad regularmente. Y sé bueno con mamá. \end_layout \end_inset \end_layout \begin_layout Subsection Declaración de un módulo \end_layout \begin_layout Standard Un módulo debe empezar con una línea como la siguiente: \end_layout \begin_layout LyX-Code # \backslash DeclareLyXModule[endnotes.sty]{Endnotes} \end_layout \begin_layout Standard El argumento imprescindible es, entre llaves, el nombre del módulo tal como deberá aparecer en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración\SpecialChar menuseparator Módulos \end_layout \end_inset . El argumento entre corchetes es opcional: declara cualesquiera paquetes \SpecialChar LaTeX de los que depende el módulo. También es posible usar la forma \begin_inset Flex Noun status collapsed \begin_layout Plain Layout from->to \end_layout \end_inset como argumento opcional, que declara que el módulo solo puede usarse cuando existe una cadena de conversión entre los formatos ` \begin_inset Flex Code status collapsed \begin_layout Plain Layout from \end_layout \end_inset ' y ` \begin_inset Flex Code status collapsed \begin_layout Plain Layout to \end_layout \end_inset '. \end_layout \begin_layout Standard La declaración del módulo debe proseguir con líneas como las siguientes: \begin_inset Foot status collapsed \begin_layout Plain Layout Preferiblemente en inglés si el módulo se va a publicar en \SpecialChar LyX . Esta descripción aparecerá en la lista de mensajes para ser traducidos en la siguiente actualización de la interfaz. \end_layout \end_inset \end_layout \begin_layout LyX-Code #DescriptionBegin \end_layout \begin_layout LyX-Code #Adds an endnote command, in addition to footnotes. \end_layout \begin_layout LyX-Code #You will need to add \backslash theendnotes in \SpecialChar TeX code where you \end_layout \begin_layout LyX-Code #want the endnotes to appear. \end_layout \begin_layout LyX-Code #DescriptionEnd \end_layout \begin_layout LyX-Code #Requires: somemodule | othermodule \end_layout \begin_layout LyX-Code #Excludes: badmodule \end_layout \begin_layout Standard La descripción se usa en \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración\SpecialChar menuseparator Módulos \end_layout \end_inset para proporcionar al usuario información sobre las acciones del módulo. La línea \begin_inset Flex Code status collapsed \begin_layout Plain Layout Requires \end_layout \end_inset sirve para identificar otros módulos con los que se debe usar este; la línea \begin_inset Flex Code status collapsed \begin_layout Plain Layout Excludes \end_layout \end_inset identifica los módulos con los que este no se puede usar. Ambas son opcionales, y, como se ve, varios módulos deben separarse con el símbolo tubería: |. Anotar que los módulos requeridos se tratan de forma disyuntiva: debe usarse \emph on al menos uno \emph default de los módulos requeridos. Y no se puede usar \emph on ningún \emph default módulo excluido. Aquí, los módulos se identifican por sus nombres de archivo sin la extensión \begin_inset Flex Code status collapsed \begin_layout Plain Layout .module \end_layout \end_inset . Por tanto, \begin_inset Flex Code status collapsed \begin_layout Plain Layout somemodule \end_layout \end_inset es realmente \begin_inset Flex Code status collapsed \begin_layout Plain Layout somemodule.module \end_layout \end_inset . \end_layout \begin_layout Subsection Número de formato \end_layout \begin_layout Standard La primera línea no comentada de cualquier archivo `layout', `inc' o `module' \emph on debe \emph default contener el número de formato del archivo: \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout Format \end_layout \end_inset [ \begin_inset Flex Code status collapsed \begin_layout Plain Layout int \end_layout \end_inset ] El número de formato del archivo de formato (`layout'). \end_layout \begin_layout Standard Esta etiqueta se introdujo en \SpecialChar LyX \begin_inset space ~ \end_inset 1.4.0. Los archivos anteriores no tienen un número explícito y se consideran como \begin_inset Flex Code status collapsed \begin_layout Plain Layout Format \begin_inset space ~ \end_inset 1 \end_layout \end_inset . El número para la versión actual de \SpecialChar LyX es formato 60. Cada versión de \SpecialChar LyX es capaz de leer los formatos de versiones anteriores, de la misma forma que puede leer archivos producidos con versiones de \SpecialChar LyX anteriores. Sin embargo, no está previsto convertir a formatos anteriores. \end_layout \begin_layout Subsection Parámetros generales de clases de texto \begin_inset CommandInset label LatexCommand label name "subsec:Parámetros-generales-clases" \end_inset \end_layout \begin_layout Standard Estos son los parámetros generales que describen completamente una clase de documento. (Esto \emph on no \emph default significa que deban aparecer en archivos \begin_inset Flex Code status collapsed \begin_layout Plain Layout .layout \end_layout \end_inset en vez de en módulos. Un módulo puede contener cualquier etiqueta de formato). \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout AddToHTMLPreamble \end_layout \end_inset Añade información para el bloque \begin_inset Flex Code status collapsed \begin_layout Plain Layout \end_layout \end_inset cuando el documento se exporte a XHTML. Típicamente, debería usarse para exportar información de estilo CSS, aunque se puede usar para cualquier cosa que pueda aparecer en \begin_inset Flex Code status collapsed \begin_layout Plain Layout \end_layout \end_inset . Debe acabar con \begin_inset Quotes eld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout EndPreamble \end_layout \end_inset \begin_inset Quotes erd \end_inset . \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout AddToPreamble \end_layout \end_inset Añade información al preámbulo del documento. Debe terminar con \begin_inset Quotes fld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout EndPreamble \end_layout \end_inset \begin_inset Quotes frd \end_inset . \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout CiteFormat \end_layout \end_inset Define formatos a usar en la presentación de información bibliográfica. Véase la sección \begin_inset space ~ \end_inset \begin_inset CommandInset ref LatexCommand ref reference "subsec:Descripción-formato-cita" \end_inset para detalles. Debe terminar con \begin_inset Quotes eld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout End \end_layout \end_inset \begin_inset Quotes erd \end_inset . \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout ClassOptions \end_layout \end_inset Describe varias opciones globales soportadas por la clase de documento. Véase la sección \begin_inset space ~ \end_inset \begin_inset CommandInset ref LatexCommand ref reference "subsec:ClassOptions" \end_inset para una descripción. Debe terminar con \begin_inset Quotes fld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout End \end_layout \end_inset \begin_inset Quotes frd \end_inset . \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout Columns \end_layout \end_inset [ \begin_inset Flex Code status collapsed \begin_layout Plain Layout \emph on 1 \end_layout \end_inset , \begin_inset space \thinspace{} \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout 2 \end_layout \end_inset ] Establece el número de columnas por omisión. Se puede cambiar en el diálogo \begin_inset Flex Noun status collapsed \begin_layout Plain Layout Documento\SpecialChar menuseparator Configuración \end_layout \end_inset . \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout Counter \end_layout \end_inset Esta secuencia define un nuevo contador. Véase la sección \begin_inset space ~ \end_inset \begin_inset CommandInset ref LatexCommand ref reference "subsec:Contadores" \end_inset para detalles. Debe terminar con \begin_inset Quotes fld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout End \end_layout \end_inset \begin_inset Quotes frd \end_inset . \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout DefaultFont \end_layout \end_inset Establece la tipografía por omisión para presentar el documento. Véase la sección \begin_inset space ~ \end_inset \begin_inset CommandInset ref LatexCommand ref reference "subsec:Tipografía" \end_inset para cómo declarar tipografías. Debe terminar con \begin_inset Quotes fld \end_inset \begin_inset Flex Code status collapsed \begin_layout Plain Layout EndFont \end_layout \end_inset \begin_inset Quotes frd \end_inset . \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout DefaultModule \end_layout \end_inset [ \begin_inset Flex Code status collapsed \begin_layout Plain Layout \end_layout \end_inset ] Especifica un módulo que se incluirá por omisión en esta clase de documento; deberá declararse por su nombre de archivo sin la extensión \begin_inset Flex Code status collapsed \begin_layout Plain Layout .module \end_layout \end_inset . El usuario puede, aún así, quitar el módulo, pero estará activo al principio. (Esto se aplica solo cuando se crean archivos nuevos, o si esta clase se elige para un documento existente.) \end_layout \begin_layout Description \begin_inset Flex Code status collapsed \begin_layout Plain Layout DefaultStyle \end_layout \end_inset [ \begin_inset Flex Code status collapsed \begin_layout Plain Layout