r7rs-texinfo-macros.texinfo (3575B)
1 @c Like @dfn, but correctly produces <dfn>...</dfn> in HTML 2 @c output. (Why does @dfn produce <em>...</em>?) 3 @macro define {text} 4 @dfn{\text\} 5 @end macro 6 7 @ifhtml 8 @unmacro define 9 @macro define {text} 10 @inlineraw{html, <dfn>\text\</dfn>} 11 @end macro 12 @end ifhtml 13 14 @c Produce a header for a Rationale section. We may want to adjust 15 @c the heading level of this. 16 @macro rationale 17 @subheading Rationale: 18 @end macro 19 20 @c --- Report names. 21 22 @macro rsevenrs 23 R@sup{7}RS 24 @end macro 25 26 @macro rfivers 27 R@sup{5}RS 28 @end macro 29 30 @macro rsixrs 31 R@sup{6}RS 32 @end macro 33 34 @c --- Subscripted variables 35 36 @macro vari {name} 37 @var{\name\@sub{1}} 38 @end macro 39 40 @macro varii {name} 41 @var{\name\@sub{2}} 42 @end macro 43 44 @macro variii {name} 45 @var{\name\@sub{3}} 46 @end macro 47 48 @macro variv {name} 49 @var{\name\@sub{4}} 50 @end macro 51 52 @c --- Syntactic variables 53 54 @c These will be presented in angle brackets, which have to be 55 @c produced differently in TeX output. Because Texinfo has no 56 @c way to set the font family, we can't reliably display these 57 @c in a Roman face (as they're displayed in the LaTeX R7RS). 58 59 @c By default, insert Unicode brackets. 60 @macro svar {name} 61 @U{27e8}\name\@U{27e9} 62 @end macro 63 64 @c For TeX output, use raw math-mode snippets. 65 @c Using @math{...} produces extra space around *name*, for some 66 @c reason. 67 @iftex 68 @unmacro svar 69 @macro svar {name} 70 @inlineraw{tex, $\\langle$\name\$\\rangle$} 71 @end macro 72 @end iftex 73 74 @c For use in code examples where the default font is not Roman. 75 @macro rsvar {name} 76 @r{@svar{\name\}} 77 @end macro 78 79 @c --- Greek characters. 80 81 @c Apparently lambda, iota, etc. are already in the Texinfo macro 82 @c namespace (but unusable!) and can't be redefined. 83 84 @c Insert a lower-case lambda. 85 @macro theultimate 86 @U{03bb} 87 @end macro 88 89 @iftex 90 @unmacro theultimate 91 @macro theultimate {} 92 @math{\\lambda} 93 @end macro 94 @end iftex 95 96 @c Insert a lower-case pi. 97 @macro greekpi 98 @U{03c0} 99 @end macro 100 101 @iftex 102 @unmacro greekpi 103 @macro greekpi {} 104 @math{\\pi} 105 @end macro 106 @end iftex 107 108 @c Insert a lower-case iota. 109 @macro greekiota {} 110 @U{03b9} 111 @end macro 112 113 @iftex 114 @unmacro greekiota 115 @macro greekiota {} 116 @math{\\iota} 117 @end macro 118 @end iftex 119 120 @c Insert a lower-case theta. 121 @macro greektheta 122 @U{03b8} 123 @end macro 124 125 @iftex 126 @unmacro greektheta 127 @macro greektheta {} 128 @math{\\theta} 129 @end macro 130 @end iftex 131 132 @c Insert a capital sigma. 133 @macro greekcapitalsigma 134 @U{03a3} 135 @end macro 136 137 @iftex 138 @unmacro greekcapitalsigma 139 @macro greekcapitalsigma {} 140 @math{\\Sigma} 141 @end macro 142 @end iftex 143 144 @c Insert a lower-case sigma. 145 @macro greeksmallsigma 146 @U{03c3} 147 @end macro 148 149 @iftex 150 @unmacro greeksmallsigma 151 @macro greeksmallsigma {} 152 @math{\\sigma} 153 @end macro 154 @end iftex 155 156 @c Insert a lower-case final sigma. 157 @macro greekfinalsigma 158 @U{03c2} 159 @end macro 160 161 @iftex 162 @unmacro greekfinalsigma 163 @macro greekfinalsigma {} 164 @math{\\varsigma} 165 @end macro 166 @end iftex 167 168 @c --- Other non-ASCII characters 169 170 @c @dotless doesn't produce Unicode output. 171 @c Taylan, this is for you. 172 @macro nodoti 173 @U{0131} 174 @end macro 175 176 @iftex 177 @unmacro nodoti 178 @macro nodoti 179 @dotless{i} 180 @end macro 181 @end iftex 182 183 @c --- EBNF macros 184 185 @c Zero or more (Kleene star). 186 @macro arbno {obj} 187 \obj\@sup{*} 188 @end macro 189 190 @c One or more. 191 @macro atleastone {obj} 192 \obj\@sup{+} 193 @end macro 194 195 @c Brackets for things that aren't really grammar elements. 196 @macro pseudoprod {text} 197 @U{27e8}\text\@U{27e9} 198 @end macro 199 200 @iftex 201 @unmacro pseudoprod 202 @macro pseudoprod {text} 203 @inlineraw{tex, $\\langle$\text\$\\rangle$} 204 @end macro 205 @end iftex 206 207 @c --- Indexing 208 209 @c Add a sharped token to the function index under its the key 210 @c of the first character after #. 211 @macro sharpindex {token} 212 @findex @sortas{\token\} #\token\ 213 @end macro