This is an old revision of the document!
It's possible to write your own macros for use in your stories. Doing so will require knowledge of both Javadcript and the Twine engine.
Here's an example passage that creates a macro named «hello»
that, when invoked in another passage, displays an alert that greets the reader.
:: Hello macro [script] macros['hello'] = { handler: function() { alert('Hi, reader!'); } } :: Start <<hello>>
If you're curious how a built-in macro works, browsing the source code repository may be helpful, too.