Я имею один документ под ~/my_files/test.tex и хочу включать в test.tex некоторые информации о форматировании, которые могут быть найдены под ~/latex/styles/info_hypersetup.tex.
Когда я включаю следующее утверждение в свой test.tex:
%% setting the infos for the pdf
\include{home/helex/latex/styles/info_hypersetup.tex}
Я получаю следующую ошибку при выполнении pdflatex test.test:
! I can't write on file `~/latex/styles/info_hypersetup.tex.aux'.
Я установил права на 777, но это не делает изменил что-либо. Это работает, если я поместил info_hypersetup.tex в структуру каталогов, где test.tex. Но я хочу использовать этот styleinformation в качестве глобальной установки для всех моих документов и не хочу копировать его в каждый проект.
Спасибо за помощь.
~
- это не путь в Unix, скорее это путь, который оболочки Unix расширяют до значения $ HOME.
У вас есть несколько возможных способов решения вашей проблемы:
\ homedir
, значение которого закодировано в вашем файле Latex как абсолютный путь к вашему дому (т. Е. содержимое $ HOME). Непереносимый: если вы переместите файл на другой компьютер, он, вероятно, не сработает. thisfilesystem.sty
, с жестко заданными значениями для различных каталогов. Затем вы можете просто изменить значения этого параметра от машины к машине. Его также можно создать автоматически из Makefile. \ write18
, чтобы запустить echo $ HOME
и привязать этот макрос к вам \ homedir
. Он переносимый, но я не советую его: вы должны выработать привычку избегать \ write18
, потому что это ужасная дыра в безопасности. Я бы порекомендовал №2.
Вот мое грязное решение (потому что многие люди говорят не использовать ввод, но я хочу продолжить :)):
\newcommand{\home}{../..}
\input{\home/latex/styles/info_hypersetup}
Если вы найдете что-то получше , просто дай мне знать. Подсказка с установкой output_any = a int в texmf.conf не сработала. Я использую убунту.