Personalizar Lyx
Personalizar Lyx
Personalizar Lyx
el usuario avanzado
por el equipo LYX*
Versin 2.0.x
31 de diciembre de 2012
* Si
tienes correcciones o comentarios, envalos, por favor, a la lista de correo de Documentacin de LYX, [email protected]. Incluye [Customization] en la cabecera de
asunto, y enva una cc al actual mantenedor de este documento, Richard Heck <[email protected]>.
ndice general
1. Introduccin
.
.
.
.
.
.
.
3
3
3
4
5
5
5
6
3. El dilogo Preferencias
3.1. Formatos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2. Copiadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. Convertidores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
7
8
9
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4. Internacionalizacin de LYX
4.1. Traduccin de LYX . . . . . . . . . . . . . . . . . . . . . . .
4.1.1. Traduccin de la interfaz grfica de usuario (mensajes
4.1.1.1. Mensajes ambiguos . . . . . . . . . . . . . .
4.1.2. Traduccin de la documentacin . . . . . . . . . . . .
4.2. Cosas sobre teclados internacionales . . . . . . . . . . . . . .
4.2.1. El archivo .kmap . . . . . . . . . . . . . . . . . . . .
4.2.2. El archivo .cdef . . . . . . . . . . . . . . . . . . . . .
4.2.3. Teclas muertas . . . . . . . . . . . . . . . . . . . . .
4.2.4. Guardar la configuracin de idioma . . . . . . . . . .
5. Instalacin de clases, formatos . . .
5.1. Instalacin de nuevos archivos LATEX . . . .
5.2. Tipos de archivos de formato . . . . . . . .
5.2.1. Mdulos de formato . . . . . . . . .
5.2.1.1. Formato local . . . . . . . .
5.2.2. Formato para archivos .sty . . . . . .
5.2.3. Formato para archivos .cls . . . . . .
5.2.4. Creacin de plantillas . . . . . . . . .
5.2.5. Actualizacin de antiguos archivos de
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
formato
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
11
. . . . . 11
de texto) 11
. . . . . 12
. . . . . 12
. . . . . 13
. . . . . 14
. . . . . 15
. . . . . 16
. . . . . 16
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
17
18
19
20
21
21
23
23
24
ndice general
5.3. Estructura del archivo layout . . . . . . . . . . . . . . . . . . . . . .
5.3.1. Declaracin de la clase de documento . . . . . . . . . . . . . .
5.3.2. Declaracin de un mdulo . . . . . . . . . . . . . . . . . . . .
5.3.3. Nmero de formatoLa primera lnea no comentada de cualquier
archivo layout, inc o module debe contener el nmero de
formato del archivo: . . . . . . . . . . . . . . . . . . . . . . .
5.3.4. Parmetros generales de clases de texto . . . . . . . . . . . . .
5.3.5. Seccin ClassOptions . . . . . . . . . . . . . . . . . . . . . .
5.3.6. Estilos de prrafo . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.7. Internacionalizacin de estilos de prrafo . . . . . . . . . . . .
5.3.8. Flotantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.9. Recuadros flexibles y formato del recuadro . . . . . . . . . . .
5.3.10. Contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3.11. Descripcin de las tipografas . . . . . . . . . . . . . . . . . .
5.3.12. Descripcin del formato de cita . . . . . . . . . . . . . . . . .
5.4. Etiquetas para la salida XHTML . . . . . . . . . . . . . . . . . . . .
5.4.1. Estilos de prrafo . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.2. Recuadros XHTML . . . . . . . . . . . . . . . . . . . . . . . .
5.4.3. Flotantes XHTML . . . . . . . . . . . . . . . . . . . . . . . .
5.4.4. Formato de la Bibliografa . . . . . . . . . . . . . . . . . . . .
5.4.5. CSS generado por LYX . . . . . . . . . . . . . . . . . . . . . .
6. Insercin de material externo
6.1. Cmo funciona? . . . . . . . . . . . . . . . . . .
6.2. El archivo de configuracin de plantillas externas
6.2.1. La cabecera de la plantilla . . . . . . . . .
6.2.2. La seccin Format . . . . . . . . . . . . .
6.2.3. Definiciones de prembulo . . . . . . . . .
6.3. El mecanismo de sustitucin . . . . . . . . . . . .
6.4. Discusin sobre seguridad . . . . . . . . . . . . .
ii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
24
25
26
27
27
30
31
38
39
40
43
44
45
46
47
49
50
51
51
53
53
54
55
56
57
58
60
1 Introduccin
Este manual trata de las caractersticas de 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, envo de comandos mediante LYX Server, internacionalizacin, instalacin de nuevas clases de LATEX y de formatos de LYX, etc. Seguro
que no podemos aspirar a tratar todo lo que se puede cambiar, nuestross desarrolladores aaden caractersticas nuevas ms deprisa de lo que las podemos documentar
pero explicaremos las modificaciones ms comunes y y esperamos orientarte en la direccin correcta para algunas ms desconocidas.
2.1.
Qu hay en LYXDir?
LYXDir y sus subdirectorios contienen archivos que pueden emplearse para personalizar el comportamiento de LYX. Puedes cambiar muchos de ellos desde dentro
mismo de LYX mediante el dilogo Herramientas . Preferencias. La mayor parte de las
adaptaciones personales que querrs hacer en LYX se puede hacer en este dilogo.
Sin embargo, muchos otros aspectos internos de LYX pueden cambiarse modificando
los archivos en LYXDir. Estos archivos pertenecen a diversas categoras, descritas en
las siguientes subsecciones.
2.1.1.
2.1.2.
Directorios
este directorio contiene archivos con la extensin .bind que definen las
combinaciones de teclas usadas en LYX. Si ah existe una versin nacional
de un archivo bind llamado $LANG_xxx.bind, sta se usar en primer
lugar.
contiene archivos de documentacin de LYX (incluido ste que ests leyendo). El archivo LATEXConfig.lyx merece atencin especial, como se mencion antes. Si existe una versin nacional del documento de ayuda en el
subdirectorio doc/xx, ste se usar en primer lugar. Vase 4 para detalles.
examples/ contiene archivos de ejemplo que describen el uso de algunas caractersticas. Se puede acceder a ellos con el botn Ejemplos en el buscador de
archivos.
images/
kbd/
layouts/ contiene las clases de textos y los archivos de los mdulos descritos en 5.
lyx2lyx
scripts/ contiene algunos archivos que demuestran las capacidades de la caracterstica Plantilla externa. Tambin contiene algunos guiones usados por el
propio LYX.
templates/ contiene los archivos de plantillas estndar de LYX descritas en ??.
ui/
2.1.3.
Estos archivos son utilizados internamente por LYX y generalmente no deben ser
modificados sino por los desarrolladores.
CREDITS
contiene la lista de desarrolladores de LYX. Se muestra con el men Ayuda . Acerca de LYX.
2.1.4.
encodings contiene tablas que describen cmo los distintos cdigos de caracteres se
transcriben a Unicode.
external_templates contiene las plantillas disponibles para la caracterstica Material externo.
languages contiene una lista de los idiomas actualmente soportados por LYX.
2.2.
Aunque uses LYX como usuario sin privilegios, puedes adaptar su configuracin a
tus necesidades. El directorio UserDir contiene todos los archivos de configuracin
personal. Es el directorio especificado como Directorio del usuario en Ayuda . Acerca
de LYX. Este directorio se usa como espejo de LYXDir, que quiere decir que cada archivo
en UserDir es un equivalente del correspondiente archivo en LYXDir. Cualquiera de
los archivos de configuracin 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.
Para clarificar las cosas vamos a poner unos ejemplos:
Las preferencias establecidas en el dilogo Herramientas . Preferencias se guardan
en un archivo preferences en UserDir.
Si reconfiguras mediante Herramientas . Reconfigurar, LYX ejecuta el guin
configure.py, y los archivos resultantes se escriben en tu directorio de usuario. Esto significa que cualquier archivo adicional de clase de texto que pudieras
haber aadido en UserDir/layouts se sumar a la lista de clases en el dilogo
Documento . Configuracin.
2.3.
3 El dilogo Preferencias
Todas las opciones del dilogo de preferencias se describen en el apndice El dilogo Preferencias de la Gua del usuario. Ah encontrars ms detalles sobre algunas
opciones.
3.1.
Formatos
El primer paso es definir tus propios formatos de archivo si no lo estn ya. Para
hacerlo abre el dilogo Herramientas . Preferencias. En Gestin de archivos . Formatos
de archivo pulsa el botn Nuevo. . . para definir el nuevo formato. El campo Formato
es para el nombre que identificar el formato en la GUI (interfaz grfica de usuario).
El Nombre corto se usa para identificar el formato internamente. Adems debers
introducir una extensin de archivo. Todos estos son imprescindibles. El campo opcional Atajo de teclado sirve para asociar una combinacin de teclas en los mens.
(Por ejemplo, teclear Alt-V D ejecuta Ver . DVI). Visor
Un Formato puede tener un Visor y un Editor asociados. Por ejemplo, podras usar
Ghostview para ver archivos PostScript. Puedes introducir el comando para iniciar
el programa en el campo correspondiente. Al definir este comando puedes usar las
cuatro variables listadas en la siguiente seccin. El visor se lanza cuando ves una
imagen en LYX o usas el men Ver. El editor se lanza cuando pulsas el botn Editar
externamente que se muestra al hacer clic derecho en un grfico o en un material
externo, por ejemplo.
La opcin Formato de documento indica a LYX que ese formato es adecuado para
exportar. Si esto est marcado y existe una ruta de conversin adecuada (vase 3.3),
el formato aparecer en el men Archivo . Exportar. Tambin aparecer en el men
Ver si se ha especificado un visor para ese formato. Los formatos puros de imagen,
como png, no deberan usar esta opcin. Los formatos que pueden corresponder tanto
a grficos vectoriales como a documentos, como pdf, s deberan usarla.
La opcin Formato de grfico vectorial indica a LYX que el formato puede contener
grficos vectoriales. Esta informacin se emplea para determinar el formato objetivo
de los grficos incluidos para la exportacin pdflatex. Los grficos incluidos pueden
requerir conversin a pdf, png, o jpg, puesto que pdflatex no puede manejar otros
formatos de imagen. Si un archivo incluido no est ya en formato pdf, png, o jpg, se
convierte a pdf si la opcin de formato vectorial est marcada, y si no a png.
3 El dilogo Preferencias
3.2.
Copiadores
Puesto que todas las conversiones de un formato a otro tienen lugar en el archivo
temporal de LYX, a veces es necesario modificar un archivo antes de copiarlo en
el directorio temporal para que la conversin se pueda realizar.1 Esto lo hace un
Copiador: copia un archivo a (o desde) el directorio temporal y puede modificarlo en
el proceso.
Las definiciones de los copiadores pueden usar cuatro variables:
$$s
$$i
El archivo de entrada
$$o
El archivo de salida
$$l
El nombre LATEX
El ltimo debera ser el nombre de archivo tal como debera ponerse en un comando
LATEX \include. Solo es pertinente cuando se exportan archivos adecuados para esa
inclusin.
Los copiadores pueden emplearse para hacer casi cualquier cosa con archivos de
salida. Por ejemplo, supongamos que quieres copiar archivos pdf generados a un
directorio especial, /home/you/pdf/. En ese caso deberas escribir un guin para
intrprete de comandos tal como:
#!/ b i n / bash
FROMFILE=$1
TOFILE=basename $2
cp $FROMFILE /home/ you / pdf /$TOFILE
Gurdalo en tu directorio local, /home/you/.lyx/scripts/pdfcopier.sh, supongamos y hazlo ejecutable si ello es necesario en tu sistema. Despus, en el dilogo
Herramientas . Preferencias, en Gestin de archivos . Formatos de archivo, selecciona el
formato PDF(pdflatex) u otro de los formatos pdf e introduce pdfcopier.sh $$i
$$o en el campo Copiador.
LYX usa los copiadores en varias de sus propias conversiones. Por ejemplo, si se
encuentran los programas apropiados, LYX instalar copiadores para los formatos
HTML y HTML (MS Word). Cuando se exporta a estos formatos, el copiador se
encarga de que se copien no solo el archivo HTML principal, sino tambin los diversos
archivos asociados (estilos, imgenes, etc). Todos estos archivos se escriben en un
subdirectorio del directorio en el que se encuentre el archivo original de LYX.2
1
Por ejemplo, el archivo puede hacer referencia a otros archivos imgenes, por ejemplo mediante nombres de archivo relativos, y estos pueden resultar invlidos cuando el archivo se copia
en el directorio temporal.
2
Este copiador puede adaptarse. El argumento opcional -e acepta una lista, separada por comas,
con las extensiones que deben copiarse; si se omite se copiarn todos los archivos. El argumeto
-t determina la extensin aadida al directorio generado. Por omisin es LYXconv, as, el
HTML generado a partir de /ruta/a/archivo.lyx tendr la forma /ruta/a/archivo.html.LYXconv.
3.3 Convertidores
3.3.
Convertidores
Puedes definir tus propios convertidores para convertir archivos entre distintos formatos. Se hace en el dilogo Herramientas . Preferencias . Gestin de archivos . Convertidores.
Para definir un nuevo convertidor de un formato a otro, seleccinalos en las listas
desplegables Del formato y Al formato, introduce el comando necesario para la conversin y despus pulsa el botn Aadir. En la definicin de convertidores se pueden
usar distintas variables:
$$s
$$i
El archivo de entrada
$$o
El archivo de salida
$$b
$$p
$$r
$$e
En el campo Indicador adicional puedes introducir los siguientes, separados por comas:
latex
needaux
xml
La salida es XML
3 El dilogo Preferencias
resultfile Determina el nombre del archivo de salida y puede contener $$b. Solo
es sensible con resultdir y adems es opcional; si no se da, por omisin
es index.
Ninguno de estos tres ltimos se usan actualmente en ninguno de los convertidores
que son instalados por LYX.
No tienes que definir convertidores entre todos los formatos que quieras convertir.
Por ejemplo, observars que no hay convertidor LYX a PostScript, sin embargo LYX
exporta a PostScript. Lo hace creando primero un archivo LATEX (no es necesario
un convertidor para esto), que luego es convertido a DVI mediante el convertidor
LATEX a DVI, y por ltimo convierte el archivo DVI resultante a PostScript. LYX
encuentra automticamente estas cadenas de convertidores y siempre escoger la
cadena ms corta posible. Sin embargo, an puedes definir mltiples mtodos de
conversin entre formatos. Por ejemplo, la configuracin estndar de LYX provee tres
caminos para convertir LATEX a PDF: directamente, usando pdflatex; mediante (DVI
y) PostScript, usando ps2pdf; o mediante DVI, usando dvipdfm. Para construir estas
cadenas alternativas tienes que definir mltiples formatos de archivo objetivo, como
se describe en la seccin 3.1. Por ejemplo, en la configuracin estndar, se definen
los formatos llamados pdf, pdf2, y pdf3, todos ellos compartiendo la extensin .pdf, y
que corresponden a los mtodos de conversin antes mencionados.
10
4 Internacionalizacin de LYX
LYX soporta el uso de una interfaz traducida. La ltima vez que lo comprobamos, LYX suministraba textos en treinta idiomas. El idioma elegido se denomina
locale. (Para lecciones adicionales sobre configuracin de idiomas, vase tambin la
documentacin de locale del sistema operativo. En Linux, la pgina de manual de
locale(5) es un buen punto de partida).
Hay que advertir que estas traducciones funcionarn pero tienen algunos fallos. En
particular, todos los dilogos se han diseado con el ingls en mente, lo que significa que algn texto traducido podra ser demasiado largo para ajustarse al espacio
asignado. Esto solo es un problema de presentacin en pantalla y no causar ningn
perjuicio. Adems, encontrars que algunas traducciones no definen atajos de teclado para todo. A veces, simplemente no hay letras libres suficientes para ello. Otras
veces, el traductor todava no lo ha completado. Nuestro equipo de traduccin, al
que podras unirte si quieres,1 intentar, por supuesto, corregir estas deficiencias en
futuras versiones de LYX.
4.1.
Traduccin de LYX
4.1.1.
Si usas con fluidez un idioma distinto del ingls, unirse a estos equipos es una estupenda forma
de corresponder a la comunidad LYX!
11
4 Internacionalizacin de LYX
con el comando de consola make lyx.pot en ese directorio, o puedes usar como
muestra un archivo po de algn otro idioma).
Edita xx.po.2 Para algunos nombres de men y otros artilugios hay adems
atajos de teclado que deberan traducirse. Dichas teclas se marcan con una |
delante, y deberan traducirse de acuerdo con las palabras y frases del idioma.
Adems tendras que rellenar la informacin al principio del nuevo archivo po,
correo electrnico, etc., para que la gente sepa dnde enviarte sugerencias o
divertidas diatribas.
Si ests haciendo esto solo para ti, entonces:
Genera xx.mo. Se puede hacer con msgfmt -o xx.mo < xx.po.
Copia el archivo mo a tu directorio local, en la carpeta apropiada para los
mensajes de las aplicaciones en el idioma xx, con el nombre lyx.mo (p. e.
/usr/local/share/locale/xx/LC_MESSAGES/lyx.mo.
Sin embargo, ya se ha dicho, lo mejor sera poder aadir el nuevo archivo po a la
distribucin de LYX, para que otros puedan usarlo. Esto requiere hacer cambios en
LYX, as que enva un correo a la lista de desarrolladores si ests interesado en hacerlo.
4.1.1.1.
Mensajes ambiguos
A veces resulta que un mensaje en ingls tiene diversas traducciones en un idioma dado. Un ejemplo es la palabra To, que en alemn se puede traducir por Nach
o Bis, segn el sentido exacto que tenga to en ingls. GNU gettext no maneja
tales traducciones ambiguas. Por lo tanto, debes aadir alguna informacin contextual al mensaje: en vez de To se pone To[[as in From format x to format y]]
y To[[as in From page x to page y]]. Ahora las dos apariciones de To son
diferentes para gettext y pueden traducirse correctamente por Nach y Bis, respectivamente.
Por supuesto que la informacin contextual debe eliminarse del mensaje original si
no se usa en la traduccin. Por eso hay que ponerla entre dobles corchetes al final del
mensaje (vase el ejemplo). El mecanismo de traduccin de LYX asegura que todo lo
que va entre corchetes al final de los mensajes se quita antes de mostrarlos.
4.1.2.
Traduccin de la documentacin
La documentacin en lnea (men Ayuda) puede (debera!) traducirse. Si hay versiones traducidas de la documentacin disponible3 y locale est adecuadamente
2
Es un archivo de texto, se puede editar en cualquier editor de texto. Pero hay programas especializados para editar estos archivos, como Poedit (para todas las plataformas) o KBabel (para
KDE). Adems, Emacs tiene un modo para editar archivos po.
3
Hasta marzo de 2008, al menos algunos de los documentos han sido traducidos a catorce idiomas,
y el Tutorial est disponible en algunos ms.
12
4.2.
Las dos secciones siguientes describen con detalle la sintaxis de los archivos .kmap
y .cdef. Deberan servir de ayuda para disear tus propios mapas de teclado si los
suministrados no satisfacen tus necesidades.
13
4 Internacionalizacin de LYX
4.2.1.
El archivo .kmap
kmap
kmod
\kxmod
Define una excepcin para el accent sobre char. El accent debe haber sido asignado a
una pulsacin con una declaracin previa de \kmod y char no debe estar en el conjunto
allowed de accent. Si tecleas la secuencia accent char da como resultado result. Si dicha
declaracin no existe en el archivo .kmap y tecleas accent char, obtendrs accent_key
char, donde accent_key es el primer argumento de la declaracin \kmod.
El comando siguiente generar i cuando teclees agudo-i (i):
4
El trmino tecla muerta se refiere a una tecla que no genera ningn carcter por s mismo, pero
seguida de otra tecla genera el carcter acentuado deseado. Por ejemplo, un carter con diresis,
, se genera de esta manera.
14
\kmod ; acute aeioyvhAEIOYVH \kmod : umlaut iyIY \kcomb acute umlaut iyIY
Esto permite pulsar ;:i y obtener el efecto de \{\"{i}}. En este caso un retroceso
cancela la ltima tecla muerta, as que si tecleas ;: Retroceso i obtienes \{i}.
4.2.2.
El archivo .cdef
Despus de realizados el mapa .kmap, un archivo .cdef traza el mapa de las cadenas que los smbolos generan para los caracteres en la tipografa actual. La distribucin de LYX actualmente incluye al menos los archivos iso8859-1.cdef and
iso8859-2.cdef.
En general el archivo .cdef es una secuencia de declaraciones de la forma:
char_index_in_set string
Por ejemplo, para asociar \{e} al correspondiente carcter en el conjunto iso-8859-1
(233), se usa:
233 "\\{e}"
con \ y " escapados en string. Anotar que el mismo carcter puede aplicarse a ms
de una cadena. En el archivo iso-8859-7.cdef tienes
192 "\\{\\\"{i}}"
192 "\\\"{\\{i}}"
Si LYX no puede encontrar una declaracin para la cadena por una tecla o una
secuencia con tecla muerta, intentar si aparece como un carcter acentuado y probar
a dibujar un acento sobre el carcter en la pantalla.
15
4 Internacionalizacin de LYX
4.2.3.
Teclas muertas
Hay una segunda manera de aadir soporte para caracteres internacionales mediante las denominadas teclas muertas. Una tecla muerta trabaja en combinacin
con una letra para generar un carcter acentuado. Aqu explicaremos como crear una
sencillsima tecla muerta para ilustrar cmo funciona.
Supongamos que necesitas el carcter circunflejo ^. Podras asociar la tecla ^ (antes Maysculas-6) al comando LYX accent-circumflex en tu archivo lyxrc. Ahora,
cuando pulses la tecla ^ seguida de una letra, obtendrs esa letra con circunflejo sobre
ella. Por ejemplo, la secuencia ^e genera . Si pruebas ^t, sin embargo, LYX
no imprime nada puesto que t nunca lleva un circunflejo. Pulsar Espacio tras una
tecla muerta imprime el acento solo. Advierte este ltimo punto! Si asocias una tecla
a una tecla muerta necesitars reasociar el carcter de esa tecla a otra tecla. Asociar
la tecla , a una cedilla es una mala idea, puesto que solo obtendrs cedillas en lugar
de comas.
Una forma habitual de asociar teclas muertas es usar Meta-, Ctrl-, y Maysculasen combinacin con un acento, como ~ o , o ^. Otra forma incluye el uso de
xmodmap y xkeycaps para configurar la tecla especial Mode_Switch. Esta tecla acta
de alguna forma como Maysculas y permite teclas a caracteres acentuados. Tambin
puedes transformar teclas en muertas asocindolas a algo como usldead_cedilla
y despus asociando esta tecla simblica al correspondiente comando LYX.5 Puedes
hacer casi cualquier cosa con la tecla Mode_Switch: una de las teclas Ctrl-, una tecla
de funcin de reserva, etc. En cuanto a los comandos LYX que generan acentos,
consulta la entrada para accent-acute en Reference Manual. Ah encontrars la
lista completa.
4.2.4.
Puedes editar tus preferencias para que el entorno de idioma adecuado sea automticamente configurado al iniciar LYX, en el dilogo Herramientas . Preferencias.
Nota de John Weiss: Esto es exactamente lo que hago en mis archivos ~/.lyx/lyxrc y
~/.xmodmap. Tengo mi tecla Bloq Despl configurada como Mode_Shift y unas cuantas de estas teclas simblicas usldead_* asociadas a cosas como Bloq Despl-^ y Bloq Despl-~. As es
como genero mis caracteres acentuados.
16
Algunos comandos son lo bastante complejos como para ser incluidos en el cdigo de LYX. Pero
en general los desarrolladores consideran esto una mala cosa.
17
5.1.
18
5.2.
Esta seccin describe los diversos tipos de arhivos de LYX que contienen informacin
sobre el formato. Los archivos .layout describen estilos de prrafo y de carcter, y
determinan cmo los debera presentar LYX y cmo deberan traducirse a LATEX,
DocBook, XHTML o cualquier otro formato de salida que se vaya a usar.
Intentaremos aqu dar una minuciosa descripcin del proceso; sin embargo, hay
tantos tipos diferentes de documentos soportados por clases de LATEX que no podemos
19
5.2.1.
Mdulos de formato
Hemos hablado hasta ahora de archivos de formato. Pero hay distintos tipos de archivos con informacin sobre formatos. Estrictamente, los archivos de formato tienen
la extensin .layout y proporcionan a LYX informacin sobre las clases de documento. Sin embargo, a partir de LYX 1.6, esta informacin puede proporcionarse tambin
en mdulos, que tienen la extensin .module. Los mdulos son a los paquetes LATEX lo
que los formatos a las clases LATEX, y algunos mdulos como el mdulo Notas finales dan soporte especfico a un paquete determinado en este caso endnotes. En
cierto sentido, los mdulos de formato son similares a los archivos incluidos4 como stdsections.inc, ya que, como estos, los mdulos no son especficos 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 article.cls requiere editar
dicho archivo, mientras que los mdulos se seleccionan en el dilogo Documento .
Configuracin.
La construccin de mdulos es la forma ms fcil de iniciarse en la edicin del
formato, puesto que puede ser tan sencillo como aadir un nuevo estilo de prrafo o un
recuadro flexible. No obstante, los mdulos pueden, en principio, contener cualquier
cosa que pueda contener un archivo layout.
Despus de crear un mdulo nuevo y copiarlo en la carpeta layouts/, tendrs
que reconfigurar LYX y reiniciar despus para que el mdulo aparezca en el men.
Sin embargo, los cambios que hagas al mdulo se vern inmediatamente si abres
Documento . Configuracin, seleccionas lo que sea y despus pulsas OK. Es muy
recomendable guardar el trabajo antes de hacer eso. De hecho, es muy recomendable
no intentar editar los mdulos mientras se est trabajando simultneamente en un
documento. Aunque los desarrolladores, por supuesto, se esfuerzan en mantener la
estabilidad de LYX en estas situaciones, errores sintcticos y similares en el archivo
del mdulo podran causar extraos comportamientos.
3
Hay que advertir que LYX se acoge a la licencia GPL, por tanto cualquier material aportado debe
tener la misma licencia.
4
Estos pueden tener cualquier extensin pero, por convenio, se usa la extensin .inc.
20
Formato local
Los mdulos son a LYX lo que los paquetes a LATEX. Sin embargo, a veces puede
suceder que necesites un recuadro especfico o un estilo de carcter solo para un documento, y escribir un mdulo que estar disponible tambin para otros documentos
tiene poco sentido. En estos casos, lo que necesitas es el Formato local de LYX.
Se encuentra en Documento . Configuracin . Formato local. El gran cuadro de texto
permite introducir todo lo que podra incluirse en un archivo de formato o en un
mdulo. De hecho, el formato local de un documento se puede considerar como un
mdulo que le pertenece solo a l. Por tanto, en particular, hay que introducir una
etiqueta Format. Cualquier formato es aceptable, pero debera usarse normalmente
el actual formato. (En LYX 2.0 el formato actual es 35). Debes tener en cuenta que
el formato local no es soportado por versiones de LYX anteriores a 1.6, por tanto no
deberas usarlo si quieres poder exportar el documento a LYX 1.5 o anteriores sin
perder la informacin del formato local. Si quieres poder exportar a 1.6 el formato
local es soportado pero no hay IU par l, deberas usar formato 11 y, por supuesto,
usar solo estructuras que estuvieran disponibles en LYX 1.6.
Una vez introducido algo en el panel Local Layout, LYX habilitar el botn Validar de debajo. Pulsando ese botn LYX determinar si lo introducido es informacin
vlida para el formato elegido. LYX informar del resultado pero, desafortunadamente, no indicar qu errores pudiera haber habido. Sin embargo, si LYX se ha arrancado
en una terminal se vern ah los errores. El formato local no se podr guardar hasta
que se haya introducido algo vlido.
Las advertencias al final de la seccin anterior se aplican tambin aqu. Es mejor
no enredar con formato local mientras se est trabajando, especialmente 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 mdulo.
5.2.2.
Evidentemente, cul es tu directorio local variar segn la plataforma, y adems LYX permite
especificarlo al inicio usando la opcin -userdir.
21
22
5.2.3.
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 estn basadas
en book.cls. Para ver si el tuyo lo est, busca una lnea parecida a
\LoadClass{book}
en el archivo. Si est, entonces puedes proceder en gran parte como en la seccin
anterior, aunque la lnea DeclareLATEXClass ser diferente. Si tu nueva clase es tesis
y est basada en book, la lnea debera poner:6
\DeclareLATEXClass[thesis,book]{thesis}
Si, por el contrario, la nueva clase no est basada en una ya existente, probablemente
tendrs que ir pensando en tu propio formato. Recomendamos firmemente copiar un
archivo de formato existente que use una clase de 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 continuacin.
5.2.4.
Creacin de plantillas
Una vez escrito un archivo de formato para una clase nueva de documento, podras
pensar en escribir adems una plantilla para ella. Una plantilla funciona como una
especie de tutorial para tu formato, mostrando cmo podra usarse, aunque sea con
contenido irrelevante. Naturalmente, puedes echar un vistazo a las plantillas incluidas
en LYX para obtener ideas.
Las plantillas se crean exactamente igual que un documento normal: usando LYX.
La nica diferencia es que los documentos corrientes tienen todos los ajustes posibles,
incluso el esquema de tipografas y el tamao del papel. Generalmente, un usuario no
6
Y ser mucho ms fcil si guardas el archivo como thesis.layout: LYX supone que la clase de
documento tiene el mismo nombre que el archivo de formato.
23
5.2.5.
El formato de los archivos de formato cambia con cada nueva versin de LYX, de
modo que los antiguos archivos de formato deben ser convertidos. Desde LYX 1.4.0
este proceso ha sido automatizado: si LYX lee un archivo de formato con formato
antiguo lanzar la herramienta de conversin layout2layout.py, 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 LYX tenga
que hacerlo cada vez, ejecuta el convertidor a mano:
mv myclass.layout myclass.old
python LYXDir/scripts/layout2layout.py myclass.old myclass.layout
Debes reemplazar LYXDir con el nombre de tu directorio LYX en el sistema.
La conversin manual no puede manejar archivos incluidos, as que estos tendrn
que convertirse separadamente.
5.3.
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, escuchando
msica relajante y disfrutando de un par de tus copas favoritas; ms si ests muy
atascado. En realidad no es para tanto, pero la multitud de opciones puede llegar a
abrumarte si intentas hacer muchas cosas a la vez. Ve a por otra copa, por si acaso.
Todos los rtulos o etiquetas en los archivos de formato son insensibles a las maysculas; esto significa que Style, style y StYlE son el mismo comando. Los valores
posibles se imprimen entre corchetes detrs del nombre de la caracterstica. Si en
una descripcin de una clase de texto no se especifica una caracterstica, el valor por
omisin se escribe en estilo nfasis . Si el argumento tiene un tipo de dato como
string o float, el valor por omisin se muestra de esta manera: float=default .
24
5.3.1.
Las lneas de un archivo de formato que empiezan con # son comentarios. Hay una
excepcin a esta regla: todos los formatos deben comenzar con lneas como:
# % Do not delete the line below; configure depends on this7
# \DeclareLATEXClass{article}
Esto declara la clase de texto myarticle, asociada con la clase de documento LATEX
article.cls, y cuya descripcin es article (con mis encabezados). Si la clase de
texto depende de varios paquetes, puedes declararla as:
# % Do not delete the line below; configure depends on this
# \DeclareLATEXClass[article,foo.sty]{article (con mis encabezados)}
Esto indica que la clase de texto utiliza el paquete foo.sty. Finalmente, tambin es
posible declarar clases para cdigo DocBook. Una declaracin tpica podra ser:
# % Do not delete the line below; configure depends on this
# \DeclareDocBookClass[article]{SGML (DocBook article)}
Anotar que estas declaraciones pueden llevar tambin un parmetro opcional que
declare el nombre de la clase de documento (pero no una lista).
As, para ser lo ms explcito posible, la forma de la declaracin del formato es:
#
7
25
5.3.2.
Declaracin de un mdulo
En versiones de LYX anteriores a 1.6 no era as. Como resultado, la edicin de archivos de formato
poda llevar mucho tiempo, pues constantemente haba que reconfigurar y reiniciar.
9
En realidad, los errores en la sintaxis pueden causar incluso el cierre de LYX, porque ciertos tipos
de error pueden hacer que LYX sea incapaz de leer cualquier informacin de formato. Por favor
ten cuidado.
10
De todos modos, haz copias de seguridad regularmente. Y s bueno con mam.
11
La lista de tales paquetes solo est documentada en el cdigo fuente.
12
Preferiblemente en ingls si el mdulo se va a publicar en LYX. Esta descripcin aparecer en la
lista de mensajes para ser traducidos en la siguiente actualizacin de la interfaz.
26
5.3.3.
5.3.4.
Estos son los parmetros generales que describen completamente una clase de documento. (Esto no significa que deban aparecer en archivos .layout en vez de en
mdulos. Un mdulo puede contener cualquier etiqueta de formato).
AddToHTMLPreamble Aade informacin para el bloque <head> cuando esta clase de
documento se exporte a XHTML. Tpicamente, debera usarse para exportar
informacin de estilo CSS, aunque se puede usar para cualquier cosa que pueda
aparecer en <head>. Debe acabar con EndPreamble.
AddToPreamble Aade informacin al prembulo del documento. Debe terminar con
EndPreamble.
27
28
29
5.3.5.
Seccin ClassOptions
30
5.3.6.
Estilos de prrafo
31
Font La tipografa usada para el cuerpo del texto y para la etiqueta. Vase la seccin 5.3.11. Anotar que al definir esta tipografa se define automticamente la
de la etiqueta, LabelFont. As que debera definirse primero sta si se quiere
definir tambin LabelFont.
FreeSpacing [0, 1] Usualmente LYX no permite insertar ms de un espacio entre
palabras, puesto que un espacio se considera como la separacin entre dos palabras, no un carcter o smbolo por s mismo. Esto es una buena cosa pero a
veces puede ser molesta, por ejemplo, para escribir cdigo de programas o de
LATEX puro. Por esta razn se puede habilitar FreeSpacing. Anotar que LYX
crear espacios protegidos para los espacios adicionales en modos que no sean
LATEX.
HTML* Para la salida XHTML. Vase 5.4.1.
InnerTag [[FIXME]] (Usado solo con formatos tipo XML.)
InPreamble [0, 1] Si 1, marca el estilo para ser incluido en el prembulo del documento en lugar de en el cuerpo del documento. til para clases de documento
que piden informaciones tales como ttulo y autor en el prembulo. Esto solo
funciona para estilos para los que LatexType es Command o Paragraph.
InTitle [0, 1] Si es 1, marca el estilo como parte de un bloque de ttulo (vanse
tambin las entradas globales TitleLatexType y TitleLatexName).
15
Anotar que, excepto esta funcionalidad, no hay forma de asegurar ningn orden de los prembulos.
El orden que se ve en una versin dada de LYX puede cambiar sin previo aviso en versiones
posteriores.
32
33
LatexType es un poco engaoso porque estas reglas se aplican tambin a clases SGML. Consulta
los archivos de clases SGML para ejemplos concretos.
34
35
36
37
5.3.7.
38
\addto\captionsfrench{\renewcommand{\claimname}{Affirmation}}
\addto\captionsngerman{\renewcommand{\claimname}{Behauptung}}
\providecommand{\claimname}{Behauptung}
LATEX y babel conspirarn para producir el texto correcto en la salida.
Un punto importante a tener en cuenta aqu es que las traducciones son proporcionadas por el propio LYX, por medio del mismo mecanismo empleado para la
internacionalizacin de la interfaz de usuario. Esto quiere decir, en definitiva, que
LangPreamble y BabelPreamble realmente solo son tiles en archivos de formato
que son proporcionados por LYX, puesto que el texto introducido en archivos de
formato creados por el usuario no sern tenidos en cuenta por las rutinas de internacionalizacin de LYX. Sin embargo, cualquier formato creado con la intencin de ser
incluido en LYX debera usar estas etiquetas en los lugares apropiados.
5.3.8.
Flotantes
39
5.3.9.
40
41
42
5.3.10.
Contadores
43
5.3.11.
N. del T.: El estilo spanish de babel los transforma automticamente en versalitas, i, ii. . . , ya que
los romanos en minscula no se usan en espaol.
44
5.3.12.
Los bloques CiteFormat se usan para describir la forma en que debe mostrarse
la informacin bibliogrfica, tanto en LYX (en el dilogo de citas y en las ayudas
emergentes, por ejemplo) como en la salida XHTML. El aspecto de unode estos
bloques podra ser este:
CiteFormat
article ...
book ...
End
Las lneas definen cmo se va a mostrar la informacin bibliogrfica asociada con un
artculo o libro, respectivamente, y tales definiciones se pueden dar para cualquier
tipo de entrada que pudiera estar presente en un archivo BibTEX. LYX define un
formato por omsin en el cdigo fuente que se usar si no se da una definicin especfica. LYX predefine varios formatos en el archivo stdciteformats.inc, que se
incluye en la mayora de las clases de documento de LYX.
Las definiciones usan un lenguaje simple que permite reemplazar las claves BibTEX
por sus valores. Las claves deben encerrarse entre smbolos %, p. ej.: %author %. As,
una simple definicin sera:
misc %author %, %title.
Esto imprimira el autor, una coma, a continuacin el ttulo entre comillas y un punto
para finalizar.
A veces querrs, por supuesto, imprimir una clave solo si existe. Esto puede hacerse
mediante una construccin condicional tal como: { %volume %[[vol. %volume %]]},
que quiere decir: si la clave volume existe, imprime vol. seguido de la clave. Tambin
es posible tener una clusula de otro modo en el condicional, como:
45
5.4.
46
5.4.1.
Estilos de prrafo
<tag attr=value>
<itemtag attr=value><labeltag attr=value>Environment Label</labeltag>First pa
<itemtag>Second paragraph.</itemtag>
</tag>
El rtulo se genera solo para el primer prrafo, como debera ser, por ejemplo, para
un teorema.
Para una lista disponemos de una de estas formas:
<tag attr=value>
<itemtag attr=value><labeltag attr=value>List Label</labeltag>First item.</it
<itemtag attr=value><labeltag attr=value>List Label</labeltag>Second item.</i
</tag>
<tag attr=value>
<labeltag attr=value>List Label</labeltag><itemtag attr=value>First item.</it
<labeltag attr=value>List Label</labeltag><itemtag attr=value>Second item.</i
</tag>
47
HTMLLabelAttr [string] Atributos para la etiqueta del rtulo. Por omisin es class=layoutname
Esto no debera contener ninguna informacin de estilo. Usa HTMLStyle para
ese propsito.
HTMLLabelFirst [0 , 1] Solo es significativo para entornos tipo lista, esta etiqueta controla si la etiqueta de rtulo se genera antes o dentro de la etiqueta de tem. Se usa, por ejemplo, en el entorno descripcin, donde queremos
<dt>...</dt><dd>...</dd>. Por omisin, 0: la etiqueta de rtulo se genera
dentro de la etiqueta de tem.
HTMLPreamble Informacin para generar en la seccin <head> cuando se usa este
estilo. Esto podra, por ejemplo, utilizarse para incluir un bloque <script>
definiendo un controlador onclick.
48
5.4.2.
Recuadros XHTML
Por ahora, esto solo es cierto para recuadros de texto (recuadros en los que puedes escribir) y
no para recuadros de commandos (recuadros asociados con cuadros de dilogo).
49
5.4.3.
Flotantes XHTML
50
5.4.4.
Formato de la Bibliografa
5.4.5.
51
6.1.
Cmo funciona?
53
6.2.
Es relativamente fcil aadir en LYX definiciones personalizadas de plantillas externas. Sin embargo, hay que ser consciente de que hacer esto de manera descuidada
generar muy probablemente un agujero de seguridad fcil de explotar. As pues,
antes de hacer esto, lee por favor la discusin sobre seguridad en la seccin 6.4
Una vez dicho esto, te animamos a que enves cualquiera plantilla interesante que
compongas.
Las plantillas externas se definen en el archivo LYXDir/lib/external_templates.
Puedes colocar tus versiones propias en UserDir/external_templates.
Una plantilla tpica tiene un aspecto como este:
Template XFig
GuiName "XFig: $$AbsOrRelPathParent$$Basename"
HelpText
An XFig figure.
HelpTextEnd
InputFormat fig
FileFilter "*.fig"
AutomaticProduction true
Transform Rotate
Transform Resize
Format LATEX
TransformCommand Rotate RotationLatexCommand
TransformCommand Resize ResizeLatexCommand
Product "$$RotateFront$$ResizeFront
\\input{$$AbsOrRelPathMaster$$Basename.pstex_t}
$$ResizeBack$$RotateBack"
UpdateFormat pstex
UpdateResult "$$AbsPath$$Basename.pstex_t"
Requirement "graphicx"
ReferencedFile latex "$$AbsOrRelPathMaster$$Basename.pstex_t"
ReferencedFile latex "$$AbsPath$$Basename.eps"
ReferencedFile dvi "$$AbsPath$$Basename.eps"
FormatEnd
Format PDFLATEX
54
6.2.1.
La cabecera de la plantilla
55
6.2.2.
La seccin Format
Format LATEX|PDFLATEX|PlainText|DocBook El formato de archivo del documento primario para el que es esta definicin de formato. No toda plantilla tiene una
representacin sensible en los formatos de archivo de todos los documentos. No
obstante, es preferible definir una seccin Format para todos los formatos. Se
usa un texto postizo si no hay representacin disponible. Entonces, al menos,
se puede ver una referencia al material externo en el documento exportado.
Option <name> <value> Este comando define una macro adicional, $$<name>, para
sustitucin en Product. <value> puede contener en s mismo macros de sustitucin. La ventaja sobre el uso de <value> directamente en Product es que
el valor sustituido de $$<name> est saneado as que es un argumento opcional
vlido en el formato del documento. Este comando puede aparecer ninguna o
ms veces.
Product <text> El texto que se inserta en el documento exportado. Realmente este
es el comando ms importante y puede ser bastante complejo. Este comando
debe aparecer exactamente una vez.
Preamble <name> Este comando especifica un fragmento de prembulo que se incluir en el prembulo LATEX. Tiene que definirse usando PreambleDef . . .
PreambleDefEnd. Este comando puede aparecer ninguna o ms veces.
ReferencedFile <format> <filename> Este comando indica los archivos que se
crean por el proceso de conversin y que son necesarios para un formato de
56
6.2.3.
Definiciones de prembulo
57
6.3.
El mecanismo de sustitucin
58
59
6.4.
60
61