# Twine Wiki

### Functions

twine1:macro

A macro is a piece of code that is inserted into passage text. Macros are used to accomplish many effects, such as altering the game's state, displaying different text depending on the game's state, and altering the manner in which text is displayed.

## List of built-in macros

These are only the built-in macros in Twine - other macros may be installed or written on a story-by-story basis.

The following macros control variables and text in the story, or use them to alter the displayed passage text:

The following macros display special text, such as the contents of variables, or the text of another passage. They can provide powerful means of expression in a story.

The following macro creates special kind of links:

The following macro controls how its contained text is displayed, and can be useful when combined with other macros:

The following macros create form input elements, and can be used to get input from the player:

The following macros are not as useful as they were in previous versions of Twine, but remain for backwards-compatibility:

## Pseudo-macros

In addition to actual Javascript-coded macros, the <<display>> macro has a shorthand form which allows passages to behave as if they were macros - their contained code can be called and included from any other passage using a syntax similar to actual macros.