Beschriftungen oder Schlüssel von tcbtheorems in einem Abschnitt

Beschriftungen oder Schlüssel von tcbtheorems in einem Abschnitt

Ich bin sicher, dass viele Leute das bereits gefragt haben, aber ich kann die richtige Antwort nicht finden.

Ich möchte die Beschriftung/Schlüssel im Auge behalten, die ich einem tcbtheorem gegeben habe. Ich weiß nicht, wie ich dieses Problem am besten behebe. Ich hätte gerne irgendwo in meinem Dokument einen Abschnitt oder ein Kapitel, aber ich wäre auch mit der Beschriftung/dem Schlüssel im Randbereich des PDF zufrieden.

Ich habe die Idee verstanden, dass es gut ist, das Etikett/den Schlüssel im Randbereich des PDFs zu haben.

Aber als ich versuchte, das Problem auf diese Weise zu lösen, erhielt ich das erwartete Ergebnis, als ich \label{} verwendete (siehe den bereitgestellten Code unten).

Auch

% Command to automatically display the reference
\newcommand{\autoNameref}[1]{\nameref{def:#1}}

\begin{document}
\tcblistof[\section*]{def}{List of Defenition}

funktioniert gut.

Aber ich kann die angegebenen Referenzen von def:Pi oder def:TestRef weder im Randbereich noch sonst wo sehen. Wenn ich es so beschrifte:

{for example Pi\label{def:Pi2}}

Das geht meiner Meinung nach in die falsche Richtung. Warum sollte ich alles beschriften, wenn ich mir vorher schon die ganze Mühe gemacht habe?

Vielleicht muss ich

\usepackage{nameref} 
\usepackage{showkeys}
\usepackage{showexpl}

starte das auf eine andere Weise, aber ich finde keine Informationen dazu. Ich habe auch lange im tcolorbox - Handbuch gesucht: tcolorbox - Handbuch

Ich freue mich über jeden Hinweis oder Lösungsansatz.

Ich danke Ihnen für Ihre Hilfe.

Ich habe versucht, meine Einleitung so weit zu kürzen, dass ich sicher war, dass es in Ordnung wäre.

Der folgende Code:

sollte in diesem PDF gelöst werden

\documentclass[12pt,a4paper]{book}
\usepackage[utf8]{inputenc}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}

\usepackage{nameref} 
\usepackage{showkeys}
\usepackage{showexpl}
% Math packages + Access additional mathematical symbols
\usepackage{amsmath,amsfonts,amsthm,amssymb,mathtools}

% Hyperlinks and PDF properties
\usepackage{hyperref,theoremref}

% Colored boxes and tcolorbox configurations
\usepackage[most,many,breakable]{tcolorbox}   
% Libraries for diagrams and plots
\usepackage{tikz-cd}
\usepackage{pgfplots}

\usetikzlibrary{
    % tcolorbox some boxes
    arrows,
    calc,
    shadows.blur}

% Conditional commands
\usepackage{xparse}
% Dummy text generator
\usepackage{lipsum}  % For generating placeholder text
% store a big set of sentences
\unpacklipsum[1-100]

\ExplSyntaxOn
% unpack \lipsumexp
\seq_new:N \g_lipsum_sentences_seq
\cs_generate_variant:Nn \seq_set_split:Nnn { NnV }
\seq_gset_split:NnV \g_lipsum_sentences_seq {.~} \lipsumexp

\NewDocumentCommand{\lipsumsentence}{>{\SplitArgument{1}{-}}O{1-7}}
 {
  \lipsumsentenceaux #1
 }
\NewDocumentCommand{\lipsumsentenceaux}{mm}
 {
  \IfNoValueTF { #2 }
   {
    \seq_item:Nn \g_lipsum_sentences_seq { #1 }.~
   }
   {
    \int_step_inline:nnnn { #1 } { 1 } { #2 }
     {
      \seq_item:Nn \g_lipsum_sentences_seq { ##1 }.~
     }
   }
 }
\ExplSyntaxOff

\setlength{\parindent}{1cm}

\tcbset{
    BandarolGroundStyle/.style={
        attach boxed title to top left={xshift=1cm,yshift*=1mm-\tcboxedtitleheight},
        varwidth boxed title*=-3cm,
        boxed title style={frame code={
            \path[fill=tcbcolback]
            ([yshift=-1mm,xshift=-1mm]frame.north west)
            arc[start angle=0,end angle=180,radius=1mm]
            ([yshift=-1mm,xshift=1mm]frame.north east)
            arc[start angle=180,end angle=0,radius=1mm];
            \path[left color=tcbcolback!60!black,right color=tcbcolback!60!black,
                middle color=tcbcolback!80!black]
            ([xshift=-2mm]frame.north west) -- ([xshift=2mm]frame.north east)
            [rounded corners=1mm]-- ([xshift=1mm,yshift=-1mm]frame.north east)
            -- (frame.south east) -- (frame.south west)
            -- ([xshift=-1mm,yshift=-1mm]frame.north west)
            [sharp corners]-- cycle;
            }
        ,interior engine=empty
        },
        fonttitle=\bfseries,
        label separator=:
        },
    defstyle/.style={
        enhanced,
        before skip=2mm,
        after skip=2mm, 
        colback= #1!5,
        colframe= #1!80!black,
        colbacktitle= #1!75!black,
        boxrule=0.5mm,
        BandarolGroundStyle
    }
}

%================================
% DEFINITION BANDAROLLED THEOREMS
%================================
% list inside={def} maybe a good idea but check it later
% \tcblistof[\section*]{def}{List of Defenition}
\newtcbtheorem[number within=section, list inside={def}]{Definition}{Definition}{defstyle=red, title={#2},#1}{def}

%================================
% xparse commands for theorems:
%================================
% reason:
% https://tex.stackexchange.com/questions/48355/latex-command-with-optional-arguments
% It is also possible to use optional Arguments:
% r = required Argument
% o = optional Argument
% O = optional Argument if empty default value

% Order of the Attributes (Ref, Titel, Body)
% not working because of \MainAttributes in command...
% \newcommand\MainAttributes{O +m +m}
% Order so it is correct with the newtcbtheorem initialisation
% not working because of \MainOrder in command...
% \edef\MainOrder{\{\#2\}\{\#1\}\#3}
% solutions:
% https://tex.stackexchange.com/questions/551429/how-to-use-newdocumentcommand
% https://tex.stackexchange.com/questions/139614/you-cant-use-macro-parameter-character-in-restricted-horizontal-mode
% https://tex.stackexchange.com/questions/393622/using-key-values-in-newdocumentcommand

% to less time maybe a revisit later...

%================================
% DEFINITION BANDAROLLED THEOREMS
%================================

\NewDocumentCommand {\dfn} {O +m +m}{
\begin{Definition}{#2}{#1}#3
\end{Definition}}



% Customize the format for displaying keys and labels
\renewcommand*\showkeyslabelformat[1]{\normalfont\small\ttfamily#1}


% Command to automatically display the reference
\newcommand{\autoNameref}[1]{\nameref{def:#1}}

\begin{document}
\tcblistof[\section*]{def}{List of Defenition}
\label{test}
\lipsum[1]

\dfn[Pi]{A defined Number }{for example Pi}

\lipsum[2]

\nameref{def:Pi} \ref{def:Pi}

\begin{LTXexample}[pos=r, width=0.5\linewidth]
\dfn[TestRef]{RefTest}{TextRefTest}
\end{LTXexample}

\end{document}

Antwort1

Nun, das Label ist da, aber es ist hinter dem Titel der Farbbox versteckt, da Showkeys aus irgendeinem Grund ein verwendet \rlap. Sie können es in den Rand verschieben:

\documentclass[12pt,a4paper]{book}
\usepackage[german]{babel}
\usepackage[T1]{fontenc}
\usepackage{showkeys}
\usepackage{hyperref}
\usepackage[most,many,breakable]{tcolorbox}   

\newtcbtheorem[number within=section, list inside={def}]
 {Definition}{Definition}{
 frame empty,coltitle=red, %to remove the background
 title={#2},#1}{def}


\begin{document}
\section{A}\label{test}
\section{B}\label{longertest}

\begin{Definition}{A defined Number }{Pi}
for example Pi
\end{Definition}

\renewcommand*\showkeyslabelformat[1]
 {% 
   \normalfont\small\ttfamily
   \llap{\fbox{#1}\hspace{\marginparsep}}%
 }

\begin{Definition}{A defined Number }{ratio}
for example the golden ratio
\end{Definition}


\ref{test}, \ref{def:Pi} 

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen