Each bad character between the curly braces (including spaces) will produce
the following error and cause that character to be ignored:
configfile: line num: Invalid macro/class character badchar
In general, your macro names should always begin with an uppercase character.
Macro names that begin with lowercase characters are reserved for internal use by
sendmail.
* Beginning with V8.7, both single- and multicharacter names can be used.
?? As an artifact of this scheme, a single character surrounded in curly braces is treated as though the curly
braces were absent:
DXtext ?†? a single-character name
D{X}text ?†? the same beginning with V8.7
This is the Title of the Book, eMatter Edition
Copyright ?© 2007 O??™Reilly & Associates, Inc. All rights reserved.
21.5 Macro Expansion: $ and $& | 791
If the left curly brace is missing but the right is present, the macro name becomes the
first letter following the D and the rest becomes the text:
Dname}text ?†? sets $n to ame}text
If the right curly brace is missing but the left is present, the following error is printed,
and the macro is not defined:
configfile: line num: Unbalanced { on nametext
For V8.10 and later, the maximum length of a macro name is hardcoded at 25 characters.*
This cannot be changed with compile-time definitions. If you declare a macro
name that (not counting the curly braces) is longer than 25 characters, the following
error will be printed and the excess characters will become the value of an undefined
name:
configfile: line num: Macro/class name ({AReallyVeryLongMacroNameHere}) too long (25
chars max)
Because of the way multicharacter names are encoded into a single byte, there is a
fixed limit on the number of multicharacter macro names that you can declare.
Pages:
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390