Usando el paquete de glosarios con Texmaker (ejecutando PDFLaTex)

Usando el paquete de glosarios con Texmaker (ejecutando PDFLaTex)

Actualmente estoy usando el acronympaquete para generar un glosario de siglas, pero me gustaría tener también un glosario de símbolos matemáticos. Por lo tanto, estoy buscando pasar al glossariespaquete. Tengo problemas (que se detallan a continuación) porque no se genera la sección del glosario y, por lo tanto, me gustaría saber cuál es la forma más sencilla de hacerlo.

A continuación se muestra un caso de uso FUNCIONAL simple con acronym, desde el cual puedo generar un pdf, en mac os X, en texmaker (4.4.1) ejecutando la opción de compilación rápida;

PdfLaTex + Bib(la)tex + PdfLaTex(x2) + View Pdf

principal.tex:

\documentclass{article}
\usepackage{acronym}
\usepackage[backend=bibtex,bibencoding=ascii]{biblatex}

\addbibresource{example_bib.bib}

\begin{document}

\section{Body}

Try printing \ac{aa} and citing something.\cite{a_reference}

\section{Acronyms} 
\begin{acronym}[AAAAAAA]
\acro{aa}[AA]{An Acronym}
\end{acronym}

\printbibliography

\end{document}

ejemplo_bib.bib:

  @ARTICLE{a_reference,
  author = {A, Name},
  title = {A Title},
  volume = {1},
  pages = {1--2},
  abstract = {an abstarct},
  date = {2013-06},
  doi = {10.1016/j.commatsci.2013.03.013},
  issn = {0927-0256},
  journaltitle = {Computational Materials Science},
  keywords = {Keyword},
  shortjournal = {Computational Materials Science},
  url = {http://www.sciencedirect.com},
  urldate = {2015-10-28}}

Si intento adaptar el archivo main.tex a:

\documentclass{article}
\usepackage[acronym]{glossaries}
\usepackage[backend=bibtex,bibencoding=ascii]{biblatex}

\makeglossaries
\newacronym{aa}{AA}{An Acronym} 

\addbibresource{example_bib.bib}

\begin{document}

\section{Body}

Try printing \gls{aa} and citing something.\cite{a_reference}

\printacronyms

\printbibliography

\end{document}

¡Se ejecuta, pero NO hay salida de la sección del glosario al pdf! (las siglas se insertan en el cuerpo del texto)

Este también es el caso si intento usar términos del glosario:

\documentclass{article}
\usepackage{glossaries}
\usepackage[backend=bibtex,bibencoding=ascii]{biblatex}

\makeglossaries
\newglossaryentry{aa}{name=aa,description={A description of AA}}

\addbibresource{example_bib.bib}

\begin{document}

\section{Body}

Try printing \gls{aa} and citing something.\cite{a_reference}

\printglossaries

\printbibliography

\end{document}

He analizado varias preguntas aquí relacionadas con este tema, pero ninguna parece proporcionar una respuesta adecuada.

Respuesta1

El método rápido y sencillo es simplemente agregar la automakeopción:

\documentclass{article}

\usepackage{filecontents}
\usepackage[acronym,automake]{glossaries}
\usepackage[backend=bibtex,bibencoding=ascii]{biblatex}

\begin{filecontents*}{example_bib.bib}
@ARTICLE{a_reference,
  author = {A, Name},
  title = {A Title},
  volume = {1},
  pages = {1--2},
  abstract = {an abstarct},
  date = {2013-06},
  doi = {10.1016/j.commatsci.2013.03.013},
  issn = {0927-0256},
  journaltitle = {Computational Materials Science},
  keywords = {Keyword},
  shortjournal = {Computational Materials Science},
  url = {http://www.sciencedirect.com},
  urldate = {2015-10-28}}
\end{filecontents*}

\makeglossaries
\newacronym{aa}{AA}{An Acronym} 

\addbibresource{example_bib.bib}

\begin{document}

\section{Body}

Try printing \gls{aa} and citing something.\cite{a_reference}

\printacronyms

\printbibliography

\end{document}

Esto requiere dos pdflatexinvocaciones, pero eso ya lo tienes con tu PdfLaTex + Bib(la)tex + PdfLaTex(x2) + View Pdfcompilación. Este método utiliza el mecanismo de escape del shell de TeX. Por lo general, esto se configura en modo restringido, que solo permite que se ejecuten aplicaciones confiables. Por suerte, makeindexes una aplicación confiable.

El makeglossariesscript Perl suministrado con el glossariespaquete se ejecuta makeindex(o xindy), pero también proporciona información de diagnóstico. (Algunos de xindylos mensajes de son un poco crípticos).la respuesta de egreg a otra preguntamuestra cómo integrarse makeglossariescon texmaker.

Personalmente prefiero usar arara. Con este método sólo necesito poner algunos comentarios especiales en mi código fuente:

% arara: pdflatex
% arara: makeglossaries
% arara: bibtex
% arara: pdflatex
\documentclass{article}

\usepackage{filecontents}
\usepackage[acronym]{glossaries}
\usepackage[backend=bibtex,bibencoding=ascii]{biblatex}

\begin{filecontents*}{example_bib.bib}
@ARTICLE{a_reference,
  author = {A, Name},
  title = {A Title},
  volume = {1},
  pages = {1--2},
  abstract = {an abstarct},
  date = {2013-06},
  doi = {10.1016/j.commatsci.2013.03.013},
  issn = {0927-0256},
  journaltitle = {Computational Materials Science},
  keywords = {Keyword},
  shortjournal = {Computational Materials Science},
  url = {http://www.sciencedirect.com},
  urldate = {2015-10-28}}
\end{filecontents*}

\makeglossaries
\newacronym{aa}{AA}{An Acronym} 

\addbibresource{example_bib.bib}

\begin{document}

\section{Body}

Try printing \gls{aa} and citing something.\cite{a_reference}

\printacronyms

\printbibliography

\end{document}

(Hayuna pregunta sobre la integración de texmaker con arara.)

Solicitaste algunos consejos importantes en los comentarios. Estos son los que se me vienen a la cabeza:

  • Defina sus entradas ( \newglossaryentry, \newacronymetc.) en el preámbulo o colóquelas en un archivo separado y cárguelas en el preámbulo usando \inputo \loadglsentries.
  • Evite el uso de caracteres especiales en las etiquetas de las entradas. Esto incluye caracteres latinos extendidos o no latinos, a menos que estés usando XeLaTeX o LuaLaTeX.
  • Evite el uso de comandos como \glsen la sección/capítulo/títulos, etc. Si realmente los necesita, use comandos como \glsfmttext{label}o \glsfmtshort{label}proporcionados \glsfmtlong{label}porglossaries-extrapaquete.
  • Si sus términos contienen comandos o caracteres especiales, proporcione la sortclave. Por ejemplo:

    \newglossaryentry{alpha}{name={$\alpha$},text={\alpha},sort={alpha},
       description={...}}
    \newacronym[sort={chi2}]{chisq}{$\chi^2$}{$\chi^2$-squared}
    
  • Si desea utilizar comandos como \Glsese para convertir la primera letra a mayúscula, tenga cuidado con las restricciones impuestas por \makefirstuc(proporcionadas pormfirstuc). Entonces los ejemplos anteriores realmente deberían ser:

    \newglossaryentry{alpha}{name={{}$\alpha$},text={{}\alpha},sort={alpha},
       description={...}}
    \newacronym[sort={chi2}]{chisq}{{}$\chi^2$}{{}$\chi^2$-squared}
    

    (A estos tipos de entrada no se les debe aplicar ningún cambio de mayúsculas y minúsculas, incluso si ocurren al comienzo de una oración. La llave vacía al comienzo del valor descarta el intento de cambiar mayúsculas y minúsculas, lo que de otro modo causaría problemas).

  • Si algo sale mal, por ejemplo, su glosario no aparece o faltan entradas, pruebe lamakeglossariesguiaplicación para ver si puede detectar el problema.

Recursos Relacionados:

información relacionada