Tengo varios archivos de código que quiero incluir en mi apéndice en el siguiente formato:
Appendix X filename
--------------------------------------------
filecontents
Con un listado adecuado en los contenidos.
Hasta ahora tengo esto:
\newcommand\codefile[1]{%
\refstepcounter{subsection}%
\addcontentsline{toc}{subsection}{\protect\numberline{\thesubsection}#1}%
\sectionmark{#1}%
\thispagestyle{fancy}%
\lhead{Appendix \thesubsection}%
\rhead{#1}%
\lstinputlisting{../../src/#1}}
Mi único problema es el encabezado correcto. Si el nombre del archivo contiene un guión bajo, entonces mi compilador (goma) asume que he omitido accidentalmente el $ y los está insertando. Hacer que el nombre del archivo tenga un subíndice incorrecto.
¿Hay alguna manera de decir "no insertar automáticamente el modo matemático aquí"?
Respuesta1
Simplemente apliqué \detokenize
el argumento de \rhead
, para que el guión bajo sea un código cat 12.
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{fancyhdr,listings}
\newcommand\codefile[1]{%
\refstepcounter{subsection}%
\addcontentsline{toc}{subsection}{%
\protect\numberline{\thesubsection}#1}%
\sectionmark{#1}%
\thispagestyle{fancy}%
\lhead{Appendix \thesubsection}%
\rhead{\detokenize{#1}}%
\lstinputlisting{#1}}
\begin{document}
\codefile{j_unk.tex}
\end{document}