¿Cómo escribir un paquete LaTeX que incluya no solo archivos .sty y .cls sino también algunos logotipos en formatos .pdf o .eps?

¿Cómo escribir un paquete LaTeX que incluya no solo archivos .sty y .cls sino también algunos logotipos en formatos .pdf o .eps?

Me gustaría crear un paquete LaTeX con los siguientes subdirectorios:

  • tex/latex/common(un .texarchivo común compartido entre beameruna carta)
  • tex/latex/resources(muchos archivos pdf y eps con recursos gráficos)
  • tex/latex/mybeamer(un tema de proyector personalizado con 5 .styarchivos)
  • tex/latex/myletter(un .clsarchivo para una plantilla de carta)

Me gustaría empaquetar estos archivos en un único paquete LaTeX que los usuarios puedan instalar de forma sencilla. Leí sobre los archivos .insy .dtxy puedo ver cómo empaquetar los .clsarchivos .sty, pero ¿qué pasa con los gráficos adicionales: la carpeta de recursos que contiene varios PDF y .epsarchivos?

Respuesta1

estructura TDS

Suponiendo que su paquete LaTeX se llame foobar. Entonces según TDS (Una estructura de directorio para archivos TeX) los archivos irían debajo de los siguientes directorios:

  • TDS:tex/latex/foobar/(para archivos TeX: .tex, .sty, imágenes)
  • TDS:doc/latex/foobar/ (para archivos de documentación)
  • TDS:source/latex/foobar/(para archivos fuente .dtx, .ins)

Otros subdirectorios dependen de usted. Los evitaría si solo hay pocos archivos. Si hay muchos archivos, más niveles de directorio pueden ayudar a organizar los archivos.

Ejemplo:

  • TDS:doc/latex/foobar/foobar.pdf
  • TDS:source/latex/foobar/foobar.dtx
  • TDS:source/latex/foobar/foobar.ins
  • Otros archivos fuente que no se proporcionan en el .dtxarchivo se pueden proporcionar en:
    TDS:source/latex/foobar/o
    TDS:source/latex/foobar/resources/
  • TDS:tex/latex/foobar/foobar.cls
  • TDS:tex/latex/foobar/foobar-common.sty(El archivo TeX para las plantillas de clases de letras y proyectores)
  • TDS:tex/latex/foobar/<foobar beamer file 1>,
    TDS:tex/latex/foobar/<foobar beamer file 2>,
    ...,
    TDS:tex/latex/foobar/<foobar beamer file 5>
  • TDS:tex/latex/foobar/resources/<.eps/.pdf image files>

Si además proporciona un READMEarchivo, usaría este nombre exactamente (convención AFAIK CTAN) y lo colocaría en el subárbol doco source, según el contenido del archivo.

Formulario de distribución

Para la distribución, pondría estos archivos, incluida la estructura de directorios, en un .ziparchivo foobar.tds.zip(sin TDS:/ temxfroot). Entonces la instalación es bastante sencilla para el usuario, que puede instalarla fácilmente descomprimiendo. Ejemplo de instalación del árbol de inicio predeterminado en Linux/TeX Live:

$ unzip foobar.tds.zip -d ~/texmf/

En caso de que el paquete esté instalado en un texmfárbol local de todo el sistema, la base de datos de nombres de archivos debe actualizarse (en la raíz):

$ texhash

o

$ mktexlsr

CTAN

Una sugerencia para el formulario CTAN, si deseas facilitarlo allí:

  • CTAN:macros/latex/foobar/foobar.dtx
  • CTAN:macros/latex/foobar/foobar.ins
  • CTAN:macros/latex/foobar/foobar.pdf(documentación)
  • ( CTAN:macros/latex/foobar/README)
  • CTAN:macros/latex/foobar/resources.zip(o descomprimido en el directorio resources/)
  • CTAN:install/macros/latex/foobar.tds.zip

Respuesta2

En la estructura de directorio TeX (TDS), los nombres de directorio que aparecen a continuación tex/latexson un recurso compartido global, por lo que no necesita tomar demasiados y elegir nombres que sean exclusivos de su paquete. Por lo tanto, tex/latex/resourcesy tex/latex/commonno serían buenos nombres (y sospecho que no serían aceptados si intentara incluir el paquete en una distribución como texlive).

beamery letterambos comparten la misma ruta de entrada para archivos tex, por lo que no es necesario separar los archivos de proyector y de letras.

Respuesta3

Aquí está elEstructura del directorio TeXforma. Elija un nombre para su paquete.

  • Coloque archivos TeX que puedan usarse en cualquier formato entex/generic/bundlename
  • Coloque archivos LaTeX como clases y paquetes entex/latex/bundlename
  • Poner recursos gráficos entex/generic/images/bundlename
  • Poner documentación endoc/latex/bundlename
  • Coloque las fuentes de la tira de documentos ensource/latex/bundlename

Verás muchos de estos en uso si miras dentro, por ejemplo, la pgfdistribución. Luego, el proceso de instalación es solo para cp -Rlos directorios en un texmfárbol.

información relacionada