
Elsubfiles
documentosexplica que maneja problemas de ruta cuando los archivos principales y subarchivos están en directorios diferentes y los subarchivos contienen rutas relativas a sus propios directorios usando el \import
paquete.Apareceque esto significa subfiles
se utiliza \import
al agregar el contenido de los archivos pasados a \subfile
. Por ejemplo, \subfile{ch/ch1.tex}
es aproximadamente equivalente a modificar el preámbulo de ch1.tex
luego llamar a \import{ch/ch1.tex}
. Lo que no está claro es cómo hacerlo correctamente.importaciones de nidos, es decir, importar dentro de subarchivos importados.
A continuación proporciono un ejemplo de estructura de proyecto/directorio y dos archivos de ejemplo asumiendo que main.tex debería importar ch1.tex y ch1.tex debería importar fig.png y text.txt.
+-- main.tex
+-- chapters
|
+-- ch1.tex
+-- content
|
+-- text1.txt
+-- fig1.png
%% main.tex
\documentclass{book}
\usepackage{graphicx}
\usepackage{subfiles}
\begin{document}
\subfile{chapters/ch1.tex} % \imports ch1.tex
\end{document}
%% ch1.tex
\documentclass[../main.tex]{subfiles}
\begin{document}
\import{content}{text.txt} % adds some text - note use of \import
\includegraphics{content/fig.png} % adds a figure
\end{document}
Cuando compilo los archivos anteriores, producen el resultado deseado. Sin embargo, como \import
se usa en la \subfile{chapters/ch1.tex}
llamada en main.tex pero luego estambiénusadodentroch1.tex en la \import{content}{text.txt}
llamada. Elimport
documentosindica \subimport
que debe usarse para este último. Como \subimport requires a path relative to the currently imported file, the call should be
\subimport{content/}{text1.txt}`.
¿Debería utilizarse siempre la importación dentro de subarchivos subimport
? Si es así, no entiendo por qué el intercambio \import
produce \subimport
los mismos resultados cuando presumiblemente deberían apuntar a directorios diferentes como en los ejemplos de los import
documentos.
Respuesta1
Puedes usarlo \input
directamente.
│ main.tex
│
└─chapters
│ ch1.tex
│
└─content
fig1.png
text1.txt
main.tex
\documentclass{book}
\usepackage{graphicx}
\graphicspath{{chapters/content/}}
\makeatletter
\newcommand{\input@path}{{chapters/}{chapters/content/}}
\makeatother
\begin{document}
aaa
\input{ch1.tex}
bbb
\end{document}
ch1.tex
ccc
\input{text1.txt}
\includegraphics[width=3cm]{fig1.png}
ddd
text1.txt
eee