Thanks! On Fri, Aug 7, 2020 at 3:29 AM G. Branden Robinson < [email protected]> wrote:
> At 2020-08-06T12:05:54-0400, T. Kurt Bond wrote: > > Is there a description of the naming conventions used in the groff ms > > macros for variables, macros, and so forth? An * seems to mean > > internal and ! seems to mean array, for instance. What does @ mean? > > You can find this information in the "Naming Conventions" node of the ms > chapter of our Texinfo manual. > > Here it is in text form. > > (N.B., this material is not in the ms version of the document Larry > recently supplied; it will need to be backported. I'll go over the > Texinfo chapter carefully to bring ms.ms up to date before deleting the > Texinfo chapter as described in my Grand Plan(tm)[1].) > > 4.6.8 Naming Conventions > ------------------------ > > The following conventions are used for names of macros, strings and > number registers. External names available to documents that use the > 'groff -ms' macros contain only uppercase letters and digits. > > Internally the macros are divided into modules; naming conventions > are as follows: > > * Names used only within one module are of the form MODULE'*'NAME. > > * Names used outside the module in which they are defined are of the > form MODULE'@'NAME. > > * Names associated with a particular environment are of the form > ENVIRONMENT':'NAME; these are used only within the 'par' module. > > * NAME does not have a module prefix. > > * Constructed names used to implement arrays are of the form > ARRAY'!'INDEX. > > Thus the groff ms macros reserve the following names: > > * Names containing the characters '*', '@', and ':'. > > * Names containing only uppercase letters and digits. > > Regards, > Branden > > [1] https://lists.gnu.org/archive/html/groff/2020-06/msg00044.html > -- T. Kurt Bond, [email protected], https://tkurtbond.github.io
