Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined Thema ist als GELÖST markiert

Erstellen von Index, Glossar, Symbolverzeichnis, einer Nomenklatur etc. mit MakeIndex oder Xindy


Benutzeravatar
Corioliskraft
Forum-Anfänger
Forum-Anfänger
Beiträge: 26
Registriert: Di 9. Mai 2023, 10:13

Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined

Beitrag von Corioliskraft »

Hallo alle zusammen,

zu meiner aktuellen Lage:
Ich habe eine wissenschaftliche Arbeit in der eine Tabelle verwendet werden soll in der verschiedene Kunststoffe aufgezählt werden. Die Verwendung der vollen Namen möchte ich nicht im Text der Tabelle einfügen, da dies die Größe der Tabelle sprengen würde. Außerhalb dieser Tabelle werden die Abkürzungen nicht verwendet bzw. finden keine vorherige Anwendung.

Natürlich existieren in diesem Dokument noch weitere Akronyme, welche ganz normal auftauchen:
Erste Verwendung -> Polybuten (PB)
Zweite Verwendung PB

Jetzt will ich die nicht im Text verwendeten Polymere trotzdem im Abkürzungsverzeichnis (Akronyme) angezeigt bekommen ohne die Fehlermeldung, dass eben diese ja noch nicht verwendet seien bzw. undefiniert seien.

Meine Idee das Problem zu lösen:
Am Ende des Dokuments eine "Dummy-Seite" einfügen und all jene Akronyme einmal verwenden. Das hat zur Folge, dass sie definiert sind und sollten sie bis zur letzten Seite noch nicht verwendet worden sein, sind sie es spätestens dort.
Danach müsste man in einem PDF-Programm die letzte Seite entfernen und alles wäre gegessen.

Nun zur Frage:

Gibt es eine Möglichkeit sich diesen Workaround zu ersparen und wie erwähnt eine solche Seite anzulegen und sie per Befehl wieder aus dem fertigen Dokument automatisch zu nehmen?
Eine etwas eigenartige Frage, ist mir bewusst, denn normalerweise will man ja all seine geschriebenen Texte auch kompiliert und in dem PDF wiederfinden.

Minimalbeispiel:
(kann bei mir ausgeführt werden auf dem Rechner, hier geht das aus irgendeinem Grund nicht)
\documentclass[11pt,parskip=full,a4paper]{scrartcl}
\usepackage{scrlayer-scrpage}

%______________________________________________________
%%%%------Allgemeine Dokumenteneinstellungen
%zur korrekten Anwendung und Kompillierung der deutschen buchstaben
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%
\usepackage{lmodern} %für deutsche Sonderzeichen
%______________________________________________________
%%------Mathematik
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}

%_________________________
%Seiteneinrichtung
\usepackage{layout}
\usepackage{geometry}
\geometry{
	left=2.5cm,
	right=2.5cm,
	top=2.5cm,
	bottom=2.5cm,
	showframe,% <-----------------------------comment for preproduction version
}
%______________________________________________________
%%%%------Literatur
\usepackage{csquotes}
%_________________________
%Bib
\usepackage[
    backend=biber,
    style=alphabetic,
    sortlocale=de_DE,
    %natbib=false,
    url=true, 
    doi=true,
    eprint=false
]{biblatex}
%______________________________________________________
%%------Links und URLs
\usepackage{hyperref}
%Links 	- 	Sprünge im Dokument
%URL	-	Links ins Internet
\hypersetup{
	colorlinks=false,
	linkcolor=black,	%blue
	urlcolor=black,		%red
	%pdftitle={Titel des Dokumets für den PDF-Reader},
}
%______________________________________________________
%%%%------Tabellen allgemein
\usepackage{tabularx} 
\usepackage{longtable}
\usepackage{multirow}
\usepackage{rotating}
\usepackage{tabularray} %use X terms in longtable
%______________________________________________________
%Anderes
\usepackage{xcolor}			%für Listings und Vektorgrafiken
\usepackage{color}
\definecolor{Cosmos}{rgb}{0.996,0.843,0.843}
\usepackage{acronym}
%______________________________________________________
%______________________________________________________
\begin{document}


