Neudefinition von \autoref für Paragraph ohne Nummer

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Neudefinition von \autoref für Paragraph ohne Nummer

Re: Neudefinition von \autoref für Paragraph ohne Nummer

von Frankthetank » Do 8. Sep 2022, 18:07

Stabil, warum kam ich da selbst nicht drauf :roll:

Ich nutze das optionale Argument zu Hauf für \chapter, \section, etc. mit Quellenangaben, sodass diese nicht in Verzeichnisses mit auftauchen. Aber dieses in Verbindung mit explizit fett gedruckten Symbolen zu verwenden kam mir irgendwie nicht in den Sinn. Den Wald vor lauter Bäumen und so...

Daher vielen Dank, vor allem auch für die schnelle Antwort :wink:

Re: Neudefinition von \autoref für Paragraph ohne Nummer

von KOMA » Do 8. Sep 2022, 17:55

Verwende das optionale Argument von \paragraph:
\documentclass[ngerman]{article}
\usepackage{babel}
\usepackage{mwe}
\usepackage{hyperref}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{bm}

\newcommand{\pararef}[1]{Absatz \textit{\nameref{#1}}}

\begin{document}

\paragraph[Paragraph mit $\sigma$ als Beispiel]{Paragraph mit $\bm{\sigma}$ als Beispiel}
\label{para:Test}

Das ist die Referenz von \pararef{para:Test}, dabei wird $\sigma$ nicht fett ausgegeben.

\end{document}
Siehe auch: Wie Mathematik in Überschriften fett gesetzt werden kann. Auch, wenn ich das dort mit Bezug auf KOMA-Script erklärt habe, bleibt die grundsätzliche Problematik gleich bzw. ist mit den Standardklassen allenfalls noch unangenehmer.

Re: Neudefinition von \autoref für Paragraph ohne Nummer

von Frankthetank » Do 8. Sep 2022, 17:45

Ich muss nochmal nachhaken :D

Wenn ich einen \paragraph referenziere, der ein Symbol/Buchstabe/etc. im Mathemodus enthält, der mit \bm fett hervorgehoben wird wie der Paragraph selbst, wird bei der Referenz der Teil im Mathemodus ebenfalls wieder fett ausgegeben, während der Rest wie gewünscht kursiv geschrieben wird. Wie kann ich dass via \bm fett geschriebene bei der Referenz "deaktivieren", sodass es wie der Rest ausschaut?

Danke vorab schonmal ;)

Beispiel:
\documentclass[ngerman]{article}
\usepackage{babel}
\usepackage{mwe}
\usepackage{hyperref}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{bm}

\newcommand{\pararef}[1]{Absatz \textit{\nameref{#1}}}

\begin{document}

\paragraph{Paragraph mit $\bm{\sigma}$ als Beispiel}
\label{para:Test}

Das ist die Referenz von \pararef{para:Test}, dabei wird $\sigma$ fett ausgegeben, was es nicht soll.

\end{document}

Re: Neudefinition von \autoref für Paragraph ohne Nummer

von Frankthetank » Mi 20. Jul 2022, 16:41

Danke nochmals für den Input. Angesichts der Tatsache, dass der Umbau von \autoref zu umständlich wäre, habe ich mich an den Vorschlägen orientiert und einen eigenen Befehl \pararef kreiert:
\newcommand{\pararef}[1]{Absatz \textit{\nameref{#1}}}
Um die Autovervollständigung in Verbindung mit Labels nutzen zu können, habe ich hierfür eine .cwl-Datei erstellt mit dem Inhalt
\pararef{key}#r

Re: Neudefinition von \autoref für Paragraph ohne Nummer

von ich meine ja nur » Fr 1. Jul 2022, 08:51

Frankthetank hat geschrieben:
Do 30. Jun 2022, 21:43
Es sei denn, ich kann \nameref so umdefinieren, dass es mir immer das Wort "Absatz" voranstel[…]t
\documentclass[ngerman]{article}
\usepackage{babel}
\usepackage{mwe}
\usepackage{hyperref}
\newcommand*{\pararef}{%
  Paragraph \nameref%
}
\begin{document}
\tableofcontents
\section{Ein Verweis}
\dots{} auf: \pararef{dashier}, oder ohne Link: \pararef*{dashier}.
\blinddocument
\paragraph{Ein Beispielparagraph}\label{dashier}
\blindtext
\end{document}
Wie Ulrike schon sagte, \autoref umbiegen wäre extrem aufwändig. Den Präfix (im Beispiel „Paragraph”) kann man mit Hilfe von cleveref ggf. auch noch automatisieren:
\documentclass[ngerman]{article}
\usepackage{babel}
\usepackage[svgnames]{xcolor}
\usepackage{mwe}
\usepackage{hyperref}
\usepackage{cleveref}% Nach hyperref laden!
\NewDocumentCommand{\cnameref}{sm}{%
  \namecref{#2} \IfBooleanTF{#1}{\nameref*{#2}}{\nameref{#2}}%
}
\begin{document}
\tableofcontents
\section{Ein Verweis}
\dots{} auf: \cnameref{dashier}, oder ohne Link: \cnameref*{dashier}
\blinddocument
\paragraph{Ein Paragraph}
\label{dashier}
\end{document}
Wie man dabei die Ausgabe von \namecref ändern kann, ist der cleveref-Anleitung zu entnehmen.

Re: Neudefinition von \autoref für Paragraph ohne Nummer

von u_fischer » Do 30. Jun 2022, 23:02

\autoref ist an den Counternamen gebunden (den es aus dem Destinationname extrahiert). Da dein Paragraph keinen Counter erhöht, hat \autoref keine Chance. Außerdem gibt \autoref die Nummer aus. Das alles umzubiegen, ist ausnehmend mühselig. Definiere dir einen \pararef Befehl oder so was.

Re: Neudefinition von \autoref für Paragraph ohne Nummer

von Frankthetank » Do 30. Jun 2022, 21:43

Vielen Dank für den Hinweis,

\nameref ist mir bekannt, da ich jedoch von Abbildungen, Tabellen, Überschriften über Gleichungen alles mit \autoref bereits referenziere, würde ich ungern für den Paragraph \nameref nehmen. Zumal dort nur der Titel/Name des Paragraph wiedergegeben wird und kein "Absatz" vorangestellt wird, was ich dann händisch davor schreiben müsste, damit der Titel des Paragraph als Wort nicht alleine im Fließtext steht.

Es sei denn, ich kann \nameref so umdefinieren, dass es mir immer das Wort "Absatz" voranstellen tut, was man dann aber wieder mit \autoref für den Paragraph ebenfalls machen könnte. Ich weiß nur nicht wie ich \renewcaptionname für \paragraphautorefname anpassen müsste.

Re: Neudefinition von \autoref für Paragraph ohne Nummer

von ich meine ja nur » Do 30. Jun 2022, 19:38

Du suchst nicht \autoref, sondern \nameref. Das dafür benötigte Paket nameref, in dessen Anleitung der Befehl dokumentiert ist, wird von hyperref automatisch geladen:
\documentclass[ngerman]{article}
\usepackage{babel}
\usepackage[svgnames]{xcolor}
\usepackage{mwe}
\usepackage{hyperref}
\begin{document}
\tableofcontents
\section{Ein Verweis}
\dots{} auf: \nameref{dashier}
\blinddocument
\paragraph{Ein Paragraph}
\label{dashier}
\end{document}

Neudefinition von \autoref für Paragraph ohne Nummer

von Frankthetank » Do 30. Jun 2022, 13:57

Hallo zusammen,

ich habe umnummerierte \paragraph in meinem Dokument.

Wenn man nun mit \autoref diese referenziert, wird die Nummer der vorangehenden \subsubsection ausgegeben. Ich suche nun nach einer Lösung, wo ich den Befehl für \autoref für unnummerierte \paragraph umbauen/neu definieren kann, sodass nicht die Nummerierung der subsubsection ausgegeben wird, sondern der Name des \paragraph, also

"Absatz *Name des referenzierten paragraph*"

und nicht wie aktuell

"Absatz *Nummer subsubsection".

Derselbe Sachverhalt wurde mehr oder weniger auch schon hier vorgetragen:

https://tex.stackexchange.com/questions/476396/redefine-autoref-for-paragraphs/649446?noredirect=1#comment1618574_649446

Über Hilfe hierzu würde ich mich sehr freuen :)

Nach oben