Next: , Up: Command List   [Contents][Index]

A.1 @-Command Syntax

The character ‘@’ is used to start all Texinfo commands. (It has the same meaning that ‘\’ has in plain TeX.) Texinfo has four types of @-command:

1. Non-alphabetic commands.

These commands consist of an @ followed by a punctuation mark or other character that is not part of the Latin alphabet. Non-alphabetic commands are almost always part of the text within a paragraph. The non-alphabetic commands include @@, @{, @}, @., @SPACE, most of the accent commands, and many more.

2. Alphabetic commands that do not require arguments.

These commands start with @ followed by a word followed by a left and right- brace. These commands insert special symbols in the document; they do not take arguments. Some examples: @dots{} ⇒ ‘’, @equiv{} ⇒ ‘’, @TeX{} ⇒ ‘TeX’, and @bullet{} ⇒ ‘’.

3. Alphabetic commands that require arguments within braces.

These commands start with @ followed by a letter or a word, followed by an argument within braces. For example, the command @dfn indicates the introductory or defining use of a term; it is used as follows: ‘In Texinfo, @@-commands are @dfn{mark-up} commands.

4. Alphabetic commands that occupy an entire line.

These commands occupy an entire line. The line starts with @, followed by the name of the command (a word); for example, @center or @cindex. If no argument is needed, the word is followed by the end of the line. If there is an argument, it is separated from the command name by a space. Braces are not used.

Whitespace following an @-command name are optional and (usually) ignored if present. The exceptions are contexts whee whitespace is significant, e.g., an @example environment.

Thus, the alphabetic commands fall into classes that have different argument syntaxes. You cannot tell to which class a command belongs by the appearance of its name, but you can tell by the command’s meaning: if the command stands for a glyph, it is in class 2 and does not require an argument; if it makes sense to use the command among other text as part of a paragraph, the command is in class 3 and must be followed by an argument in braces; otherwise, it is in class 4 and uses the rest of the line as its argument.

The purpose of having a different syntax for commands of classes 3 and 4 is to make Texinfo files easier to read, and also to help the GNU Emacs paragraph and filling commands work properly. There is only one exception to this rule: the command @refill, which is always used at the end of a paragraph immediately following the final period or other punctuation character. @refill takes no argument and does not require braces. @refill never confuses the Emacs paragraph commands because it cannot appear at the beginning of a line. It is also no longer needed, since all formatters now refill paragraphs automatically.

Next: , Up: Command List   [Contents][Index]