Usando memórias, como numerar os parágrafos?

Usando memórias, como numerar os parágrafos?

Estou tentando implementar a numeração de parágrafos com memoir. Eu gostaria que os números fossem

  1. na margem externa,
  2. nivelar contra o bloco de texto e
  3. alinhado verticalmente com a primeira linha do parágrafo.

Combinando vários pedaços de código que encontrei aqui no Stack Exchange, tenho

\documentclass[12pt]{memoir}
\pagestyle{empty}

\usepackage{lipsum}

\strictpagecheck
\newcounter{PN}
\marginparmargin{outer}

%% ATTEMPT A
\newcommand{\pnum}{\addtocounter{PN}{1}\marginpar{\mpjustification\arabic{PN}}}

%% ATTEMPT B
%\newcommand{\pnum}{\addtocounter{PN}{1}\hspace{0pt}\marginpar{\mpjustification\arabic{PN}}}

\begin{document}

\pnum\lipsum[\value{PN}]

\pnum\lipsum[\value{PN}]

\end{document}

Tanto a tentativa A quanto a tentativa B estão próximas. Mas A coloca os números muito altos, de modo que ficam entre a última linha do parágrafo anterior e a primeira linha do parágrafo atual, enquanto B coloca os números muito baixos, de modo que ficam entre a primeira e a segunda linhas do parágrafo atual. parágrafo.

Qualquer sugestão seria apreciada.

EDIT: Minha resposta às respostas

As sugestões de Mike Renfro e Gonzalo Medina foram úteis (e eu as sinalizei como tal). No meu documento atual, mudo o estilo dos títulos dos capítulos e isso, por algum motivo, faz com que os números dos parágrafos sejam alterados na primeira página de cada capítulo. (Se eu não aplicar o estilo de capítulo personalizado, esse problema desaparecerá.) No final das contas, escolhi a resposta de Mike porque ela não apresenta esse problema. Obrigado a vocês dois (e lockstep). Além disso, eu não sabia sobre o \stepcountercomando; isso é mais elegante.

Responder1

Trabalhando a partir da resposta de Gonzalo, mas usando memoiros recursos integrados de notas marginais do (consulte a seção 12.3 domemoirmanual):

\documentclass[12pt]{memoir}
\pagestyle{empty}
\usepackage{lipsum}   
\newcounter{PN}
\sideparmargin{outer}   
\newcommand\pnum{%
  \stepcounter{PN}\sidepar{\arabic{PN}}}
\begin{document}
\pnum\lipsum[\value{PN}]
\pnum\lipsum[\value{PN}]
\end{document}

Responder2

Talvez usando \marginnotedomarginnotepacote?

\documentclass[12pt]{memoir}
\pagestyle{empty}
\usepackage{marginnote}
\usepackage{lipsum}

\strictpagecheck
\newcounter{PN}
\marginparmargin{outer}

\newcommand\pnum{%
  \stepcounter{PN}\marginnote{\mpjustification\arabic{PN}}}

\begin{document}

\pnum\lipsum[\value{PN}]

\pnum\lipsum[\value{PN}]

\end{document}

insira a descrição da imagem aqui

Se você quiser algo automático (até certo ponto), você pode usar \everypar:

\documentclass[12pt]{memoir}
\usepackage{lipsum}

\newcounter{PN}
\marginparmargin{outer}

\reversemarginpar

\newcommand\countpar{%
    \everypar{\stepcounter{PN}\marginpar{\arabic{PN}}}%
}
\newcommand\mcountpar{%
    \stepcounter{PN}\marginpar{\arabic{PN}}%
}

\pagestyle{empty}

\begin{document}
\countpar
\lipsum[1-2]

\begin{enumerate}
\item \mbox{}\mcountpar\lipsum[2]
\end{enumerate}

\end{document}

\stepcounter{PN}poderia ser alterado para \refstepcounter{PN}se alguém quiser fazer referências cruzadas de parágrafos (graças apasso a passopor apontar isso).

informação relacionada