- Questo topic ha 7 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 15 anni, 11 mesi fa da
egreg9.
-
CreatoreTopic
-
8 Ottobre 2010 alle 9:15 #51042
-
CreatoreTopic
-
AutoreRisposte
-
-
8 Ottobre 2010 alle 9:21 #51043::
Un comando`\section` inserito nell’ambiente enumerate produce il numero ed il titolo del paragrafo rientrati.
Come si può ovviare a questo inconveniente senza interrompere e riprendere la numerazione?
Grazie
ciao
ErnestoNon si cerca di fare una cosa palesemente assurda: come può una sezione cominciare dentro una lista?
Ciao
Enrico
-
8 Ottobre 2010 alle 9:35 #51044
-
8 Ottobre 2010 alle 9:41 #51045::
Per esempio la situazione può presentarsi se in un eserciziario numeri gli esercizi capitolo per capitolo invece che sezione per sezione, per avere una numerazione solo a due indici invece che a tre, che appesantirebbe molto.
Che c’entra la lista? È assai probabile che si possa fare senza bisogno di stiracchiare l’ambiente enumerate per fargli fare ciò che non gli compete. Puoi essere più esplicito?
Ciao
Enrico
-
8 Ottobre 2010 alle 9:57 #51046
-
8 Ottobre 2010 alle 10:23 #51047::
Per esempio per realizzare una struttura di questo genere:
Capitolo 1 coniche
sezione ellisse
1.1 esercizio
1.2 esercizio
1.3 esercizio
sezione parabola
1.4 esercizio
1.5 esercizio
………
con sezione allineato a margine sinistro e non dove comincia l’item
non usereste l’ambiente enumerate?Ovviamente sono liste separate. L’unico problema è di dover mantenere la progressione della numerazione. Il pacchetto enumitem lo fa senza troppi problemi, ma non è troppo difficile costruirsi un ambiente ad hoc:
`\documentclass[a4paper]{book}%%% definizioni per l'ambiente “esercizi”
\newcounter{esercizio}
\renewcommand\theesercizio{\thechapter.\arabic{esercizio}}
\newenvironment{esercizi}
{\list{\theesercizio}{\usecounter{esercizio}\def\makelabel##1{\hss\llap{##1}}}%
\restoreesercizio}
{\xdef\ricordaesercizio{\number\value{esercizio}}%
\xdef\ricordacapitolo{\number\value{chapter}}\endlist}
\newcommand\restoreesercizio{\ifnum\value{chapter}=\ricordacapitolo\relax
\setcounter{esercizio}{\ricordaesercizio}\else\setcounter{esercizio}{0}\fi}
\newcommand\ricordacapitolo{0}
\newcommand\ricordaesercizio{0}
%%% fine delle definizioni rilevanti
\usepackage{lipsum}\begin{document}
\mainmatter
\chapter{Uno}
Testo\section*{Esercizi}
\subsection*{Parabola}
\begin{esercizi}
\item \lipsum[2]
\item Secondo
\end{esercizi}\subsection*{Ellisse}
\begin{esercizi}
\item Primo
\item Secondo
\end{esercizi}\chapter{Due}
Testo\section*{Esercizi}
\subsection*{Parabola}
\begin{esercizi}
\item Primo
\item Secondo
\end{esercizi}\subsection*{Ellisse}
\begin{esercizi}
\item Primo
\item Secondo
\end{esercizi}\end{document}`
Ciao
Enrico
-
8 Ottobre 2010 alle 11:55 #51048::
grazie, Enrico
. Funziona perfettamente, ma andando a toccare la label è incompatibile con li comando`
\makeatletter
\newcommand\flag{%
\settowidth{\dimen@}{\@nameuse{label\@enumctr}\hskip\labelsep}%
\makebox[0pt][r]{*\,\kern\dimen@}}
\makeatother
`
che mi avevi suggerito per asteriscare alcuni elementi della lista.
Che cosa devo cambiare in \flag, perché funzioni?
ciao
Ernesto
-
8 Ottobre 2010 alle 12:31 #51049::
grazie, Enrico
. Funziona perfettamente, ma andando a toccare la label è incompatibile con li comando`
\makeatletter
\newcommand\flag{%
\settowidth{\dimen@}{\@nameuse{label\@enumctr}\hskip\labelsep}%
\makebox[0pt][r]{*\,\kern\dimen@}}
\makeatother
`
che mi avevi suggerito per asteriscare alcuni elementi della lista.
Che cosa devo cambiare in \flag, perché funzioni?Sostituisci \@nameuse{label\@enumctr} con \theesercizio; naturalmente non potrai usare \flag dentro ambienti enumerate.
Ciao
Enrico
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.