Warum scheint es, dass einige interne Lineno-Befehle nie aufgerufen werden?

Warum scheint es, dass einige interne Lineno-Befehle nie aufgerufen werden?

Am Ende vonlineno's kryptische Dokumentationlistet der Autor bestimmte „Befehle für Zauberer“ auf.

Ich versuche, ein spezielles Tag für die erste Zeilennummer zu implementieren, also dachte ich, ich würde wahrscheinlich mit einer Neudefinition beginnen \makeLineNumberLeft. Aus irgendeinem Grund hat dies keine Wirkung. Dasselbe gilt für eine ganze Reihe linenointerner Elemente.

\documentclass{memoir}

\usepackage{lineno}
\usepackage{lipsum}

\begin{document}
    \def\makeLineNumberLeft{}
    \def\theLineNumber{}
    \modulolinenumbers[5]
    \runninglinenumbers*

    \lipsum[1-4]
\end{document}

Wie manipuliere ich linenoden Zahlendruckmechanismus von ?

Bearbeiten:

Genauer gesagt möchte ich Lineüber jeder Instanz der Zeilennummer 5 drucken (vermutlich mit negativen hspaceund graphicx's raisebox). Außerdem linerefmüssen Referenzen genau sein, sodass ich die Nummerierung auf niedriger Ebene nicht hacken kann.

Antwort1

Ich hoffe, das ist das Richtige, was der OP haben möchte …

running numbersDas Makro dient zum Setzen der Zahlen. Die Abfrage der \makeLineNumberRunningkonkreten Zeilennummer, beispielsweise 5, erfolgt einfach mit \ifnum\value{linenumber} = 5und mittels \raiseboxthen.

Der Wert der Zeilennummer, die Erhöhung und der angezeigte Text können geändert werden, siehe die entsprechenden Makros.

\documentclass{memoir}

\usepackage{xcolor}
\usepackage{lineno}
\usepackage{lipsum}

\newlength{\raiseboxoffset}
\setlength{\raiseboxoffset}{0.5\baselineskip}

\newcommand{\linenumberwhereitshouldappear}{5}
\newcommand{\mylinetext}{\bfseries\textcolor{red}{Line~}}

\runninglinenumbers*

% Copied from lineno.sty and slightly edited. 
\def\makeLineNumberRunning{% 
  \hss\linenumberfont
  \ifnum\value{linenumber} = \linenumberwhereitshouldappear %
  \raisebox{\raiseboxoffset}{\mylinetext}%
  \fi
  \LineNumber\hskip\linenumbersep%
}

\begin{document}
\noindent See the important line \ref{mysuperline} please!!!

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam
lobortis facilisis sem. Nullam nec mi et neque pharetra
sollicitudin. Praesent imperdiet mi nec ante. Donec ullamcorper,
felis non sodales commodo, lectus velit ultrices augue, a
dignissim nibh lectus placerat pede. Vivamus nunc nunc, molestie
ut, \linelabel{mysuperline} ultricies vel, semper in, velit. Ut porttitor. Praesent in
sapien. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Duis fringilla tristique neque. Sed interdum libero ut metus.
Pellentesque placerat. Nam rutrum augue a leo. Morbi sed elit sit
amet ante lobortis sollicitudin. Praesent blandit blandit mauris.
Praesent lectus tellus, aliquet aliquam, luctus a, egestas a,
turpis. Mauris lacinia lorem sit amet ipsum. Nunc quis urna dictum
turpis accumsan semper.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam
lobortis facilisis sem. Nullam nec mi et neque pharetra
sollicitudin. Praesent imperdiet mi nec ante. Donec ullamcorper,
felis non sodales commodo, lectus velit ultrices augue, a
dignissim nibh lectus placerat pede. Vivamus nunc nunc, molestie
ut, ultricies vel, semper in, velit. Ut porttitor. Praesent in
sapien. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Duis fringilla tristique neque. Sed interdum libero ut metus.
Pellentesque placerat. Nam rutrum augue a leo. Morbi sed elit sit
amet ante lobortis sollicitudin. Praesent blandit blandit mauris.
Praesent lectus tellus, aliquet aliquam, luctus a, egestas a,
turpis. Mauris lacinia lorem sit amet ipsum. Nunc quis urna dictum
turpis accumsan semper.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam
lobortis facilisis sem. Nullam nec mi et neque pharetra
sollicitudin. Praesent imperdiet mi nec ante. Donec ullamcorper,
felis non sodales commodo, lectus velit ultrices augue, a
dignissim nibh lectus placerat pede. Vivamus nunc nunc, molestie
ut, ultricies vel, semper in, velit. Ut porttitor. Praesent in
sapien. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Duis fringilla tristique neque. Sed interdum libero ut metus.
Pellentesque placerat. Nam rutrum augue a leo. Morbi sed elit sit
amet ante lobortis sollicitudin. Praesent blandit blandit mauris.
Praesent lectus tellus, aliquet aliquam, luctus a, egestas a,
turpis. Mauris lacinia lorem sit amet ipsum. Nunc quis urna dictum
turpis accumsan semper.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam
lobortis facilisis sem. Nullam nec mi et neque pharetra
sollicitudin. Praesent imperdiet mi nec ante. Donec ullamcorper,
felis non sodales commodo, lectus velit ultrices augue, a
dignissim nibh lectus placerat pede. Vivamus nunc nunc, molestie
ut, ultricies vel, semper in, velit. Ut porttitor. Praesent in
sapien. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Duis fringilla tristique neque. Sed interdum libero ut metus.
Pellentesque placerat. Nam rutrum augue a leo. Morbi sed elit sit
amet ante lobortis sollicitudin. Praesent blandit blandit mauris.
Praesent lectus tellus, aliquet aliquam, luctus a, egestas a,
turpis. Mauris lacinia lorem sit amet ipsum. Nunc quis urna dictum
turpis accumsan semper.
\end{document}

Die Referenzierung funktioniert wie erwartet.

Bildbeschreibung hier eingeben

verwandte Informationen