Restablecer el valor del contador dentro del nuevo párrafo

Restablecer el valor del contador dentro del nuevo párrafo

Los \newcounter{<counter-name>}[<outer-counter>]comandos definirán un nuevo contador. Por ejemplo, \newcounter{example}[section] el comando crea un nuevo contador llamado exampleque se restablecerá cada vez quesecciónEl contador aumenta.

Pero parapárrafocontador, el \newcounter{<counter-name>}[paragraph]no funciona.

Aquí está el MWE:

\documentclass{article}


\newcounter{sentencenum}[paragraph]
\newcommand{\sno}[0]{\refstepcounter{sentencenum}$_{\arabic{sentencenum}}$}


\begin{document}


\sno{}Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
\sno{}Ut purus elit, vestibulum ut, placerat ac,adipiscing vitae, felis. Curabitur dictum gravida mauris.
\sno{}Nam arcu libero, nonummy eget, consectetuerid, vulputate a, magna.
\sno{}Donec vehicula augue eu neque. Pellentesque habitant morbi tristique senectus etnetus et malesuada fames ac turpis egestas.
\sno{}Mauris ut leo. Cras viverra metus rhoncus sem.
\sno{}Nulla et lectusvestibulum urna fringilla ultrices.
\sno{}Phasellus eu tellus sit amet tortor gravida placerat.
\sno{}Integer sapien est,iaculis in, pretium quis, viverra ac, nunc.
\sno{}Praesent eget sem vel leo ultrices bibendum.
\sno{}Aenean faucibus.
\sno{}Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla.
\sno{}Curabitur auctor semper nulla.
\sno{}Donec variusorci eget risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orcidignissim rutrum.



%
% Bug: The second paragraph should reset the counter value of `sentencenum` since here start a new paragraph
%
\sno{}Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi.
\sno{}Morbi auctor lorem non justo.
\sno{}Namlacus libero, pretium at, lobortis vitae, ultricies et, tellus.
\sno{}Donec aliquet, tortor sed accumsan bibendum,erat ligula aliquet magna, vitae ornare odio metus a mi.
\sno{}Morbi ac orci et nisl hendrerit mollis.
Suspendisseut massa.


\end{document}

Respuesta1

No puedo decir que esta sea una forma recomendada de hacerlo, pero podría resolver este problema. Pruébelo en documentos más complejos porque realmente no puedo conocer los efectos secundarios. Aquí está el código de su ejemplo:

\documentclass{article}



\newcounter{sentencenum}
\newcommand{\sno}[0]{\refstepcounter{sentencenum}$_{\arabic{sentencenum}}$}

\let\oldpar\par
\def\par{\setcounter{sentencenum}{0}\oldpar}


\begin{document}


\sno{}Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
\sno{}Ut purus elit, vestibulum ut, placerat ac,adipiscing vitae, felis. Curabitur dictum gravida mauris.
\sno{}Nam arcu libero, nonummy eget, consectetuerid, vulputate a, magna.
\sno{}Donec vehicula augue eu neque. Pellentesque habitant morbi tristique senectus etnetus et malesuada fames ac turpis egestas.
\sno{}Mauris ut leo. Cras viverra metus rhoncus sem.
\sno{}Nulla et lectusvestibulum urna fringilla ultrices.
\sno{}Phasellus eu tellus sit amet tortor gravida placerat.
\sno{}Integer sapien est,iaculis in, pretium quis, viverra ac, nunc.
\sno{}Praesent eget sem vel leo ultrices bibendum.
\sno{}Aenean faucibus.
\sno{}Morbi dolor nulla, malesuada eu, pulvinar at, mollis ac, nulla.
\sno{}Curabitur auctor semper nulla.
\sno{}Donec variusorci eget risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis eget orci sit amet orcidignissim rutrum.



%
% Bug: The second paragraph should reset the counter value of `sentencenum` since here start a new paragraph
%
\sno{}Nam dui ligula, fringilla a, euismod sodales, sollicitudin vel, wisi.
\sno{}Morbi auctor lorem non justo.
\sno{}Namlacus libero, pretium at, lobortis vitae, ultricies et, tellus.
\sno{}Donec aliquet, tortor sed accumsan bibendum,erat ligula aliquet magna, vitae ornare odio metus a mi.
\sno{}Morbi ac orci et nisl hendrerit mollis.
Suspendisseut massa.


\end{document}

ingrese la descripción de la imagen aquí

La idea es:

Para cada nuevo párrafo en látex, \parse ejecuta el comando. Entonces, agregué la funcionalidad de hacer que su contador sea cero redefiniendo \par(me parece peligroso al pensarlo primero... pero PUEDE SER que esté bien...)

PD: el párrafo de texto se crea con líneas vacías entre el texto... Pero también hay un comando de sección \paragraphque "intentaste usar" por error en tu MWE.

información relacionada