Ich kämpfe mit diesem wirklich einfachen Trick (Standard-PlainTeX), den ich nicht knacken kann ...
Wie zeichnet man eine vertikale (also senkrecht zum Horizont) Linie, die vom oberen Rand (oder so weit oben wie möglich) der aktuellen Seite zur aktuellen Position (insbesondere der Position des Textes zum Zeitpunkt des Aufrufs des Makros, das dieses Problem löst) führt?
PS: Es ist vielleicht unklar, aber mit der aktuellen Position ist sowohl die horizontale als auch die vertikale Position gemeint. D. h.
Here I \myruler am...
Another paragraph...
würde etwas produzieren wie
|
|
|
|
|
Here I | am...
Another paragraph...
Antwort1
Eine Möglichkeit besteht darin, die Dimension zu verwenden \pagetotal
, die die kumulierte natürliche Höhe der aktuellen Seite enthält:
\newdimen\ruleht
\def\myrule{\par
\ruleht=\pagetotal
\vskip-\the\ruleht\llap{\vrule height\the\ruleht}
}
\def\Text{%some filler text for the example
text text text text text text text text text text text text text text text text
text text text text text text text text text text text text text text text text
text text text text text text text text text text text text text text text text
text text text text text text text text text text text text text text text text
text text text text text text text text text\par}
\Text\Text\myrule
\bye
Antwort2
Aufbauend auf Gonzalos Antwort, vielleicht so etwas wie
\hsize=24pc
\def\lipsum{Lorem ipsum dolor sit amet. }
\def\llipsum{\lipsum\lipsum}
\def\lipsumV{\llipsum\llipsum\lipsum}
\def\pgtotrule{\dimen0=\pagetotal
\advance\dimen0 by\ht\strutbox
\advance\dimen0 by\baselineskip
\smash{\vrule height\dimen0 depth\dp\strutbox}}
\lipsumV
\lipsumV
\llipsum \lipsum \pgtotrule \lipsumV
\bye