Lineno цифры слева арабские справа римские, та же строка

Lineno цифры слева арабские справа римские, та же строка

Я могу сделать так, чтобы строки были пронумерованы римскими буквами (как это объясняется в документации), но мне хочется, чтобы строки были пронумерованы с обеих сторон текста, слева и справа, но я бы хотел, чтобы слева были арабские буквы, а справа — римские. Можно ли это как-то сделать?

Я использую класс документа book.

решение1

Пример

Неверный ответ, потому что это полный хак, поэтому просто заглушка, потому что должно быть более элегантное решение.

Определите команду левого числа (например), чтобы напечатать как левое, так и правое число.

Создайте копию lineno.sty, вызовите ее lineno2.styи поместите туда, где TeX сможет ее найти (например, в папку текущего проекта).

После строки 1523 ( % . . . here are the hooks:) добавить:

\def\LineNumberL{\arabic{linenumber}}%
\def\LineNumberR{\roman{linenumber}}%

Измените следующую строку, defтак \makeLineNumberLeftчтобы она объединяла определения Left и Right вместе (более или менее), то есть измените ее с

\def\makeLineNumberLeft{% 
  \hss\linenumberfont\LineNumber\hskip\linenumbersep}

к

\def\makeLineNumberLeft{% 
  \makebox[-2em]{\linenumberfont\LineNumberL}\makebox[3em]{}%left side
\linenumberfont\hskip\columnwidth
  \hb@xt@\linenumberwidth{\hss\LineNumberR}\hss%right side
  }%

В основном файле TeX \usepackage{lineno2}.

МВЭ

\documentclass{article}
\usepackage{lineno2}
\usepackage{lipsum}
\begin{document}
\linenumbers
\lipsum[1-15]
\end{document}

решение2

Следующийhttps://tex.stackexchange.com/a/199593, добавьте это в преамбулу:

\makeatletter
\def\makeLineNumberLeft{%
  \linenumberfont\llap{\hb@xt@\linenumberwidth{\arabic{linenumber}\hss}\hskip\linenumbersep}% left line number
  \hskip\columnwidth% skip over column of text
  \rlap{\hskip\linenumbersep\hb@xt@\linenumberwidth{\hss\roman{linenumber}}}\hss}% right line number
\leftlinenumbers% Re-issue [left] option
\makeatother

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