
Я по глупости включил # (символ номера) в путь к файлу. Всякий раз, когда я ссылаюсь на это, он генерирует следующую ошибку:
Illegal parameter number in definition of \reserved@a. [.../Paper#1/2016-02-14/paper1_2016-02-14.pdf}]
Есть ли более простое решение, чем переименование папки и, следовательно, изменение всего кода внутри нее, чтобы отразить это?
\documentclass[a4paper,12pt]{article}
\begin{document}
\includepdf[pages=-]{../../Paper#1/2016-02-14/paper1_2016-02-14.pdf}
\end{document}
решение1
\documentclass[a4paper,12pt]{article}
\begin{document}
\begingroup\catcode`\#=12
\newcommand\hashchar{}%check that is doesn't exist
\gdef\hashchar{#}
\endgroup
\input{paper\hashchar 1/test}
%or change the catcode locally:
\begingroup
\catcode`\#=12
\input{paper#1/test}
\endgroup
\end{document}
решение2
Если ваши вызовы \includepdf
никогда не используются в качестве аргумента другой команды, вы можете сделать это, приняв имя файла в качестве дословного аргумента:
\documentclass[a4paper,12pt]{article}
\usepackage{pdfpages,xparse,letltxmacro}
\LetLtxMacro\originalincludepdf\includepdf
\RenewDocumentCommand\includepdf{O{}v}{\originalincludepdf[#1]{#2}}
\begin{document}
\includepdf[pages=-]{../../Paper#1/2016-02-14/paper1_2016-02-14.pdf}
\end{document}