-@ifnottex
-@macro reng {word}
-@ref{ (lilypond-internals)\word\, \word\ },
+@c -*-texinfo-*-
+
+@tex
+\input feta20.tex
+\font\fetasixteen=feta16
+\def\fetafont{\fetasixteen}
+\def\fetachar#1{\hbox{\fetasixteen#1}}
+@end tex
+
+@c Reference GLOSsary
+@macro rglos {NAME}
+@ifhtml
+@c ugh: @ref assumes that external refs are split documents too
+@html
+<a style="text-decoration: none; color: inherit;" href="../music-glossary.html#\NAME\">\NAME\</a>@c
+@end html
+@end ifhtml
+@ifnothtml
+\NAME\@c
+@end ifnothtml
+@end macro
+
+@ifnottex
+@macro texisharp {word}
+#
@end macro
@end ifnottex
@iftex
-@macro reng {word}
-\word\
-
+@macro texisharp {word}
+@tex
+\\raise0.5ex\\fetachar\\fetasharp
+@end tex
@end macro
@end iftex
-
@ifnottex
-@macro rgrob {word}
-@ref{ (lilypond-internals)\word\, \word\ },
-
+@macro texiflat {word}
+b
@end macro
@end ifnottex
@iftex
-@macro rgrob {word}
-\word\
-
+@macro texiflat {word}
+@tex
+\\kern0.15em\\fetachar\\fetaflat
+@end tex
@end macro
@end iftex
+@macro arrow{}
+@iftex
+@tex $\\Rightarrow$ @end tex@c
+@end iftex
+@ifhtml
+@html
+→
+@end html
+@end ifhtml
+@ifinfo
+-->
+@end ifinfo
+@end macro
+
-@ifnottex
-@macro rint {word}
-@ref{ (lilypond-internals)\word\, \word\ },
+@c dup?
+@ifhtml
+@macro internalsref{NAME}
+@uref{../lilypond-internals/\NAME\.html,\NAME\}@c
+@c should we do this?
+@cindex @code{\NAME\}
@end macro
-@end ifnottex
-@iftex
-@macro rint {word}
-\word\
+
+@macro inputfileref{DIR,NAME}
+@uref{../../../../\DIR\/out-www/collated-files.html#\NAME\,@file{\DIR\/\NAME\}}@c
@end macro
-@end iftex
+@end ifhtml
+@ifinfo
+@macro internalsref{NAME}
+@inforef{\NAME\,,lilypond/lilypond-internals}@c
+@cindex \NAME\@c
+@end macro
-@iftex
-@macro separate
+@macro inputfileref{DIR,NAME}
+@file{\DIR\/\NAME\}
+@end macro
-@tex
-\\hbox to\\hsize{\\hfill\\smallrm*\\textrm*\\smallrm*\\hfill}
-@end tex
+@end ifinfo
+@iftex
+@macro internalsref{NAME}@c
+@cindex \NAME\@c
+@code{\NAME\}@c
+@end macro
+@macro inputfileref{DIR,NAME}@c
+@file{\DIR\/\NAME\}@c
@end macro
@end iftex
-@c \heartsf was supposed to be filled?
-@c center*** is broken?
+@iftex
+@macro seeinternals{NAME}
+internals document, @internalsref{\NAME\}
+@end macro
+@end iftex
+
+@ifnottex
+@macro seeinternals{NAME}
+@internalsref{\NAME\}
+@end macro
+@end ifnottex
@ifinfo
-@macro separate
-
-@quotation
-@quotation
-@quotation
-@quotation
-@quotation
-@quotation
-***
-@end quotation
-@end quotation
-@end quotation
-@end quotation
-@end quotation
-@end quotation
+@macro usermanref{NAME}
+@ref{\NAME\,,,lilypond/lilypond}@c
@end macro
@end ifinfo
-@ifhtml
-@macro separate
-@html
-<p></p><center>*<font size=+1>*</font>*</center><br>
-@end html
+@ifnotinfo
+@macro usermanref{NAME}
+@ref{\NAME\}@c
@end macro
-@end ifhtml
+@end ifnotinfo
-@c netscape 4.x doesn't handle html chars 4.0 :-(
-@c <p></p><center>♥</center><br>
-@c <p></p><center><font size=-1>*</font><font size=0>*</font><font size=-1>*</font></center><br>
+@macro refbugs
+@noindent
+@subsubheading Bugs
-@ignore
+@end macro
-@c Huh, do outline mode and texinfo really fight eachother?
-@c Outline can only use spaces to indent topic headers
-@c (or bullets, but then topics can't start with `@c').
-@c Texinfo can't have spaces in macro names.
+@macro seealso
+@noindent
+@subsubheading See also
-@macro c_ {word}
-\word\
-@node \word\
-@section \word\
@end macro
-@macro c__ {word}
-\word\
-@menu
-* \word\::
-@end menu
+@macro refcommands
+@noindent
+@subsubheading Predefined commands
-@node \word\
-@subsection \word\
@end macro
-@macro c___ {word}
-\word\
-@node \word\
-@unnumberedsubsubsection \word\
+@macro context{NAME}@c
+@code{\NAME\}@c should use internalsref
+@cindex \NAME\@c
@end macro
-@macro c_ {word}
-@end macro
-@end ignore
+
+@c
+@c ARGGGHHHHH! I want
+@c @cindex @code{@backslash\WHAT\}
+@c how do I do that?
+@c --hwn
+
+@macro refcommand{WHAT}
+@cindex @code{\WHAT\}
+@code{\WHAT\},
+@end macro