2009-10-27 47 views
5

Attualmente sono bloccato, con due glossari distinti: main & acronyms. Il glossario Acronyms stampa le note a piè di pagina al primo utilizzo nel testo, ma il glossario main non lo fa. C'è un modo per creare un glossario diverso da acronyms per stampare la nota a piè di pagina al primo utilizzo del termine? Non capisco come farloglossari e note a piè di pagina in LaTeX

Ecco l'esempio di codice compilato con TeXnic Center e MiKTeX 2.7:

\documentclass{article} 
\usepackage{index} 
\usepackage[toc,style=long3colheaderborder,footnote,acronym]{glossaries} 

\makeindex 
\makeglossaries 


\newglossaryentry{appdomain}{name={application domain}, description={app Domain Description...}} 
\newglossaryentry{sample}{name={[has been inserted aaa]},description={testing testing 123}} 

\newacronym{aca}{aca}{a contrived acronym} 

\begin{document} 
\section{this is a test section} 
This is the test line... a \gls{sample} \gls{appdomain} 
\index{entry} and \gls{aca} 
\thispagestyle{empty}\cleardoublepage 

\printglossary[type=main,title={Glossary},toctitle={Glossary}] 
\thispagestyle{empty}\cleardoublepage 
\printglossary[type=\acronymtype,title={List of Abbreviations},toctitle={List of Abbreviations}] 

\printindex 
\thispagestyle{empty}\cleardoublepage 
\end{document} 

voglio campione e dominio di applicazione o contengono una nota con la descrizione o una nota in calce affermando: si prega di fare riferimento al Glossario

Molte grazie ,
Ovanes

+0

puoi pubblicare uno snippet che illustrerà il tuo problema? – Mica

+0

Stai usando il comando standard '\ glossary' o un pacchetto come http://tug.ctan.org/cgi-bin/ctanPackageInformation.py?id=glossaries? –

+0

Sto usando il pacchetto \ glossaries, che è l'ulteriore sviluppo di \ glossario. Proverò a creare uno snippet, ma non sono sicuro che sia realmente necessario, poiché quando si importa il pacchetto come: \ usepackage [toc, style = long3colheaderborder, nota a piè di pagina, acronimo] {glossaries} dichiara gli acronimi di essere in un altro glossario. Dopo che l'acronimo appare per la prima volta nel testo, ottengo una nota a piè di pagina, ma se appare la normale frase del glossario, non la vedo. Doc dichiara che \ acronym è smth. come una dichiarazione in avanti per \ newglossaryentry. Come posso far apparire la voce normale del glossario la prima volta con la nota a piè di pagina? – ovanes

risposta

6

In breve, con il pacchetto glossaries, non è possibile ottenere note al primo impiego per non acronimo glossari.

Tuttavia, è possibile ridefinire alcuni comandi nel preambolo (dopo aver \usepackage{glossaries}) per ottenere quello che vuoi:

\makeatletter 
\renewcommand{\[email protected]@displayfirst}[4]{ 
    #1#4\protect\footnote{#2} 
} 
\makeatother 

ma che sarà molto fragile.

+0

Wow! Questo è esattamente ciò che stavo cercando. Perché è fragile? – ovanes

+0

Scusa, è tardi e non ho capito subito. Ora ho capito cosa significa "fragile". Se cambio il nome o il tipo di glossario, si romperà. Ma comunque grazie! – ovanes

+0

Esattamente! Forse questo dovrebbe essere archiviato come una richiesta di funzionalità con il manutentore del pacchetto ... –

0

seguito è una buona tecnica, di mettere una nota in calce affermando in cui le definizioni sono:

\label{nom} %put this on the page your term appears, so that it can collect page number 

\newcommand{\g}{\footnote{For all abbreviations see the glossary on page \pageref{nom}.}} 

ho trovato questo da here.

1

Penso che ci sia un modo più semplice per farlo. Forse è nuovo, ma

\defglsdisplayfirst[main]{#1#4\protect\footnote{#2}} 

sembra ottenere esattamente la stessa cosa (correggimi se sbaglio). Vedi il manuale glossaries, versione 2.03, sottosezione 2.4.1 cambiando il formato del testo.

Sfortunatamente, sembra che comandi come \gls o \autoref non funzionino in quelle note a piè di pagina.

+1

Questo metodo è deprecato, [dice la documentazione] (http://ctan.sciserv.eu/macros/latex/contrib/glossaries/glossaries-user.pdf), pagina 112, nelle note a piè di pagina. – Soana

Problemi correlati