memoir を使用する場合、段落に番号を付けるにはどうすればよいですか?

memoir を使用する場合、段落に番号を付けるにはどうすればよいですか?

段落番号を実装しようとしていますmemoir。番号は

  1. 外側の余白に、
  2. テキストブロックと面一になり、
  3. 段落の最初の行と垂直に揃えます。

Stack Exchangeで見つけたさまざまなコードを組み合わせて、

\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}

試行 A と試行 B はどちらも近い値です。ただし、試行 A では数値が高すぎるため、前の段落の最後の行と現在の段落の最初の行の間に配置されています。一方、試行 B では数値が低すぎるため、現在の段落の 1 行目と 2 行目の間に配置されています。

ご提案があればぜひお願いします。

編集: 回答に対する私の返答

Mike Renfro と Gonzalo Medina の両氏からの提案は役に立ちました (そして、そのようにフラグを立てました)。実際のドキュメントでは、章のタイトルのスタイルを変更しましたが、何らかの理由で、各章の最初のページで段落番号がずれてしまいます。(カスタム章スタイルを適用しなければ、この問題は発生しません。) 最終的に、この問題がないため、Mike の回答を選択しました。お二人 (および lockstep) に感謝します。また、コマンドについては知りませんでした。\stepcounterその方がエレガントです。

答え1

ゴンザロの回答を参考に、memoir組み込みの欄外注釈機能(memoirマニュアル):

\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}

答え2

おそらく\marginnotemarginnoteパッケージ?

\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}

ここに画像の説明を入力してください

ある程度まで自動化したい場合は、以下を使用できます\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}\refstepcounter{PN}段落を相互参照したい場合は、次のように変更することができます(足並みを揃えるこれを指摘していただきありがとうございます。

関連情報