1simple_macro.texi(,2)
2simple_macro.texi(,3) @node Top
3simple_macro.texi(,4) @top Basic macro calls
4simple_macro.texi(,5)
5simple_macro.texi(,6) Define a  simple macro
6simple_macro.texi(,7) @example
7simple_macro.texi(,8) @@macro macro1 @{arg1, arg2 @}
8simple_macro.texi(,9) result: @@emph@{\arg1\@} protected \\ -> \\arg1\\  @@emp@{\arg2\@}
9simple_macro.texi(,10) @@end macro
10simple_macro.texi(,11) @end example
11simple_macro.texi(,12)
12simple_macro.texi(,13) before macro simple_macro.texi(,13) @macro macro1 { arg1 , arg2 }
13simple_macro.texi(,14) result: @emph{\arg1\} protected \\ -> \\arg1\\ @emph{\arg2\}
14simple_macro.texi(,15) @end macro after end macro
15simple_macro.texi(,16)
16simple_macro.texi(,17) Calling (normal)
17simple_macro.texi(,18) @example
18simple_macro.texi(,19) the @@macro1 @{ @@samp@{f\irst arg@}, second arg @} after macro
19simple_macro.texi(,20) @end example
20simple_macro.texi(,21) ==================================
21simple_macro.texi(,22)
22simple_macro.texi(macro1,23) the simple_macro.texi(macro1,23) result: @emph{@samp{first arg}} protected \ -> \arg1\ @emph{second arg } after macro
23simple_macro.texi(,24)
24simple_macro.texi(,25) -----------------------------------
25simple_macro.texi(,26)
26simple_macro.texi(,27) the result: @emph{@samp{first arg}} protected \ -> \arg1\ @emph{second arg } after macro
27simple_macro.texi(,28)
28simple_macro.texi(,29) ====================================
29simple_macro.texi(,30)
30simple_macro.texi(,31) Calling (one arg)
31simple_macro.texi(,32) @example
32simple_macro.texi(,33) @@macro1 @{ @@samp@{f\irst arg@}@}
33simple_macro.texi(,34) @end example
34simple_macro.texi(,35) ==================================
35simple_macro.texi(,36)
36simple_macro.texi(macro1,37) result: @emph{@samp{first arg}} protected \ -> \arg1\ @emph{}
37simple_macro.texi(,38)
38simple_macro.texi(,39) -----------------------------------
39simple_macro.texi(,40)
40simple_macro.texi(,41) result: @emph{@samp{first arg}} protected \ -> \arg1\ @emph{}
41simple_macro.texi(,42)
42simple_macro.texi(,43) ====================================
43simple_macro.texi(,44)
44simple_macro.texi(,45) Calling (no args)
45simple_macro.texi(,46) @example
46simple_macro.texi(,47) @@macro1 @@samp@{f\irst arg@}, second arg
47simple_macro.texi(,48) @end example
48simple_macro.texi(,49) ==================================
49simple_macro.texi(,50)
50simple_macro.texi(macro1,51) result: @emph{} protected \ -> \arg1\ @emph{} @samp{f\irst arg}, second arg
51simple_macro.texi(,52)
52simple_macro.texi(,53) -----------------------------------
53simple_macro.texi(,54)
54simple_macro.texi(,55) result: @emph{} protected \ -> \arg1\ @emph{} @samp{f\irst arg}, second arg
55simple_macro.texi(,56)
56simple_macro.texi(,57) ====================================
57simple_macro.texi(,58)
58simple_macro.texi(,74)
59simple_macro.texi(,75) define a macro with one arg
60simple_macro.texi(,76) @example
61simple_macro.texi(,77) @@macro macro2 @{ arg @}
62simple_macro.texi(,78) we get \arg\ and another \arg\
63simple_macro.texi(,79) and a last one on another line \arg\
64simple_macro.texi(,80)
65simple_macro.texi(,81) and a last in another paragraph
66simple_macro.texi(,82) @@end macro
67simple_macro.texi(,83) @end example
68simple_macro.texi(,84)
69simple_macro.texi(,85) @macro macro2 { arg }
70simple_macro.texi(,86) we get \arg\ and another \arg\
71simple_macro.texi(,87) and another one on another line \arg\
72simple_macro.texi(,88)
73simple_macro.texi(,89) and a last in another paragraph
74simple_macro.texi(,90) @end macro
75simple_macro.texi(,91)
76simple_macro.texi(,92) Calling
77simple_macro.texi(,93) @example
78simple_macro.texi(,94) @@macro2 @{ arg, comma \, @}
79simple_macro.texi(,95) @end example
80simple_macro.texi(,96) ==================================
81simple_macro.texi(,97)
82simple_macro.texi(macro2,98) we get arg, comma ,  and another arg, comma ,
83simple_macro.texi(macro2,98) and another one on another line arg, comma ,
84simple_macro.texi(macro2,98)
85simple_macro.texi(macro2,98) and a last in another paragraph
86simple_macro.texi(,99)
87simple_macro.texi(,100) -----------------------------------
88simple_macro.texi(,101)
89simple_macro.texi(,102) we get arg, comma , and another arg, comma ,
90simple_macro.texi(,103) and another one another line arg, comma ,
91simple_macro.texi(,104)
92simple_macro.texi(,105) and a last in another paragraph
93simple_macro.texi(,106)
94simple_macro.texi(,107) ==================================
95simple_macro.texi(,108)
96simple_macro.texi(,109) Calling
97simple_macro.texi(,110) @example
98simple_macro.texi(,111) @@macro2  arg,  comma \,
99simple_macro.texi(,112) @end example
100simple_macro.texi(,113) ==================================
101simple_macro.texi(,114)
102simple_macro.texi(macro2,115) we get   arg,  comma \, and another   arg,  comma \,
103simple_macro.texi(macro2,115) and another one on another line   arg,  comma \,
104simple_macro.texi(macro2,115)
105simple_macro.texi(macro2,115) and a last in another paragraph
106simple_macro.texi(,116)
107simple_macro.texi(,117) -----------------------------------
108simple_macro.texi(,118)
109simple_macro.texi(,119) we get arg, comma \, and another arg, comma \,
110simple_macro.texi(,120) and another one on another line arg, comma \,
111simple_macro.texi(,121)
112simple_macro.texi(,122) and a last in another paragraph
113simple_macro.texi(,123)
114simple_macro.texi(,124) ==================================
115simple_macro.texi(,125)
116simple_macro.texi(,126)
117simple_macro.texi(,127) @macro ab
118simple_macro.texi(,128) a
119simple_macro.texi(,129)
120simple_macro.texi(,130) b
121simple_macro.texi(,131) @end macro
122simple_macro.texi(,132)
123simple_macro.texi(,133) now @@set comma ,
124simple_macro.texi(,134) @set comma ,
125simple_macro.texi(,135)
126simple_macro.texi(,136) @@set flagab @@ab
127simple_macro.texi(,137) @set flagab @ab
128simple_macro.texi(,138)
129simple_macro.texi(,139) the values:
130simple_macro.texi(,140)
131simple_macro.texi(,141) ======================================
132simple_macro.texi(,142)
133simple_macro.texi(ab,143) flagab: simple_macro.texi(ab,143) a
134simple_macro.texi(ab,143)
135simple_macro.texi(ab,143) b
136simple_macro.texi(,144)
137simple_macro.texi(,145) --------------------------------------
138simple_macro.texi(,146)
139simple_macro.texi(,147) makeinfo result (the macro in set is expanded and all the resulting lines
140simple_macro.texi(,148) are replaced):
141simple_macro.texi(,149)
142simple_macro.texi(,150) flagab: a
143simple_macro.texi(,151)
144simple_macro.texi(,152) b
145simple_macro.texi(,153)
146simple_macro.texi(,154) ======================================
147simple_macro.texi(,155)
148simple_macro.texi(,156) comma: ,
149simple_macro.texi(,157)
150simple_macro.texi(,158) Calling macro1 with value
151simple_macro.texi(,159) @example
152simple_macro.texi(,160) @@macro1 @{ arg1 @@value@{comma@} arg2 @}
153simple_macro.texi(,161) @end example
154simple_macro.texi(,162) =======================================
155simple_macro.texi(,163)
156simple_macro.texi(macro1,164) result: @emph{arg1 , arg2 } protected \ -> \arg1\ @emph{}
157simple_macro.texi(,165)
158simple_macro.texi(,166) ---------------------------------------
159simple_macro.texi(,167)
160simple_macro.texi(,168) makeinfo result (the comma don't separate args ; the value is expanded after
161simple_macro.texi(,169) arguments parsing):
162simple_macro.texi(,170)
163simple_macro.texi(,171) result: @emph{arg1 , arg2 } protected \ -> \arg1\ @emph{}
164simple_macro.texi(,172)
165simple_macro.texi(,173) =======================================
166simple_macro.texi(,174)
167simple_macro.texi(,175) In verbatim
168simple_macro.texi(,176) @verbatim
169simple_macro.texi(,177) comma: @value{comma}
170simple_macro.texi(,178) @macro1{ bidule, truc}
171simple_macro.texi(,179) @end verbatim
172simple_macro.texi(,180)
173simple_macro.texi(,181) @set argument arg
174simple_macro.texi(,182) @set bodyarg \arg\
175simple_macro.texi(,183)
176simple_macro.texi(,184) Define macro
177simple_macro.texi(,185) @example
178simple_macro.texi(,186) @@macro testvaluebody @{ arg @}
179simple_macro.texi(,187) result: @@emph@{\@@value@{bodyarg@}\  @}
180simple_macro.texi(,188) @@end macro
181simple_macro.texi(,189) @end example
182simple_macro.texi(,190)
183simple_macro.texi(,191) @macro testvaluebody { arg }
184simple_macro.texi(,192) result: @emph{\@value{bodyarg}\  }
185simple_macro.texi(,193) @end macro
186simple_macro.texi(,194)
187simple_macro.texi(,195) ==================================
188simple_macro.texi(,196)
189simple_macro.texi(testvaluebody,197) result: @emph{\\arg\   }
190simple_macro.texi(,198)
191simple_macro.texi(,199) ----------------------------------
192simple_macro.texi(,200)
193simple_macro.texi(,201) makeinfo result (according to error message, the value isn't expanded
194simple_macro.texi(,202) when the body is expanded; it is kept, but the second \ isn't):
195simple_macro.texi(,203)
196simple_macro.texi(,204) result: @emph{\\arg\  }
197simple_macro.texi(,205)
198simple_macro.texi(,206) ==================================
199simple_macro.texi(,207)
200simple_macro.texi(,208) Define macro
201simple_macro.texi(,209) @example
202simple_macro.texi(,210) @@macro testvalue @{ arg , the@@value@{argument@} @}
203simple_macro.texi(,211) result: @@emph@{\arg\@} the \the\ thearg \thearg\ with value \the@@value@{argument@}\
204simple_macro.texi(,212) @@end macro
205simple_macro.texi(,213) @end example
206simple_macro.texi(,214)
207simple_macro.texi(,215) @macro testvalue { arg , the@value{argument} }
208simple_macro.texi(,216) result: @emph{\arg\} the \the\ thearg \thearg\ with value \the@value{argument}\
209simple_macro.texi(,217) @end macro
210simple_macro.texi(,218)
211simple_macro.texi(,219) ==================================
212simple_macro.texi(,220)
213simple_macro.texi(testvalue,221) result: @emph{macro_arg1} the \the thearg \thearg with value \thearg
214simple_macro.texi(,222)
215simple_macro.texi(,223) ----------------------------------
216simple_macro.texi(,224)
217simple_macro.texi(,225) makeinfo (breaks) result:
218simple_macro.texi(,226)
219simple_macro.texi(,227) result: @emph{macro_arg1} the \the thearg \thearg with value \thearg
220simple_macro.texi(,228)
221simple_macro.texi(,229) ==================================
222simple_macro.texi(,230)
223simple_macro.texi(,231) Define macro without arg
224simple_macro.texi(,232) @example
225simple_macro.texi(,233) @@macro test1
226simple_macro.texi(,234) test1
227simple_macro.texi(,235) @@end macro
228simple_macro.texi(,236) @end example
229simple_macro.texi(,237)
230simple_macro.texi(,238) @macro test1
231simple_macro.texi(,239) test1
232simple_macro.texi(,240) @end macro
233simple_macro.texi(,241)
234simple_macro.texi(,242) Call with @{@}:
235simple_macro.texi(,243)
236simple_macro.texi(,244) ==================================
237simple_macro.texi(,245)
238simple_macro.texi(test1,246) test1 abc
239simple_macro.texi(,247)
240simple_macro.texi(,248) ----------------------------------
241simple_macro.texi(,249)
242simple_macro.texi(,250) test1 abc
243simple_macro.texi(,251)
244simple_macro.texi(,252) ==================================
245simple_macro.texi(,253)
246simple_macro.texi(,254) Call with something on the line
247simple_macro.texi(,255)
248simple_macro.texi(,256) ==================================
249simple_macro.texi(,257)
250simple_macro.texi(test1,258) test1 abc
251simple_macro.texi(,259)
252simple_macro.texi(,260) ----------------------------------
253simple_macro.texi(,261)
254simple_macro.texi(,262) test1 abc
255simple_macro.texi(,263)
256simple_macro.texi(,264) ==================================
257simple_macro.texi(,265)
258simple_macro.texi(,266) An empty set value
259simple_macro.texi(,267)
260simple_macro.texi(,268) @set myspace
261simple_macro.texi(,269)
262simple_macro.texi(,270) 1  1
263simple_macro.texi(,271)
264simple_macro.texi(,272) @contents
265simple_macro.texi(,273) @bye
266