Estoy luchando con este truco realmente simple (vainilla PlainTeX), que no puedo descifrar...
¿Cómo se dibuja una línea vertical (es decir, perpendicular al horizonte) que va desde la parte superior (o el margen superior o lo más alto posible) de la página actual hasta la posición actual (específicamente la posición del texto en el momento en que se resuelve la macro)? ¿Se llama este problema)?
PD: Puede que no esté claro, pero la posición actual incluye tanto la posición horizontal como la vertical. Es decir.
Here I \myruler am...
Another paragraph...
produciría algo como
|
|
|
|
|
Here I | am...
Another paragraph...
Respuesta1
Una posibilidad es utilizar la \pagetotal
dimensión que contiene la altura natural acumulada de la página actual:
\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
Respuesta2
Basándose en la respuesta de Gonzalo, tal vez algo como
\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