\section*{Abkürzungsverzeichnis}
\begin{acronym}[ABSTAND]	
\acro{emod}[E-Modul]{Elastizitätsmodul}
\acro{peek}[PEEK]{Polyetheretherketon}
\acro{pmma}[PMMA]{Polymethylmethacrylat}
%
%______________________________________________
%nicht verwendete Acronyme außerhalb einer Tabelle etc.
\acro{ps}[PS]{Polycarbonat}
\acro{san}[SAN]{Styrol-Acrylnitril}
\acro{pvcu}[PVC-U]{Polyvinylchlorid -hart-}
\acro{pc}[PC]{Polycarbonat}
\acro{abs}[ABS]{Acrylnitril-Butadien-Styrol}
\acro{pet}[PET]{Polyetylenterephthalat}
\acro{pvcp}[PVC-P]{Polyvinylchlorid -weich-}
\acro{pa6}[PA6]{Polyamid 6}
\acro{pa66}[PA66]{Polyamid 66}
\acro{pom}[POM]{Polyoxymethylen}
\acro{pehd}[PE-HD]{Polyethylen -hohe Dichte-}
\acro{pp}[PP]{Polypropylen}
\acro{peld}[PE-LD]{Polyethylen -geringe Dichte-}
\acro{pb}[PB]{Polybuten}
\acro{pur}[PUR]{Polyurethan}
\acro{tpe}[TPE]{Thermoplastische Elastomere}
\acro{tpu}[TPU]{Thermoplastische Polyurethane}
\end{acronym}


\newpage



\begin{table}[htb]
  \centering	
  \centering
\resizebox{\linewidth}{!}{%
\begin{tblr}{
  width = \linewidth,
  colspec = {Q[185]Q[758]},
  row{1} = {Cosmos,c},
  cell{2}{1} = {c},
  cell{3}{1} = {c},
  cell{4}{1} = {c},
  cell{5}{1} = {c},
  hlines,
  vlines,
}
$\nu$         & Werkstoff                                                                                                                       \\
$0,30 - 0,35$ & {Steife, spröde Kunststoffe:\\Duroplaste, amorphe Thermoplaste wie PS, SAN, PMMA, PVC-U}                                        \\
$0,35 - 0,40$ & {Steife, zähe Kunststoffe:\\Thermoplaste und Blends wie PC, ABS, (PC+ABS), (PC+PET), PVC-P, PA6, PA66, POM}                     \\
$0,40 - 0,45$ & {Weichere, zähe Kunststoffe:\\Thermoplaste wie PE-HD, PP}                                                                       \\
$0,45 - 0,50$ & {Weichere, hochelastische Kunststoffe:\\Thermoplaste, Elastomere und thermoplastische Elastomere, wie PE-LD, PB, PUR, TPE, TPU} 
\end{tblr}
}
\caption{Richtwerte der Querkontraktionszahl $ \nu $ versch. Kunststoffgruppen für $ 0\unit{C^{\circ}} \leq \delta \leq 50 \unit{C^{\circ}} $  } \label{tab:querkontraEinteilung}
\end{table}


\newpage
%______________________________________________________
%Dies ist in einem Dokument namens DUMMY.tex

%\acro{ps}[PS]{Polycarbonat}
\ac{ps}
%\acro{san}[SAN]{Styrol-Acrylnitril}
\ac{san}
%\acro{pvcu}[PVC-U]{Polyvinylchlorid -hart-}
\ac{pvcu}
%\acro{pc}[PC]{Polycarbonat}
\ac{pc}
%\acro{abs}[ABS]{Acrylnitril-Butadien-Styrol}
\ac{abs}
%\acro{pet}[PET]{Polyetylenterephthalat}
\ac{pet}
%\acro{pvcp}[PVC-P]{Polyvinylchlorid -weich-}
\ac{pvcp}
%\acro{pa6}[PA6]{Polyamid 6}
\ac{pa6}
%\acro{pa66}[PA66]{Polyamid 66}
\ac{pa66}
%\acro{pom}[POM]{Polyoxymethylen}
\ac{pom}
%\acro{pehd}[PE-HD]{Polyethylen -hohe Dichte-}
\ac{pehd}
%\acro{pp}[PP]{Polypropylen}
\ac{pp}
%\acro{peld}[PE-LD]{Polyethylen -geringe Dichte-}
\ac{peld}
%\acro{pb}[PB]{Polybuten}
\ac{pb}
%\acro{pur}[PUR]{Polyurethan}
\ac{pur}
%\acro{tpe}[TPE]{Thermoplastische Elastomere}
\ac{tpe}
%\acro{tpu}[TPU]{Thermoplastische Polyurethane}
\ac{tpu}







\end{document}
%______________________________________________________
---------------------------
Viele Grüße
Jonas (aka Corioliskraft)

Ich verwende auf Windows 10 & Linux Mint: MikTeX <> TexMaker <> LuaLaTeX <> biblatex
Wenn nicht anders angegeben, ist KOMA mit scrartcl im Spiel.

[1]Nett hier, aber benutzen Sie Minimalbeispiele?
[2]Nützliche Hilfen im Netz

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Re: Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined

Beitrag von u_fischer »

(kann bei mir ausgeführt werden auf dem Rechner, hier geht das aus irgendeinem Grund nicht)
Nicht aus "irgendeinem Grund". Du bekommst hier eine log-Datei in die du nur mal reinschauen musst:
! Undefined control sequence.
<argument> ...ch. Kunststoffgruppen für $ 0\unit 
                                                  {C^{\circ }} \leq \delta \...
Sowas ist doch wirklich leicht zu korrigieren.
Am Ende des Dokuments eine "Dummy-Seite" einfügen und all jene Akronyme einmal verwenden. Das hat zur Folge, dass sie definiert sind und sollten sie bis zur letzten Seite noch nicht verwendet worden sein, sind sie es spätestens dort.
Danach müsste man in einem PDF-Programm die letzte Seite entfernen und alles wäre gegessen.
Das ist Unsinn, wenn du die Seite entfernst, entfernst du auch die Linkanker, wo sollen denn dann die Links hin?

Sorge dafür, dass es an einem sinnvollen Ort einen Anker gibt:
\documentclass[11pt,parskip=full,a4paper]{scrartcl}
\usepackage{hyperref}
\usepackage{acronym}
\begin{document}

\section*{Abkürzungsverzeichnis}
\begin{acronym}[ABSTAND]	
\acro{emod}[E-Modul]{Elastizitätsmodul}
\acro{peek}[PEEK]{Polyetheretherketon}
\end{acronym}

\newpage 

\ac{emod} %normal

\phantomsection\label{acro:peek}PEEK %manuell

\end{document}

Benutzeravatar
Corioliskraft
Forum-Anfänger
Forum-Anfänger
Beiträge: 26
Registriert: Di 9. Mai 2023, 10:13

Re: Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined

Beitrag von Corioliskraft »

Das ist Unsinn, wenn du die Seite entfernst, entfernst du auch die Linkanker, wo sollen denn dann die Links hin?
Ich meinte damit, ob es eine Möglichkeit gibt in einem als *.pdf kompillierten Dokument zum Schluss eine Seite zu entfernen, nicht nach dem Kompilieren. Mir ist durchaus bewusst, dass dann die Verlinkungen verloren gehen. An einer "sinnvollen" Stelle verwende ich sie gerade. Ich habe am Ende meines Dokumentes eine Seite auf der ich alle mal verwende und wenn dann die Abgabe kommt, entferne ich die Seite mit einem Dokumentenbetrachtungsprogramm meiner Wahl.
Diesen nachträglichen Workaround hätte ich gerne unnötig gemacht, also hätte dafür gerne die Latex-Umgebung verwendet, falls möglich.
---------------------------
Viele Grüße
Jonas (aka Corioliskraft)

Ich verwende auf Windows 10 & Linux Mint: MikTeX <> TexMaker <> LuaLaTeX <> biblatex
Wenn nicht anders angegeben, ist KOMA mit scrartcl im Spiel.

[1]Nett hier, aber benutzen Sie Minimalbeispiele?
[2]Nützliche Hilfen im Netz

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Re: Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined

Beitrag von u_fischer »

