"!Falta $ insertado." cuando se utiliza la sustitución de palabras clave svn $Id$

"!Falta $ insertado." cuando se utiliza la sustitución de palabras clave svn $Id$

Me gustaría mostrar los números de revisión de Subversion para usarlos en el contenido de mi documento. svninfoy svnlos paquetes dependen desustitución de palabras clave svnpara lograr esto, pero aparece este error cuando lo intento:

Línea de error 6! Falta $ insertado.

Aquí está el documento completo que causa esto:

\documentclass{article}
\usepackage{svninfo}

\begin{document}
\svnInfo $Id: doc.tex 8 2013-04-11 19:37:31Z User Name $ %<= Id keyword substituted by svn  

\end{document}

Las soluciones sugeridas habitualmente para este error son escapar del $ de esta manera: \$ Sin embargo, ninguna combinación de caracteres con y sin escape $evita este error y tiene resultados útiles.

¿Cómo evito este error?y¿Números de revisión de Surface SVN?

Respuesta1

Es posible que el nombre de usuario no tenga un espacio. esto se ejecuta sin error

\documentclass{article}
\usepackage{svninfo}

\begin{document}
\svnInfo $Id: doc.tex 8 2013-04-11 19:37:31Z UserName $ %<= Id keyword substituted by svn  

\end{document}

Dado que el nombre de usuario de Windows permite espacios, puede permitir que svnInfo también los permita. esto parece funcionar:

ingrese la descripción de la imagen aquí

\documentclass{article}
\usepackage{svninfo}

\makeatletter
\def\@svnInfoCrackAndEat #1 #2 #3 #4 #5 #6 $ {\@svnEndRead
  \@svnInfoCrackString #2 #3 #4 #5 {#6} $ %
}
\makeatother

\begin{document}
\svnInfo $Id: doc.tex 8 2013-04-11 19:37:31Z User Name $ %<= Id keyword substituted by svn  

[\svnInfoOwner]

\end{document}

Respuesta2

Tienes un espacio en el nombre de usuario:

\svnInfo $Id: doc.tex 8 2013-04-11 19:37:31Z UserName $

Deberia trabajar

información relacionada