Eu tenho uma pergunta...
Se eu tiver uma lista como
\begin{enumerate}
\item Objective 1
\item Objective 2
\item Objective 3
\end{enumerate}
E quero usar cada item como uma subseção para descrever cada um. O que eu uso? Tenho pesquisado muito e não consigo encontrar uma resposta.
Quero, depois desse ambiente enumerado, usar um rótulo em vez de escrever todo o objetivo novamente e descrever esse objetivo como uma subseção.
Muito obrigado por suas respostas!
Responder1
Você pode carregar enumitem
e escrever algo assim:
\begin{enumerate}[label=Objective \arabic*., wide=0pt, font=\bfseries]
\item Description of Objective1
\item Description of Objective2
\item Description of Objective3
\end{enumerate}
Responder2
Você pode usar listas: veja as respostasaquipara criar uma lista com separador personalizado para usar no loop foreach (você precisa ter a possibilidade de adicionar uma vírgula na sua frase)
Fornecerei um código usando a resposta de @HeikoOberdiek no link acima:
\documentclass[a4paper,10pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{pgffor}
\usepackage{etoolbox}
\usepackage{etexcmds}
\DeclareListParser*{\forvertlist}{|}
\makeatletter
\newcommand{\vertocomma}[2]{%
\let#1\@empty
\forvertlist{\@verttocomma{#1}}{#2}%
}
\newcommand{\@verttocomma}[2]{%
\edef#1{%
\ifx#1\@empty
\else
\etex@unexpanded\expandafter{#1},%
\fi
{\etex@unexpanded{#2}}%
}%
}
\makeatother
\newcounter{ii}
\vertocomma\mylist{sentenceA|| One big sentence to see if it works with the section and if it breaks lines..|se,nt,en,ce,B| sentenceC | }
\foreach \x in \mylist {%
\stepcounter{ii}%
%\typeout{[\meaning\x]}%
\global\expandafter\let\csname myObj\arabic{ii}\endcsname\x%
}
\usepackage{titlesec}
\titleformat{\section}[display]
{\normalfont\bfseries}
{Item \arabic{section}:\space \csname myObj\arabic{section}\endcsname}{0pt}{}
\begin{document}
\setcounter{ii}{0}
\begin{enumerate}
\foreach \x in \mylist
{\stepcounter{ii}
\item\label{it:\arabic{ii}} \x
}
\end{enumerate}
\section{}
This item is the \ref{it:\arabic{section}} item and ends with a full-stop.\csname myObj1\endcsname
\section{}
The item \ref{it:2} is a sentence with many commas
\end{document}
Você pode escolher a forma de fazer a lista ou copiar e usar esta.
O resultado é:
(Editar: você também pode usar 'nameref' dentro de suas subseções (acho que funcionará) se não gostar do comando titleformat.)
Boa sorte (as seções podem ser formatadas como você desejar ou vazias como as minhas)
Responder3
Você está tentando fazer um índice como no exemplo de trabalho mínimo (MWE) abaixo?
Ou pode ser um mini índice? (também no MWE)
Caso contrário, você pode usar o nameref
pacote (claro, também no MWE):
\documentclass{article}
\usepackage{lipsum} % for dummy text
\usepackage{minitoc}
\usepackage{nameref} % Note: Do not load it before minitoc !
\begin{document}
\dosecttoc
\tableofcontents
\section{Introduction} Bla bla bla ...
\section{Objectives}
\begin{enumerate}
\item \nameref{obj1}
\item \nameref{obj2}
\item \nameref{obj3}
\end{enumerate}
\renewcommand\stctitle{} %no title for minitoc
\nostcpagenumbers % no page numbers
\secttoc[c]
\subsection{The first funny objective}\label{obj1}\lipsum[1]
\subsection{The hard and really complex objective}\label{obj2}\lipsum[2]
\subsection{The last and final objective}\label{obj3}\lipsum[3]
\end{document}