ページの上端から現在の位置までの垂直線

ページの上端から現在の位置までの垂直線

私はこの非常に単純な(バニラ plainTeX)トリックに苦労していますが、解読できません...

現在のページの最上部 (または上余白、または可能な限り最上部) から現在の位置 (具体的には、この問題を解決するマクロが呼び出された時点でのテキストの位置) まで垂直 (つまり、地平線に対して垂直) な線を描くにはどうすればよいでしょうか。

PS 不明瞭かもしれませんが、現在の位置は水平位置と垂直位置の両方を含みます。つまり、

Here I \myruler am...

Another paragraph...

次のようなものを生成します

       |
       |
       |
       |
       |
Here I | am...

Another paragraph...

答え1

\pagetotal1 つの可能性は、現在のページの累積された自然な高さを保持するディメンションを使用することです。

\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

ここに画像の説明を入力してください

答え2

ゴンザロの答えを踏まえて、例えば

\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

ここに画像の説明を入力してください

関連情報