For your reference, some items in more details are listed below.
R (and all its relatives), b, B and s
may be preceded by -, in which case, not the starting point
but the ending point of the piece will be placed at the current
position. Except for that, the result will be the same as what
you would get without -. This - is called a
minus command-prefix. You may write like
-R(label) (imagine what would happen by this).
p and m can also be preceded by -, which might
be necessary if you are to place a plus/ minus sign beside an
arrow that was drawn by a command with a minus command-prefix.
When you embed a LaTeX command (see the item for %%
in Section 2),
you can use the internal variables of DiaGraph.
"x and
"y respectively denote the x and y coordinates of
the current position. "& is the shorthand notation for
"x,"y. When you use a length label, enclose it with
double quotations as "$lengthlabel". Similarly,
"*coordinatelabel" and "/coordinatelabel"
respectively denote the x and y coordinates of the point of
the label. "@coordinatelabel" is the shorthand notation
for "*coordinatelabel","/coordinatelabel".
DiaGraph always tries to interpret a double quotation if it
appears in a command line that begins with a single %.
So, it is better not to use a ``real'' double quotation within
a LaTeX command to be embedded; if necessary at all, define
e.g. \dq to denote a double quotation and
use it instead.
There is a rule for the names of labels, but the details
are omitted. Roughly speaking, ``ordinary'' strings that do not
begin with a numeral are OK. In particular, alpha-numeric
characters always form the ``ordinary'' string. A name that
violates the entire rule would be known to you, since it will
cause an error message (syntax error).
There is an upper limit for the number of labels, but in a
normal situation, it won't be exceeded. Similarly for the
length of a label. Should they be exceeded, an error message
would let you know that.
There is an upper limit for the length of a command line, but it
would be long enough. An error message will be issued if it is
exceeded.
As in the preceding three items, the ability for detecting errors in
the source file is high. Rule of thumb: you may do whatever does
not cause an error message, probably.
I admit that there are many things yet to be described, but please
allow me to ask you to regard the way how it works as its function.
Some of its operations might look somewhat strange to some of
the users, but those are the specifications.
(I never mean that there is no bug, but I believe that the
probability is very small.)