Hast du denn mein Beispiel ausprobiert? Das kommt ohne jede extra-Seite aus, alle Links sind korrekt, und es gibt auch keine Warnungen.

Benutzeravatar
Corioliskraft
Forum-Anfänger
Forum-Anfänger
Beiträge: 26
Registriert: Di 9. Mai 2023, 10:13

Re: Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined

Beitrag von Corioliskraft »

Hast du denn mein Beispiel ausprobiert?
Ich habe in der Main.tex noch eine Seite hinzugefügt und auf der dann deinen Vorschlag ausprobiert.
"Schnipsel" der Anwendung:
%%%%------Bibliothek
\printbibliography
\newpage
\include{Kapitel/DUMMY}
\end{document}
DUMMY.PNG
DUMMY.PNG (6.09 KiB) 2159 mal betrachtet
Es wurde eine weitere Seite erzeugt mit dem Inhalt der *.tex
DUMMY.tex
(1.54 KiB) 51-mal heruntergeladen
Probiert, ja, funtioniert, nein.

Kann es sein, dass ich das alles in die Main.tex schreiben muss?
---------------------------
Viele Grüße
Jonas (aka Corioliskraft)

Ich verwende auf Windows 10 & Linux Mint: MikTeX <> TexMaker <> LuaLaTeX <> biblatex
Wenn nicht anders angegeben, ist KOMA mit scrartcl im Spiel.

[1]Nett hier, aber benutzen Sie Minimalbeispiele?
[2]Nützliche Hilfen im Netz

Benutzeravatar
Corioliskraft
Forum-Anfänger
Forum-Anfänger
Beiträge: 26
Registriert: Di 9. Mai 2023, 10:13

Re: Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined

Beitrag von Corioliskraft »

Mal eben alles in die Main.tex kopiert (Hier die entmüllte
DUMMY.tex
(621 Bytes) 56-mal heruntergeladen
).

Funktioniert hat das leider auch nicht. Es führte dazu, dass ich nun am Ende des Literaturverzeichnisses die ganzen Kürzel angezeigt bekomme.
---------------------------
Viele Grüße
Jonas (aka Corioliskraft)

Ich verwende auf Windows 10 & Linux Mint: MikTeX <> TexMaker <> LuaLaTeX <> biblatex
Wenn nicht anders angegeben, ist KOMA mit scrartcl im Spiel.

[1]Nett hier, aber benutzen Sie Minimalbeispiele?
[2]Nützliche Hilfen im Netz

Benutzeravatar
u_fischer
Forum-Meister
Forum-Meister
Beiträge: 4266
Registriert: Do 22. Nov 2012, 11:09
Kontaktdaten:

Re: Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined

Beitrag von u_fischer »

Das heißt, du hast mein Beispiel nicht ausprobiert, sondern kopierst irgendwas in dein Hauptdokument ohne zu verstehen, was es tut.

Benutzeravatar
Corioliskraft
Forum-Anfänger
Forum-Anfänger
Beiträge: 26
Registriert: Di 9. Mai 2023, 10:13

Re: Workaround für Fehler durch Akronyme "hyper reference 'acro:xx' on page undefined

Beitrag von Corioliskraft »

u_fischer hat geschrieben:
Di 30. Mai 2023, 15:05
Das heißt, du hast mein Beispiel nicht ausprobiert, sondern kopierst irgendwas in dein Hauptdokument ohne zu verstehen, was es tut.
Ok, hab das Beispiel verstanden. Der Grundgedanke von dir war es, dass du die Kunststoffbezeichnung in der Tabelle direkt mit dem von dir aufgezeigten Beispiel benennst und dadurch eine Extraseite obsolet wird.

Vielen Dank für Deine Geduld und Hilfe :wink:
---------------------------
Viele Grüße
Jonas (aka Corioliskraft)

Ich verwende auf Windows 10 & Linux Mint: MikTeX <> TexMaker <> LuaLaTeX <> biblatex
Wenn nicht anders angegeben, ist KOMA mit scrartcl im Spiel.

[1]Nett hier, aber benutzen Sie Minimalbeispiele?
[2]Nützliche Hilfen im Netz

Antworten