5.5.4.2 ...arg="..." attributes

When macro arguments are simple strings, they can be specified as <al-expand> attributes by appending arg to the argument name. So, to set an argument called title, you could add an titlearg attribute to the <al-expand> tag.

>>> import albatross
>>> ctx = albatross.SimpleContext('.')
>>> albatross.Template(ctx, '<magic>', '''
... <al-macro name="pagelayout">
...  <title><al-usearg name="title"></title>
... </al-macro>
... ''').to_html(ctx)
>>> albatross.Template(ctx, '<magic>', '''
... <al-expand name="pagelayout" titlearg="Lumberjack" />''').to_html(ctx)
>>> ctx.flush_content()
<title>Lumberjack</title>

If the macro argument is longer or needs to contain markup, the <al-setarg> (5.5.5) tag should be used instead.