Estoy intentando crear un nuevo comando o entorno o algo para formatear lo que es esencialmente una sección, pero necesita tener su propio contador. Me gustaría no utilizar ninguno de los \section \subsection, etc. a medida que profundizo en toda la profundidad que proporcionan.
La idea es que escribiría algo similar a...
\session{Hello World}
... y daría como resultado algo como (aunque centrado) ...
Sesión 1: Hola mundo
El comando que tengo actualmente es el siguiente:
\newcounter{sessioncounter}
\newcommand{\session}
{
\begin{center}
\begin{emph}
\begin{textbf}
\begin{Large}
Session \value{sessioncounter}\stepcounter{sessioncounter}:
}{
\end{Large}
\end{textbf}
\end{emph}
\end{center}
}
Al intentar esto exactamente, el compilador de Latex arroja el siguiente error (tenga en cuenta que esto ocurre incluso antes de que se haya llamado a \begin{document}).
Error de LaTeX: \begin{document} terminado en \end{Large}
También intenté crear un nuevo entorno cambiando literalmente \newcommand{\session} por \newenvironment{session}. Mientras esto se compila, aparece el siguiente error en la línea de \begin{session}.
Falta \endcsname insertado.
<to be read again>
\después del grupo
l.13 \begin{sesión}
¿Alguien puede ver dónde me estoy equivocando? Por el error supongo que el nuevo comando no se puede usar exactamente con esta sintaxis para lo que quiero; sin embargo, también estoy confundido en cuanto a por qué el entorno tampoco funciona.
Respuesta1
Su definición coincide con el formato de unambiente, no un comando.
Así se definen los entornos:
\newenvironment{example}{<starting commands>}{<ending commands>}
Luego se usan así:
\begin{example}
<text>
\end{example}
Pero creo que quieres undominioeso requiere un argumento, como en este ejemplo. Además, \thesessioncounter
te proporciona el número como texto; \value
es para usar en otros comandos internos. (También ajusté un poco los comandos de formato).
\documentclass{article}
\newcounter{sessioncounter}
\newcommand{\session}[1]{%
\hfil\bgroup\Large\itshape\bfseries
Session~\thesessioncounter: #1\egroup\par\bigskip
\stepcounter{sessioncounter}%
}
\begin{document}
\session{Hello World}
\session{Hello again}
\session{Hello for the last time}
\end{document}
Respuesta2
No puedes hacer \begin{textbf}
ni \begin{emph}
deberías hacer \begin{Large}
ninguna de las dos cosas.
Quieres
\newcommand{\session}[1]{%
\begin{center}\Large\itshape\bfseries
\stepcounter{sessioncounter}%
Session \value{sessioncounter}: #1%
\end{center}%
}
en el preámbulo y uso
\session{Hello world}
en el documento.