add
Adds two or more integers together.
Example: add[2|5|7]
alias
Creates a macro alias.
Example: alias[s|section]
Parameters
Parameter | Description |
---|---|
0 | The name of the alias. |
1 | The name of an existing macro. |
and
Conditional and
operator, to be used with the condition
macro.
Example: ?[and[true|false]|This is never displayed.]
Parameters
Parameter | Description |
---|---|
0 | The first expression to test |
1 | The second expression to test |
attribute
Returns the value of the specified attribute. For a more complete example, see the let
macro.
@
Example: @[title]
Parameters
Parameter | Description |
---|---|
0 | The name of the attribute to retrieve. |
attribute:
Sets the value of the specified attribute. For a more complete example, see the ‡‡‡‡‡PLACEHOLDER¤277‡‡‡‡‡ macro.
Aliases:@:
Example: @:[title|Test Title]
Parameters
Parameter | Description |
---|---|
0 | The name of the attribute to set. |
1 | The value of the attribute. |
comment
Evaluates to nothing. Used to add comments in a Glyph document that will not be displayed in output files.
Aliases:--
Example: --[=>[#link|This link will not be evaluated]]
Parameters
Parameter | Description |
---|---|
0 | The contents to comment out |
Remarks
Macros are not expanded within comments.
condition
Tests a conditional expression. For more information, see Conditional Macros.
Aliases:?
Parameters
Parameter | Description |
---|---|
0 | The condition to test |
1 | The contents to expand if the condition is satisfied. |
Remarks
For examples see any of the following:
config
Returns the value of a configuration setting.
Aliases:$
Example: $[document.author]
Parameters
Parameter | Description |
---|---|
0 | The full name of a configuration setting. |
config:
Sets the value of a configuration setting.
Aliases:$:
Example: $:[document.draft|true]
Parameters
Parameter | Description |
---|---|
0 | The full name of a configuration setting. |
1 | The new value of the configuration setting |
Remarks
This macro cannot be used in safe mode.
eq
Conditional equality operator, to be used with the condition
macro.
Example: ?[eq[$[document.draft]|true]|This is displayed only in draft documents.]
Parameters
Parameter | Description |
---|---|
0 | The first expression to test |
1 | The second expression to test |
escape
Evaluates to its value. Commonly used with the escaping delimiters [=
and =]
.
.
Example: .[=Macros are escaped here =>[#test].=]
Parameters
Parameter | Description |
---|---|
0 | The contents to escape. |
fragment
Delimits a fragment of text that can be embedded using the embed
macro.
##
Example: ##[test_fragment|This is an embeddable fragment]
Parameters
Parameter | Description |
---|---|
0 | The ID of the fragment. |
1 | The contents of the fragment. |
embed
Embeds text previously-delimited using the fragment
macro.
&=
Example: &=[test_fragment]
Parameters
Parameter | Description |
---|---|
0 | The ID of the fragment. |
gt
Returns true if the first parameter is gt the second one.
Example: greater than[5|2]
Parameters
Parameter | Description |
---|---|
0 | The first integer to compare. |
1 | The second integer to compare. |
gte
Returns true if the first parameter is gte the second one.
Example: greater than or equal to[5|2]
Parameters
Parameter | Description |
---|---|
0 | The first integer to compare. |
1 | The second integer to compare. |
include
Evaluates to the contents of a text file stored in the text/
directory referenced by its relative
path. If the options.filters_by_file_extension
setting is true
, filters the contents of the file using the filter macro corresponding to the file extension.
@
Example: include[frontmatter/introduction]
Parameters
Parameter | Description |
---|---|
0 | The file to include. |
Remarks
let
Used to bind one or more attributes via the attribute
macro. Actually,
you can use attribute
macro inside any other macro, but it looks tidier
in this way.
Example
Parameters
Parameter | Description |
---|---|
0 | Any content. |
load
Embeds the contents of a file.
Example: load[my_samples.rb]
Parameters
Parameter | Description |
---|---|
0 | The file to embed, relative to the Glyph project folder. |
lt
Returns true if the first parameter is lt the second one.
Example: less than[5|2]
Parameters
Parameter | Description |
---|---|
0 | The first integer to compare. |
1 | The second integer to compare. |
lte
Returns true if the first parameter is lte the second one.
Example: less than or equal to[5|2]
Parameters
Parameter | Description |
---|---|
0 | The first integer to compare. |
1 | The second integer to compare. |
match
Checks a string against a regular expression.
Example: ?[match[Hello!|/^hell/i]|This is always displayed]
Parameters
Parameter | Description |
---|---|
0 | The string to check. |
1 | The regular expression to match against the string. |
2 | The contents to expand if the string matches. |
Remarks
This macro must be used with the condition
macro.
macro:
Defines a macro.
Aliases:%:
Example: %:[test|"test: #{value}"]
Parameters
Parameter | Description |
---|---|
0 | The name of the new macro. |
1 | The macro definition (Ruby code). |
Remarks
-
This macro cannot be used in safe mode.
- The new macro can only be used after its declaration.
multiply
Multiplies two or more integers together.
Example: add[3|5|9]
not
Conditional not
operator, to be used with the condition
macro.
Example: ?[not[false]|This is always displayed.]
Parameters
Parameter | Description |
---|---|
0 | The expression to negate |
output?
Evaluates to true if Glyph is generating output in the specified format(s).
Example:
?[output?[web|web5]|This text is printed only when generating web or web5 output.]
Parameters
Parameter | Description |
---|---|
0, ... | a valid output target. |
or
Conditional or
operator, to be used with the condition
macro.
Example: ?[or[true|false]|This is always displayed.]
Parameters
Parameter | Description |
---|---|
0 | The first expression to test |
1 | The second expression to test |
define:
Defines a new macro in Glyph code (for more information, see Defining macros using Glyph)
Aliases:def:
Example
Parameters
Parameter | Description |
---|---|
0 | The name of the new macro. |
0 | The macro definition (Glyph code). |
Remarks
- The new macro can only be used after its declaration.
-
This macro cannot be used in safe mode.
ruby
Evaluates its value as Ruby code within the context of the Glyph module.
Aliases:%
Parameters
Parameter | Description |
---|---|
0 | The Ruby code to evaluate. |
Remarks
This macro cannot be used in safe mode.
s
Can be used to dispatch almost any instance method of the ruby String class.
snippet
Returns the value of a snippet.
Aliases:&
Example: &[glang]
Parameters
Parameter | Description |
---|---|
0 | The ID of the snippet to retrieve. |
snippet:
Defines a snippet.
Aliases:&:
Example: &:[test|This is a test]
Parameters
Parameter | Description |
---|---|
0 | The ID of the new snippet. |
1 | The contents of the new snippet. |
Remarks
The new snippet can only be used after its declaration.
subtract
Subtracts two or more integers together.
Example: add[10|5|2]
xml
When used composed with another macro, it can be used to render arbitrary raw XML tags.
Example: xml/img[@src[test.png]@alt[A Test image]]
while
Keeps evaluating the second parameter while a condition is satisfied.
Example
Parameters
Parameter | Description |
---|---|
0 | The condition to check. |
1 | The code to evaluate while the condition is satisfied. |