Archiv verlassen und diese Seite im Standarddesign anzeigen : Nummerierung und Absatz in eigener Umgebung
Hallo, habe zwei kurze Fragen zu selbst definierten Umgebungen/Befehlen:
1.) Ist es möglich, folgende Umgebung gemäß section ihres Auftretens zu nummerieren, also z.B. einen Exkurs in section 5 als "Exkurs 5.1" auszugeben (so wie bei der Formelnummerierung je section)?
\documentclass{article}
\usepackage{color}
\definecolor{hellGrau}{rgb}{0.6,0.6,0.6}
\newenvironment{exkurs}[2]{
\noindent
\setlength{\fboxrule}{1pt}
\setlength{\fboxsep}{6pt}
\fcolorbox{hellGrau}{white}{
\parbox{400pt}{
\textbf{\textsf{Exkurs}} ({#1})\smallskip\\ {#2}
}
}
}
\begin{document}
\exkurs{headline}{%
text
}
2.) Wenn ich den text in der Exkurs-Umgebung mit \note{merktext} beginne, dann wird vor Beginn von Note immer ein Absatz gesetzt. Mit beiden Kommandos an sich habe ich sonst keine Probleme. An welchem von beiden liegt das denn?
\renewcommand{\note}[1]{
\begin{basedescript}{
\desclabelwidth{1.5cm}\desclabelstyle{\multilinela bel}
\renewcommand{\makelabel}[1]{##1}} %
\item[\textsf{\color{blackGray}Note: }] {#1}
\end{basedescript}}
Vielen Dank.
bobmalaria
13-09-2009, 17:04
hi,
zu 1)
\documentclass{article}
\usepackage{color}
\definecolor{hellGrau}{rgb}{0.6,0.6,0.6}
%neuer counter
\newcounter{exkursc}
%zurücksetzen des counters bei jeder neuen section
\makeatletter
\@addtoreset{exkursc}{section}
\makeatother
\newenvironment{exkurs}[2]{
\noindent
\setlength{\fboxrule}{1pt}
\setlength{\fboxsep}{6pt}
\fcolorbox{hellGrau}{white}{
\parbox{400pt}{
\textbf{\textsf{Exkurs: \thesection.\theexkursc}\stepcounter{exkursc}} ({#1})\smallskip\\ {#2}
}
}
}
\begin{document}
\section{bla}
\exkurs{headline}{%
text
}
\section{blubb}
\exkurs{headline}{%
text
}
\end{document}
zu 2) wo wird den note definiert?
zu 1.) Danke, fängt aber leider bei #.0 zu zählen an, wie kann man das auf #.1 ändern?
Wie kann ich im Text auf den Exkurs verweisen?
\exkurs{headline}{\label{...}text}
\ref{...}
und
\exkurs{\label{...}headline}{text}
\ref{...}
führen beide dazu, dass z.B. 4.1 an Stelle von 4.2 angezeigt wird.
zu 2.) Soweit ich mich erinnere ist der Befehl vordefinert, daher habe ich ihn einfach überschrieben...
u_fischer
13-09-2009, 18:50
zu 1.) Danke, fängt aber leider bei #.0 zu zählen an, wie kann man das auf #.1 ändern?
Wie kann ich im Text auf den Exkurs verweisen?
\refstepcounter statt \stepcounter, und den Befehl weiter nach vorne verschieben.
zu 1.)
\refstepcounter statt \stepcounter, und den Befehl weiter nach vorne verschieben.
Danke, habe es jetzt folgendermaßen geändert:
\newenvironment{exkurs}[2]{
\noindent
\setlength{\fboxrule}{1pt}
\setlength{\fboxsep}{6pt}
\fcolorbox{hellGrau}{white}{
\parbox{400pt}{
\refstepcounter{exkursc}
\textbf{\textsf{Exkursion}{\small~\thesection.\the exkursc}} ({#1})\smallskip\\ {#2}
}
}
}
Problem ist mit dem neuen counter jedoch, dass beim referenzieren jetzt nur noch 1 anstatt #.1 angezeigt wird. Wo müssen \label und \ref nun hin?
Moin moin,
Problem ist mit dem neuen counter jedoch, dass beim referenzieren jetzt nur noch 1 anstatt #.1 angezeigt wird. Wo müssen \label und \ref nun hin?
Warum schaust Du Dir nicht eine LaTeX-Einführung Deiner Wahl an? Da sollte sowas drinstehen ...
MfG
Da ich nun weis, dass \refstepcounter den aktuellen ref-value auf den eigenen counter setzt, ist mir nun klar, warum nur noch 1 an Stelle von#.1 angezeigt wurde.
Nach wie vor ist mir jedoch unklar, wie ich das Problem löse. Habe z.B. folgendes probiert, um die counter "wieder zusammenzusetzen", jedoch ohne Erfolg.
\stepcounter{exkursc}
\setcounter{exkursc}{\value{section}.\value{exkurs c}}
Wie muss man es denn nun machen?
u_fischer
16-09-2009, 18:03
\label speichert die Ausgabe von \theexkursc. Also musst du sowas machen, wenn \ref auch die Sectionnummer ausgeben soll:
\documentclass{article}
\newcounter{exkursc}
\renewcommand\theexkursc{Ich bin exkursc Nr. \arabic{exkursc} aus section \thesection.}
\begin{document}
\section{Test}
\refstepcounter{exkursc}\label{test}
\ref{test}
\end{document}
\label speichert die Ausgabe von \theexkursc. Also musst du sowas machen, wenn \ref auch die Sectionnummer ausgeben soll:
\documentclass{article}
\newcounter{exkursc}
\renewcommand\theexkursc{Ich bin exkursc Nr. \arabic{exkursc} aus section \thesection.}
\begin{document}
\section{Test}
\refstepcounter{exkursc}\label{test}
\ref{test}
\end{document}
Dankeschön, das hat geholfen :) !
Kann mir auch noch jemand beim 2. Problem (die Abstände) helfen?
u_fischer
16-09-2009, 18:27
Da musst du schon ein vollständiges Beispiel machen.
Achte übrigens mehr auf Leerzeichen + Zeilenumbrüche nach Klammern, die können leicht zu unerwünschten Leerzeichen im Text führen. Deaktiviere sie mit einem Kommentarzeichen:
{%
weiter
und
}%
weiter
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.