Skip to content

troff:ono.tmac:289: warning: register '.meta' not defined [-w reg] #5

Description

@g-branden-robinson
$ nl ono.tmac | sed -n 267,302p
   267  .de ``
   268  '       \" Begin block
   269  '       ie !\\n(`` \{\
   270  .               br
   271  '               ie \\$2>1 'nr `` \\$2
   272  '               el        'nr `` 6
   273  '               in +\\n(``n
   274  '               de ` >>
   275  '                       in -\\n(``
   276  '                       ft \\n(.f
   277  '                       if \\n(.u 'fi
   278  '                       hy
   279  '                       lg 1
   280  '                       do hy \\n[.hy]
   281  '                       do lg \\n[.lg]
   282  '                       do kern \\n[.kern]
   283  .               >>
   284  '               nf
   285  '               nh
   286  '               lg 0
   287  '               ft CW
   288  '               do kern 0
   289  '               do if \n[.meta]=1 \X'meta: begin code \\$1'
   290  '               tr `\`'\*'^\*^~\*~-\*-
   291  '       \}
   292  '
   293  '       \" End block
   294  '       el \{\
   295  '               tr ``''^^~~--
   296  '               do if \n[.meta]=1 \X'meta: end code'
   297  '               `
   298  '               rm `
   299  '               rr ``
   300  .               br
   301  '       \}
   302  ..

It looks like you forgot to escape the interpolations of the .meta register within the macro definitions; they are being evaluated at package load time.

My suggestion:

. do if \\n[.meta]=1 \X'meta: begin code \\$1'
. do if \\n[.meta]=1 \X'meta: end code'

Also, I would not spray and pray with the no-break control character as seen above. The GNU troff manual cautions against the practice, and line 270 suggests that prayer can fail. I suggest using it only with the handful of requests the no-break control character can effect. A future version of groff might issue a warning in category style about it; see comments 4 and 28 to Savannah #62776. You might of course wait until the style warning is implemented, and then use it to find the occurrences for you, obviating a tedious manual review.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions