Em uma pasta example/
existem subdiretórios example/chapter1/
, example/chapter2/
etc.
Algumas imagens ocorrem em mais de um capítulo, daí fiz um subdiretório example/images/
onde coloco as imagens, vamos chamar de example/images/image.pdf
.
No diretório base há example/images.sty
um comando para incluir a imagem (e faz mais algumas coisas que retirei para este MWE):
\usepackage{graphicx}
\graphicspath{{../images/}}
\def\myimage{\includegraphics{image.pdf}}
Agora, algum arquivo em um subdiretório, digamos example/chapter1/main.tex
, usa esse comando assim:
\documentclass{article}
\usepackage{../images}
\begin{document}
\myimage
\end{document}
Ao compilar com pdflatex na linha de comando isso funciona. Mas ao usar o LyX isso não funciona: importe example/chapter1/main.tex
para o LyX (assim example/chapter1/main.lyx
é criado) e tente criar o pdflatex via LyX e ele afirma File image.pdf not found
. (E ao usar \includegraphics
diretamente em main.tex
vez images.sty
disso, também funciona.)
Responder1
O problema é que, no que diz respeito ao LyX, .sty
os arquivos são LaTeX brutos, portanto, apenas o arquivo é copiado para o diretório temporário onde o LyX faz a compilação, mas não as dependências referenciadas nesse arquivo - elas são resolvidas apenas para .lyx
arquivos.
Eu optei por usar um caminho absoluto \graphicspath{{/home/username/latex/example/images/}}
. Isso só me causará problemas quando eu movê-lo para um novo diretório ou computador - e então eu teria apenas que alterar a referência do diretório.