Добавление начальной строки с правой стороны документа для каждой строки

Добавление начальной строки с правой стороны документа для каждой строки

Я создаю ряд стандартных рабочих процедур в LaTeX, которые требуют инициал рядом с каждым элементом списка, чтобы сказать, что он завершен. Есть ли способ автоматически добавлять выровненную по правому краю начальную строку справа от текста или во втором столбце для каждого элемента?

\documentclass{report}
\begin{document}
 Please initial each line item of the procedure.
\begin{itemize}
   \item First item needing an initial line next to it..
   \item Second item needing an initial line next to it.
   \item Another lines with initial.
\end{itemize}

\begin{enumerate}
  \item Some text
  \item Some more text
  \item blah, blah.
\end{enumerate}

\end{document}

решение1

Строка на полях:

\documentclass{article}
\usepackage[heightadjust]{marginnote}
\usepackage{lipsum}    
\let\Item\item
\renewcommand\item{\marginnote{\hrulefill}[1.6\baselineskip]\Item}
\begin{document}        
    Please initial each line item of the procedure.

    \begin{itemize}
        \item First item needing an initial line next to it.
        \item \sloppy\lipsum[2]
        \item Another lines with initial.
    \end{itemize}

    \begin{enumerate}
        \item Some text
        \item Some more text
        \item blah, blah.
    \end{enumerate}

\end{document}

введите описание изображения здесь

решение2

Ниже указано initialitemize, что вставляет обычную \itemплюс подчеркивание (из 3em, на базовой линии) в правом поле (на первой строке каждого \item). Расстояние между инициалом и полем составляет ~, но его можно изменить по мере необходимости.

введите описание изображения здесь

\documentclass{article}

\usepackage{lipsum}

\newenvironment{initialitemize}
  {\begin{itemize}
    \let\olditem\item
    \renewcommand{\item}{%
      \olditem\leavevmode
      \makebox[0pt][l]{\makebox[\linewidth][r]{\makebox[0pt][l]{~\rule{3em}{.4pt}}}}%
      \ignorespaces}}
  {\end{itemize}}

\begin{document}

Please initial each line item of the procedure.

\begin{initialitemize}
  \item First item needing an initial line next to it.
  \item \sloppy\lipsum[2]
  \item Another lines with initial.
\end{initialitemize}

\begin{enumerate}
  \item Some text
  \item Some more text
  \item blah, blah.
\end{enumerate}

\end{document}

Для версии можно сделать копию enumerate.

Связанный контент