Glossare - Unterdrückung der Abkürzung bei der ersten Verwendung für ausgewählte Akronyme

Glossare - Unterdrückung der Abkürzung bei der ersten Verwendung für ausgewählte Akronyme

Dies ist mein erster Beitrag, also entschuldigen Sie, wenn ich gegen Konventionen verstoße! Ich habe beschlossen, meine Doktorarbeit in LaTeX zu schreiben, und habe einige Probleme, die Akronyme/Glossare so zu formatieren, wie ich es möchte. Ich verwende das glossariesPaket und möchte es für zwei unterschiedliche Anwendungsfälle verwenden, von denen einer (die Standardverwendung) bei mir gut funktioniert.

Das Problem bezieht sich auf den Versuch, Glossare zu verwenden, um mit Herstellern/Unternehmen umzugehen, wenn beispielsweise auf eine Chemikalie verwiesen wird. Wenn Sie eine Chemikalie zum ersten Mal auflisten, sollte sie üblicherweise etwa so referenziert werden: „Chemikalie X (Unternehmen Y, Irgendwo in den USA)“. Wenn Sie mehrere Produkte eines Unternehmens verwenden, können nachfolgende Verweise auf das Unternehmen einfach den Firmennamen erwähnen, ohne den Standort angeben zu müssen. Diese Unternehmensverweise sollten nicht in der Liste der Abkürzungen erscheinen.

Mithilfe früherer Antworten auf dieser Site ist es mir gelungen, den Firmennamen aus der Liste der Akronyme zu entfernen, indem ich ein neues „falsches“ Glossar definiert habe, das nicht gedruckt wird. Ich habe versucht, es zu verwenden, \newignoredglossaryaber dadurch schien auch das Akronym im Text verborgen zu sein. Ich weiß nicht genau, warum, aber ich bin mit der Lösung mit dem falschen Glossar zufrieden.

Die erste Verwendung dieser Firmenakronyme \gls{}ergibt jedoch z. B. „Firma, Irgendwo, USA (Firma)“. Ich möchte, dass dies angezeigt wird, ohne dass der Firmenname am Ende in Klammern wiederholt wird.

Mir ist klar, dass ich Folgendes gebrauchen könnte:

\glsdesc{company} 

gefolgt von

\glsunset{company} \gls{company} 

um genau den Effekt zu erzielen, den ich mir vorstelle. Dazu müsste ich allerdings die erste Verwendung jedes Firmennamens manuell suchen und mit „ \glsdesc{}gefolgt von “ kennzeichnen \glsunset{}. Da sich die Reihenfolge der Absätze während des Schreibens der Arbeit wahrscheinlich ändern könnte, wäre es mir viel lieber, wenn dies automatisch erledigt würde.

Hier ist ein minimales funktionierendes Beispiel:

\documentclass{article}

\usepackage[acronym]{glossaries}

\newglossary[flg]{fake}{fls}{flo}{Fake Entries}

\newacronym[type=fake]{bio}{Biohazard Inc}{Biohazard Inc, MA, USA}
\newacronym{pbs}{PBS}{Phosphate Buffered Saline}

\makeglossaries

\begin{document}

First use - \gls{bio}. Second use - \gls{bio}. Not displayed in glossary, but first use repeats company name in parentheses. 

\gls{pbs} should appear in the glossary. Second use \gls{pbs}.

\printglossary[type=\acronymtype]

\end{document}

Gibt es eine einfache Möglichkeit, dies in zu erreichen glossaries? Ich habe mich gefragt, ob glossaries-extraman damit vielleicht besser umgehen könnte, aber die Dokumentation ist mir nicht 100 %ig klar, und ich befürchte, dass der Versuch einer Konvertierung die derzeit allgemein wirksame Akronymliste in einem ohnehin schon komplexen Dokument mit mehreren Dateien beschädigen könnte, und mein Problem nicht unbedingt behebt!

Antwort1

Hier ist ein alternativer Ansatz:

\documentclass{article}

\usepackage[acronym]{glossaries}

\newignoredglossary{ignored}

% syntax: \newcompany[extra options]{label}{name}{location}
\newcommand*{\newcompany}[4][]{%
 \newglossaryentry{#2}{type=ignored,%
  name={#3},%
  first={#3 (#4)},%
  description={#4},%
  #1}%
}

\glssetnoexpandfield{first}

% syntax: \newchemical[extra options]{company}{label}{short}{long}
\newcommand{\newchemical}[5][]{%
 \newglossaryentry{#3}{type=\acronymtype,%
  name={#4},%
  first={#5 (\ifglsused{#2}{\glsentryname{#2}}{\glsentryname{#2},
    \glsentrydesc{#2}\protect\glsunset{#2}})},%
  description={#5},%
  #1}%
}

\makeglossaries

\newcompany{bio}{Biohazard Inc}{MA, USA}
\newchemical{bio}{pbs}{PBS}{Phosphate Buffered Saline}

\begin{document}

First use - \gls{bio}. Second use - \gls{bio}.

\gls{pbs} should appear in the glossary. Second use \gls{pbs}.

Reset\glsresetall[ignored,\acronymtype] and try the other way.

\gls{pbs} should appear in the glossary. Second use \gls{pbs}.

First use - \gls{bio}. Second use - \gls{bio}.

\printglossary[type=\acronymtype]

\end{document}

Das Ergebnis:

Bild des Dokuments

Antwort2

Die Verwendung der first=Option bei der Definition jedes Firmenakronyms führt zu genau dem gewünschten Ergebnis:

\newacronym[type=fake, first=\glsdesc{bio}]{bio}{Biohazard Inc}{Biohazard Inc, MA, USA}

Das Glossarpaket ist fantastisch, hat aber so viele Funktionen, dass es für einen relativen Anfänger wie mich schwierig sein kann, alle Optionen zu nutzen.

verwandte Informationen