glyph 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/AUTHORS.textile +1 -1
- data/CHANGELOG.textile +119 -222
- data/LICENSE.textile +1 -1
- data/README.textile +42 -23
- data/Rakefile +1 -3
- data/VERSION +1 -1
- data/benchmark.rb +72 -0
- data/book/config.yml +4 -4
- data/book/document.glyph +90 -57
- data/book/images/document_generation.png +0 -0
- data/book/lib/macros/reference.rb +75 -22
- data/book/output/html/glyph.html +3183 -2121
- data/book/output/html/images/document_generation.png +0 -0
- data/book/output/pdf/glyph.pdf +7370 -4913
- data/book/resources/document_generation.txt +34 -0
- data/book/snippets.yml +6 -0
- data/book/text/changelog.glyph +45 -34
- data/book/text/compiling/compiling.glyph +23 -0
- data/book/text/compiling/lite_mode.glyph +23 -0
- data/book/text/compiling/programmatic_usage.glyph +77 -0
- data/book/text/extending/bookmarks_headers.glyph +21 -0
- data/book/text/extending/further_reading.glyph +13 -0
- data/book/text/extending/internals.glyph +79 -0
- data/book/text/extending/interpreting.glyph +51 -0
- data/book/text/extending/macro_def.glyph +64 -0
- data/book/text/extending/params_attrs.glyph +70 -0
- data/book/text/extending/placeholders.glyph +34 -0
- data/book/text/extending/validators.glyph +16 -0
- data/book/text/getting_started/configuration.glyph +49 -0
- data/book/text/getting_started/create_project.glyph +41 -0
- data/book/text/getting_started/structure.glyph +55 -0
- data/book/text/introduction.glyph +49 -26
- data/book/text/license.glyph +1 -1
- data/book/text/macros/macros_block.glyph +99 -0
- data/book/text/macros/macros_core.glyph +208 -0
- data/book/text/macros/macros_filters.glyph +40 -0
- data/book/text/macros/macros_inline.glyph +50 -0
- data/book/text/macros/macros_structure.glyph +100 -0
- data/book/text/ref_commands.glyph +94 -73
- data/book/text/ref_config.glyph +34 -42
- data/book/text/ref_macros.glyph +1 -373
- data/book/text/text_editing/code.glyph +51 -0
- data/book/text/text_editing/conditionals.glyph +49 -0
- data/book/text/text_editing/evaluation.glyph +13 -0
- data/book/text/text_editing/glyph_files.glyph +7 -0
- data/book/text/text_editing/images.glyph +29 -0
- data/book/text/text_editing/inclusions.glyph +44 -0
- data/book/text/text_editing/links.glyph +53 -0
- data/book/text/text_editing/macro_intro.glyph +111 -0
- data/book/text/text_editing/raw_html.glyph +112 -0
- data/book/text/text_editing/sections.glyph +63 -0
- data/book/text/text_editing/stylesheets.glyph +36 -0
- data/book/text/troubleshooting/errors_command.glyph +39 -0
- data/book/text/troubleshooting/errors_generic.glyph +29 -0
- data/book/text/troubleshooting/errors_intro.glyph +3 -0
- data/book/text/troubleshooting/errors_macro.glyph +98 -0
- data/book/text/troubleshooting/errors_parser.glyph +29 -0
- data/config.yml +77 -58
- data/document.glyph +25 -25
- data/glyph.gemspec +57 -22
- data/lib/glyph.rb +54 -13
- data/lib/glyph/commands.rb +84 -17
- data/lib/glyph/config.rb +3 -3
- data/lib/glyph/document.rb +14 -8
- data/lib/glyph/interpreter.rb +18 -58
- data/lib/glyph/macro.rb +160 -55
- data/lib/glyph/macro_validators.rb +104 -12
- data/lib/glyph/node.rb +24 -0
- data/lib/glyph/parser.rb +278 -0
- data/lib/glyph/syntax_node.rb +225 -0
- data/macros/core.rb +212 -0
- data/macros/filters.rb +66 -15
- data/macros/html/block.rb +43 -105
- data/macros/html/inline.rb +11 -12
- data/macros/html/structure.rb +123 -58
- data/macros/xml.rb +33 -0
- data/spec/files/container.textile +2 -2
- data/spec/files/document.glyph +2 -2
- data/spec/files/document_with_toc.glyph +3 -3
- data/spec/files/included.textile +1 -1
- data/spec/files/ligature.jpg +0 -0
- data/spec/files/markdown.markdown +2 -1
- data/spec/lib/commands_spec.rb +46 -3
- data/spec/lib/document_spec.rb +4 -4
- data/spec/lib/glyph_spec.rb +17 -46
- data/spec/lib/interpreter_spec.rb +6 -25
- data/spec/lib/macro_spec.rb +141 -43
- data/spec/lib/macro_validators_spec.rb +27 -5
- data/spec/lib/node_spec.rb +26 -1
- data/spec/lib/parser_spec.rb +246 -0
- data/spec/lib/syntax_node_spec.rb +111 -0
- data/spec/macros/core_spec.rb +195 -0
- data/spec/macros/filters_spec.rb +38 -4
- data/spec/macros/macros_spec.rb +20 -176
- data/spec/macros/textile_spec.rb +13 -71
- data/spec/macros/xml_spec.rb +77 -0
- data/spec/spec_helper.rb +50 -10
- data/spec/tasks/load_spec.rb +13 -2
- data/styles/default.css +18 -6
- data/styles/pagination.css +1 -19
- data/tasks/generate.rake +2 -2
- data/tasks/load.rake +27 -17
- data/tasks/project.rake +1 -1
- metadata +75 -62
- data/book/script/compile.rb +0 -8
- data/book/script/prof +0 -1
- data/book/script/prof_results.htm +0 -21079
- data/book/text/authoring.glyph +0 -548
- data/book/text/extending.glyph +0 -224
- data/book/text/getting_started.glyph +0 -158
- data/book/text/troubleshooting.glyph +0 -179
- data/lib/glyph/glyph_language.rb +0 -538
- data/lib/glyph/glyph_language.treetop +0 -27
- data/macros/common.rb +0 -160
@@ -1,96 +1,117 @@
|
|
1
|
+
txt[
|
1
2
|
Glyph's command-line interface has been built using the =>[http://github.com/davetron5000/gli|gli] (Git-like interface) gem. Therefore, Glyph commands are all written like this:
|
2
3
|
|
3
|
-
|
4
|
+
strong[glyph] em[global_options] strong[command] em[options] em[parameters]
|
4
5
|
|
5
6
|
Where:
|
6
|
-
*
|
7
|
+
* em[global_options] and _options_ are in the form: @-n@ _value_ or @--name=@\._value_, e.g. @-f pdf@ or @--format=pdf@
|
7
8
|
* _parameters_ are separated by whitespaces, and can be wrapped in quotes.
|
8
|
-
|
9
|
-
section[header[Global Options]
|
10
|
-
|
11
|
-
section[header[@-d@, @--debug@|debug_switch]
|
12
|
-
If specified, the command is executed in debug mode and additional diagnostic information is printed on the screen.
|
13
9
|
]
|
10
|
+
section[
|
11
|
+
@title[Global Options]
|
12
|
+
section[
|
13
|
+
@title[code[-d], code[--debug]]
|
14
|
+
@id[debug_switch]
|
15
|
+
p[If specified, the command is executed in debug mode and additional diagnostic information is printed on the screen.]
|
16
|
+
]
|
14
17
|
]
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
example[glyph add introduction.textile]
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
]
|
24
|
-
] --[End add]
|
25
|
-
|
26
|
-
section[header[@compile@|c_compile]
|
27
|
-
Compiles a Glyph document into an output file. If no options are specified, the @document.glyph@ file is used as source to produce a standalone HTML file.
|
28
|
-
|
29
|
-
example[glyph compile -f pdf]
|
30
|
-
|
31
|
-
parameters[
|
32
|
-
-p[_source_|The source glyph file to compile _(Optional)_.]
|
33
|
-
-p[_destination_|The destination file _(Optional)_.]
|
18
|
+
section[
|
19
|
+
@title[code[add]]
|
20
|
+
@id[c_add]
|
21
|
+
p[Creates a new text file in the code[text/] folder.]
|
22
|
+
example[glyph add introduction.textile]
|
23
|
+
parameters[
|
24
|
+
-p[em[file_name]|The name (or relative path) of the new file to be created.]
|
25
|
+
]
|
34
26
|
]
|
35
|
-
|
36
|
-
|
37
|
-
|
27
|
+
section[
|
28
|
+
@title[code[compile]]
|
29
|
+
@id[c_compile]
|
30
|
+
p[Compiles a Glyph document into an output file. If no options are specified, the code[document.glyph] file is used as source to produce a standalone HTML file.]
|
31
|
+
example[glyph compile -f pdf]
|
32
|
+
parameters[
|
33
|
+
-p[em[source]|The source glyph file to compile em[(Optional)].]
|
34
|
+
-p[em[destination]|The destination file em[(Optional)].]
|
35
|
+
]
|
36
|
+
options[
|
37
|
+
-o[source|
|
38
38
|
The source file to compile.
|
39
|
-
default[document.glyph]
|
40
|
-
]
|
41
|
-
-o[format|
|
39
|
+
default[document.glyph]
|
40
|
+
]
|
41
|
+
-o[format|
|
42
42
|
The format of the output file.
|
43
|
-
default[html]
|
44
|
-
values[html, pdf]
|
45
|
-
]
|
46
|
-
-o[auto|
|
43
|
+
default[html]
|
44
|
+
values[html, pdf]
|
45
|
+
]
|
46
|
+
-o[auto|
|
47
47
|
If specified, enable =>[#auto_regeneration|auto regeneration] (requires the =>[http://rubygems.org/gems/directory_watcher|directory_watcher] gem to be installed).
|
48
|
+
]
|
49
|
+
]
|
48
50
|
]
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
section[header[@config@|c_config]
|
51
|
+
section[
|
52
|
+
@title[code[config]]
|
53
|
+
@id[c_config]
|
53
54
|
Gets or sets a configuration setting in the project or global configuration file (\.fmi[configuration files|#cfg]).
|
54
|
-
|
55
|
-
examples[
|
55
|
+
examples[
|
56
56
|
glyph config document.filename
|
57
57
|
glyph config -g document.author "Fabio Cevasco"
|
58
|
-
]
|
59
|
-
|
60
|
-
|
61
|
-
-o[global|
|
58
|
+
]
|
59
|
+
options[
|
60
|
+
-o[global|
|
62
61
|
If specified, the global configuration file is processed instead of the project file.
|
63
|
-
default[false]
|
64
|
-
]
|
62
|
+
default[false]
|
63
|
+
]
|
64
|
+
]
|
65
|
+
parameters[
|
66
|
+
-p[em[setting]|The name of a valid =>[#cfg_ref|configuration setting].]
|
67
|
+
-p[em[value]|The new value of the configuration setting.]
|
68
|
+
]
|
65
69
|
]
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
]
|
70
|
-
] --[End config]
|
71
|
-
|
72
|
-
section[header[@help@|c_help]
|
70
|
+
section[
|
71
|
+
@title[code[help]]
|
72
|
+
@id[c_help]
|
73
73
|
Prints information about all Glyph commands or about one specific command.
|
74
|
-
|
75
|
-
examples[
|
74
|
+
examples[
|
76
75
|
glyph help
|
77
76
|
glyph help compile
|
77
|
+
]
|
78
|
+
parameters[
|
79
|
+
-p[em[command]|A valid Glyph command.]
|
80
|
+
]
|
78
81
|
]
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
]
|
83
|
-
|
84
|
-
] --[End help]
|
85
|
-
|
86
|
-
section[header[@init@|c_init]
|
82
|
+
section[
|
83
|
+
@title[code[init]]
|
84
|
+
@id[c_init]
|
87
85
|
Creates a new Glyph project in the current directory (if empty).
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
86
|
+
example[glyph init]
|
87
|
+
]
|
88
|
+
section[
|
89
|
+
@title[code[outline]]
|
90
|
+
@id[c_outline]
|
91
|
+
Display an outline of the current document.
|
92
|
+
options[
|
93
|
+
-o[limit|
|
94
|
+
Only display headers until the specified level.
|
95
|
+
]
|
96
|
+
-o[ids|
|
97
|
+
Display section IDs.
|
98
|
+
]
|
99
|
+
-o[files|
|
100
|
+
Display file names.
|
101
|
+
]
|
102
|
+
-o[titles|
|
103
|
+
Display section titles.
|
104
|
+
]
|
105
|
+
]
|
106
|
+
examples[
|
107
|
+
glyph outline -it -l 1
|
108
|
+
glyph outline -l 2
|
109
|
+
glyph outline -f
|
110
|
+
]
|
111
|
+
]
|
112
|
+
section[
|
113
|
+
@title[code[todo]]
|
114
|
+
@id[c_todo]
|
93
115
|
Prints all the todo items saved using the %>[todo].
|
94
|
-
|
95
|
-
|
96
|
-
] --[End todo]
|
116
|
+
example[glyph todo]
|
117
|
+
]
|
data/book/text/ref_config.glyph
CHANGED
@@ -1,4 +1,6 @@
|
|
1
|
-
section[
|
1
|
+
section[
|
2
|
+
@title[document.*]
|
3
|
+
@id[cfg_document]
|
2
4
|
The following configuration settings are related to the current Glyph document. Therefore, you should update them right after creating a project.
|
3
5
|
|
4
6
|
config_table[
|
@@ -16,6 +18,9 @@ The format of the output file. It can be set to any value stored in the $>[docum
|
|
16
18
|
]
|
17
19
|
ref_config[document.output_targets|
|
18
20
|
An @Array@ containing all the possible output formats. This setting should not be changed by the user.
|
21
|
+
]
|
22
|
+
ref_config[document.revision|
|
23
|
+
The document's revision.
|
19
24
|
]
|
20
25
|
ref_config[document.source|
|
21
26
|
The main source file to compile. It can be also be overridden by calling the #>[compile] with the @-s@ option.
|
@@ -28,9 +33,11 @@ The subtitle of the document, displayed using the %>[subtitle].
|
|
28
33
|
The title of the document, displayed using the %>[title].
|
29
34
|
]
|
30
35
|
]
|
31
|
-
]
|
36
|
+
]
|
32
37
|
|
33
|
-
section[
|
38
|
+
section[
|
39
|
+
@title[filters.*]
|
40
|
+
@id[cfg_filters]
|
34
41
|
config_table[
|
35
42
|
ref_config[filters.by_file_extension|
|
36
43
|
If set to @true@, a filter macro is applied to included files, based on their extensions (\.fmi[including files|#incl]).
|
@@ -43,6 +50,12 @@ The name of the markdown converter to use with the %>[markdown]. It can be set t
|
|
43
50
|
* Kramdown
|
44
51
|
|
45
52
|
If not set, Glyph tests for the presence of each gem in the same order, until one is found.
|
53
|
+
]
|
54
|
+
ref_config[filters.coderay.*|
|
55
|
+
Some &[coderay]-specific =>[http://coderay.rubychan.de/doc/classes/CodeRay/Encoders/HTML.html|options].
|
56
|
+
]
|
57
|
+
ref_config[filters.highlighter|
|
58
|
+
The current highlighter to use. It can be set to @coderay@ or @ultraviolet@
|
46
59
|
]
|
47
60
|
ref_config[filters.redcloth.restrictions|
|
48
61
|
An @Array@ containing restrictions applied to RedCloth, used by the %>[textile] (see =>[http://redcloth.rubyforge.org/classes/RedCloth/TextileDoc.html|RedCloth Documentation] for more information).
|
@@ -50,59 +63,38 @@ An @Array@ containing restrictions applied to RedCloth, used by the %>[textile]
|
|
50
63
|
ref_config[filters.target|
|
51
64
|
The output target for filters. It can be set to @html@ (for RedCloth and MarkDown) or @latex@ (RedCloth-only).
|
52
65
|
]
|
53
|
-
|
54
|
-
] --[End filters section]
|
55
|
-
|
56
|
-
|
57
|
-
section[header[@highlighters.*@|s_highlighters]
|
58
|
-
|
59
|
-
config_table[
|
60
|
-
ref_config[highlighters.coderay.*|
|
61
|
-
Some &[coderay]-specific =>[http://coderay.rubychan.de/doc/classes/CodeRay/Encoders/HTML.html|options].
|
62
|
-
]
|
63
|
-
ref_config[highlighters.current|
|
64
|
-
The current highlighter to use. It can be set to @coderay@ or @ultraviolet@
|
65
|
-
]
|
66
|
-
ref_config[highlighters.target|
|
67
|
-
The target output of the =>[#s_highlighters_current|current highlighter]. It can be set to anything the highlighter supports.
|
68
|
-
]
|
69
|
-
ref_config[highlighters.ultraviolet.line_numbers|
|
66
|
+
ref_config[filters.ultraviolet.line_numbers|
|
70
67
|
Whether the &[uv] highlighter should display line numbers or not.
|
71
68
|
]
|
72
|
-
ref_config[
|
69
|
+
ref_config[filters.ultraviolet.theme|
|
73
70
|
The theme used by the &[uv] highlighter.
|
74
71
|
]
|
75
72
|
]
|
73
|
+
]
|
76
74
|
|
77
|
-
|
78
|
-
|
79
|
-
section[header[@structure.*@]
|
80
|
-
The following configuration settings are used internally by Glyph and should not be changed by the user.
|
81
|
-
|
75
|
+
section[
|
76
|
+
@title[language.*]
|
82
77
|
config_table[
|
83
|
-
ref_config[
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
78
|
+
ref_config[language.set|
|
79
|
+
Determines which macro set will be loaded. It can be set to:
|
80
|
+
* glyph – Loads core, filter, xml macros plus all macros necessary for the $>[document.output].
|
81
|
+
* xml – Loads core and xml macros.
|
82
|
+
* core – Loads core macros only.
|
88
83
|
]
|
89
|
-
ref_config[
|
90
|
-
The
|
84
|
+
ref_config[language.options.xml_blacklist|
|
85
|
+
The XML tags listed here cannot be generated using Glyph code.
|
91
86
|
]
|
92
|
-
ref_config[
|
93
|
-
|
94
|
-
]
|
95
|
-
ref_config[structure.special|
|
96
|
-
The section types that will be considered _special_ and whose children will not be included in the Table of Contents.
|
87
|
+
ref_config[language.options.xml_fallback|
|
88
|
+
If set to true, any unknown macro name will considered an XML element (see =>[#other_elements]).
|
97
89
|
]
|
98
90
|
]
|
99
|
-
]
|
91
|
+
]
|
100
92
|
|
101
|
-
section[
|
93
|
+
section[
|
94
|
+
@title[tools.*]
|
102
95
|
config_table[
|
103
96
|
ref_config[tools.pdf_generator|
|
104
97
|
The external program used to generate PDF files. It can only be set to @prince@.
|
105
98
|
]
|
106
99
|
]
|
107
|
-
]
|
108
|
-
|
100
|
+
]
|
data/book/text/ref_macros.glyph
CHANGED
@@ -1,378 +1,6 @@
|
|
1
|
-
|
1
|
+
|
2
2
|
|
3
|
-
ref_macro[and|
|
4
|
-
Conditional @and@ operator, to be used with the %>[condition].
|
5
3
|
|
6
|
-
example[=?[and[true\|false]\|This is never displayed.]=]
|
7
|
-
]
|
8
4
|
|
9
|
-
ref_macro[comment|
|
10
|
-
Evaluates to nothing. Used to add comments in a Glyph document that will not be displayed in output files.
|
11
5
|
|
12
|
-
aliases[--]
|
13
|
-
example[=--[This is a comment. It will not be displayed in the output]=]
|
14
|
-
]
|
15
6
|
|
16
|
-
ref_macro[condition|
|
17
|
-
Tests a conditional expression (first parameter), and evaluates to the second parameter if the condition is satisfied. If the second parameter is an %>[escape] macro, its contents are unescaped and interpreted only if the condition is satisfied. For more information, see =>[#cond_macros].
|
18
|
-
|
19
|
-
aliases[?]
|
20
|
-
|
21
|
-
*Examples*
|
22
|
-
|
23
|
-
See any of the following:
|
24
|
-
* %>[and]
|
25
|
-
* %>[or]
|
26
|
-
* %>[not]
|
27
|
-
* %>[match]
|
28
|
-
* %>[eq]
|
29
|
-
|
30
|
-
]
|
31
|
-
|
32
|
-
ref_macro[config|
|
33
|
-
Evaluates to the configuration setting referenced by its value.
|
34
|
-
|
35
|
-
aliases[$]
|
36
|
-
example[=$[document.author]=]
|
37
|
-
]
|
38
|
-
|
39
|
-
ref_macro[config:|
|
40
|
-
Sets the value of a configuration setting.
|
41
|
-
|
42
|
-
aliases[$:]
|
43
|
-
|
44
|
-
example[=$:[document.draft\|true]=]
|
45
|
-
|
46
|
-
]
|
47
|
-
ref_macro[decode|
|
48
|
-
Decodes some text that was previously encoded (see %>[encode]). fmi[this topic|#encode_decode].
|
49
|
-
|
50
|
-
aliases[**]
|
51
|
-
|
52
|
-
example[=*[\=note‡\.‡¤\.91\.¤‡\.‡This will not be evaluated‡\.‡¤\.93\.¤‡\.‡\=]=]
|
53
|
-
|
54
|
-
]
|
55
|
-
|
56
|
-
ref_macro[encode|
|
57
|
-
Encodes some Glyph code to prevent its evaluation, so that it can be decoded (and interpreted) later on (see the %>[decode]). fmi[this topic|#encode_decode].
|
58
|
-
|
59
|
-
aliases[*]
|
60
|
-
|
61
|
-
example[=*[\=note[This will not be evaluated]\=]=]
|
62
|
-
|
63
|
-
]
|
64
|
-
|
65
|
-
ref_macro[eq|
|
66
|
-
Conditional equality operator, to be used with the %>[condition].
|
67
|
-
|
68
|
-
example[=?[eq[$[document.draft]\|true]\|This is displayed only in draft documents.]=]
|
69
|
-
]
|
70
|
-
|
71
|
-
ref_macro[escape|
|
72
|
-
Evaluates to its value. Commonly used with the escaping delimiters codeph[\[\=] and codeph[\=\]].
|
73
|
-
|
74
|
-
aliases[.]
|
75
|
-
example[=.\[=Macros are escaped here =>[#test].=\]=]
|
76
|
-
]
|
77
|
-
|
78
|
-
ref_macro[include|
|
79
|
-
Evaluates to the contents of a text file stored in the @text/@ directory referenced by its value. If &[filter_by_ext], filters the contents of the file using the =>[#f_macros|filter macro] corresponding to the file extension.
|
80
|
-
|
81
|
-
aliases[@]
|
82
|
-
example[=@[introduction.textile]=]
|
83
|
-
]
|
84
|
-
|
85
|
-
ref_macro[match|
|
86
|
-
Evaluates to @true@ if the first parameter matches the second, an empty string otherwise. The second parameter must be a valid Ruby-compatible regular expression. This macro must be used with the %>[condition].
|
87
|
-
|
88
|
-
example[=?[match[Hello!\|/^hell/i]\|This is always displayed]=]
|
89
|
-
]
|
90
|
-
|
91
|
-
ref_macro[macro:|
|
92
|
-
Defines a macro.
|
93
|
-
|
94
|
-
note[The new macro &[only_after_declaration].]
|
95
|
-
|
96
|
-
aliases[%:]
|
97
|
-
|
98
|
-
example[=%:[test\|"<em>test: #@value</em>"]=]
|
99
|
-
|
100
|
-
]
|
101
|
-
|
102
|
-
ref_macro[not|
|
103
|
-
Conditional @and@ operator, to be used with the %>[condition].
|
104
|
-
|
105
|
-
example[=?[not[false]\|This is always displayed.]=]
|
106
|
-
]
|
107
|
-
|
108
|
-
ref_macro[or|
|
109
|
-
Conditional @or@ operator, to be used with the %>[condition].
|
110
|
-
|
111
|
-
example[=?[or[true\|false]\|This is always displayed.]=]
|
112
|
-
]
|
113
|
-
|
114
|
-
ref_macro[ruby|
|
115
|
-
Evaluates its value as Ruby code (using @Kernel#instance_eval@).
|
116
|
-
|
117
|
-
aliases[%]
|
118
|
-
examples[=
|
119
|
-
%[Time.now]
|
120
|
-
%[Glyph::VERSION]
|
121
|
-
=]
|
122
|
-
]
|
123
|
-
|
124
|
-
ref_macro[snippet|
|
125
|
-
Evaluates to the snippet referenced by its value.
|
126
|
-
|
127
|
-
aliases[&]
|
128
|
-
example[=&[glang]=]
|
129
|
-
]
|
130
|
-
|
131
|
-
ref_macro[snippet:|
|
132
|
-
Defines a snippet.
|
133
|
-
|
134
|
-
note[The new snippet &[only_after_declaration].]
|
135
|
-
|
136
|
-
aliases[&:]
|
137
|
-
|
138
|
-
example[=&:[test\|This is a test]=]
|
139
|
-
|
140
|
-
]
|
141
|
-
|
142
|
-
ref_macro[todo|
|
143
|
-
Saves the value as a TODO item, which can be printed using the #>[todo] or included in the document if the $>[document.draft] is set to @true@.
|
144
|
-
|
145
|
-
example[=todo[Remember to do this.]=]
|
146
|
-
]
|
147
|
-
|
148
|
-
] --[End common macros]
|
149
|
-
|
150
|
-
section[header[Filter Macros|f_macros]
|
151
|
-
|
152
|
-
ref_macro[markdown|
|
153
|
-
Uses a markdown converter (BlueCloth, RDiscount, Maruku or Kramdown) to transform the value into HTML if the $>[filters.target] is set to @html@.
|
154
|
-
|
155
|
-
&[called_on_files] with a @.markdown@ or a @.md@ extension.
|
156
|
-
|
157
|
-
example[=markdown[This is *emphasized* text.]=]
|
158
|
-
]
|
159
|
-
|
160
|
-
ref_macro[textile|
|
161
|
-
Uses the RedCloth gem to transform the value into HTML or LaTeX, depending on the value of the $>[filters.target].
|
162
|
-
|
163
|
-
&[called_on_files] with a @.textile@ extension.
|
164
|
-
|
165
|
-
example[=textile[This is a *strong emphasis*.]=]
|
166
|
-
]
|
167
|
-
|
168
|
-
] --[End filter macros]
|
169
|
-
|
170
|
-
section[header[Block Macros]
|
171
|
-
|
172
|
-
ref_macro[box|
|
173
|
-
Creates a titled box (@<div>@ tag).
|
174
|
-
|
175
|
-
*Example:*
|
176
|
-
|
177
|
-
code[=
|
178
|
-
box[Why boxes?\|
|
179
|
-
Boxes can be used to make a section of text stand out from the rest of the document.
|
180
|
-
]
|
181
|
-
=]
|
182
|
-
]
|
183
|
-
|
184
|
-
ref_macro[code|
|
185
|
-
Used to render a block of code within @<pre>@ and @<code>@ tags.
|
186
|
-
* For inline code, see the %>[codeph].
|
187
|
-
* For code highlighting, see the %>[highlight].
|
188
|
-
|
189
|
-
*Example:*
|
190
|
-
|
191
|
-
code[=
|
192
|
-
code[
|
193
|
-
def hello
|
194
|
-
puts "Hello World"
|
195
|
-
end
|
196
|
-
]
|
197
|
-
=]
|
198
|
-
|
199
|
-
]
|
200
|
-
|
201
|
-
ref_macro[fig|
|
202
|
-
Includes an image in the document, with an optional caption.
|
203
|
-
|
204
|
-
examples[=
|
205
|
-
fig[diagram.png]
|
206
|
-
fig[graph.png\|Monthly pageviews]
|
207
|
-
=]
|
208
|
-
]
|
209
|
-
|
210
|
-
ref_macro[highlight|
|
211
|
-
Highlights a piece of source code (second parameter) according to the specified language (first parameter). fmi[code highligting|#source_code].
|
212
|
-
|
213
|
-
*Example:*
|
214
|
-
|
215
|
-
code[=
|
216
|
-
highlight[ruby\|
|
217
|
-
def hello
|
218
|
-
puts "Hello World"
|
219
|
-
end
|
220
|
-
]
|
221
|
-
=]
|
222
|
-
|
223
|
-
]
|
224
|
-
|
225
|
-
ref_macro[img|
|
226
|
-
Includes an image in the document, optionally scaled according to the specified width and height. The image must be stored within the @images/@ directory of the current project.
|
227
|
-
|
228
|
-
examples[=
|
229
|
-
img[icon.png]
|
230
|
-
img[holidays/landscape.jpg\|70%]
|
231
|
-
img[logo.svg\|50%\|50%]
|
232
|
-
=]
|
233
|
-
]
|
234
|
-
|
235
|
-
ref_macro[note|
|
236
|
-
Creates a note @div@ containing the value.
|
237
|
-
|
238
|
-
aliases[important, caution, tip]
|
239
|
-
example[=note[This is a note.]=]
|
240
|
-
]
|
241
|
-
|
242
|
-
ref_macro[pubdate|
|
243
|
-
Evaluates to a date string (in the format: _current-month_ _current-year_; or _%B_ _%Y_), within a @<div>@ tag.
|
244
|
-
|
245
|
-
example[=pubdate[]=]
|
246
|
-
]
|
247
|
-
|
248
|
-
ref_macro[subtitle|
|
249
|
-
Renders the subtitle of the document (based on the $>[document.subtitle]) within a @<h2>@ tag.
|
250
|
-
|
251
|
-
example[=subtitle[]=]
|
252
|
-
]
|
253
|
-
|
254
|
-
ref_macro[table|
|
255
|
-
Evaluates to an HTML table. Used in conjunction with the =>[#m_tr|@tr@], =>[#m_td|@td@] and =>[#m_th|@th@] macros.
|
256
|
-
|
257
|
-
*Example:*
|
258
|
-
|
259
|
-
code[=
|
260
|
-
table[
|
261
|
-
tr[
|
262
|
-
th[Name]
|
263
|
-
th[Value]
|
264
|
-
]
|
265
|
-
tr[
|
266
|
-
td[A]
|
267
|
-
td[1]
|
268
|
-
]
|
269
|
-
tr[
|
270
|
-
td[B]
|
271
|
-
td[2]
|
272
|
-
]
|
273
|
-
]
|
274
|
-
=]
|
275
|
-
|
276
|
-
]
|
277
|
-
|
278
|
-
ref_macro[td|See =>[#m_table].]
|
279
|
-
|
280
|
-
ref_macro[title|
|
281
|
-
Renders the title of the document (based on the $>[document.title]) within a @<h1>@ tag.
|
282
|
-
|
283
|
-
example[=title[]=]
|
284
|
-
]
|
285
|
-
|
286
|
-
ref_macro[th|See =>[#m_table].]
|
287
|
-
ref_macro[tr|See =>[#m_table].]
|
288
|
-
|
289
|
-
] --[End block macros]
|
290
|
-
|
291
|
-
section[header[Inline Macros]
|
292
|
-
|
293
|
-
ref_macro[anchor|
|
294
|
-
Creates a named anchor (or bookmark).
|
295
|
-
|
296
|
-
aliases[bookmark, #]
|
297
|
-
example[=#[test\|Test Bookmark]=]
|
298
|
-
]
|
299
|
-
|
300
|
-
ref_macro[codeph|
|
301
|
-
Wraps the value in a @<code>@ tag.
|
302
|
-
|
303
|
-
example[=codeph[Kernel.instance_eval]=]
|
304
|
-
|
305
|
-
]
|
306
|
-
|
307
|
-
ref_macro[draftcomment|
|
308
|
-
If the $>[document.draft] is set to @true@, displays a draft comment within the document.
|
309
|
-
|
310
|
-
aliases[dc]
|
311
|
-
|
312
|
-
example[=dc[This is printed only in draft documents.]=]
|
313
|
-
|
314
|
-
]
|
315
|
-
|
316
|
-
ref_macro[fmi|
|
317
|
-
Creates a _For More Information_ link (for an example usage, see the %>[link]).
|
318
|
-
|
319
|
-
example[=fmi[creating links\|#links]=]
|
320
|
-
]
|
321
|
-
|
322
|
-
ref_macro[link|
|
323
|
-
Creates an hyperlink (\.fmi[creating links|#links]).
|
324
|
-
|
325
|
-
aliases[\.=>]
|
326
|
-
examples[=
|
327
|
-
=>[#introduction]
|
328
|
-
=>[#troub\|Troubleshooting]
|
329
|
-
=>[http://www.h3rald.com\|H3RALD.com]
|
330
|
-
=]
|
331
|
-
]
|
332
|
-
|
333
|
-
] --[End inline macros]
|
334
|
-
|
335
|
-
section[header[Structure Macros]
|
336
|
-
|
337
|
-
ref_macro[body|
|
338
|
-
Creates a @<body>@ tag.
|
339
|
-
]
|
340
|
-
|
341
|
-
ref_macro[div|
|
342
|
-
Creates a @<div>@ tag.
|
343
|
-
|
344
|
-
*Aliases:* codeph[%[=Glyph['structure'].values.flatten.uniq.map{\|a\| a.to_s }.push("section").sort.join(', ')=]]
|
345
|
-
]
|
346
|
-
|
347
|
-
ref_macro[document|
|
348
|
-
The root macro used in every Glyph document. It creates an @<html>@ tag.
|
349
|
-
]
|
350
|
-
|
351
|
-
ref_macro[head|
|
352
|
-
Creates a @<head>@ tag, pre-populated with @title@ and author/copyright @<meta>@ tags.
|
353
|
-
]
|
354
|
-
|
355
|
-
ref_macro[header|
|
356
|
-
Creates an @h2@, @h3@, @h4@, etc. header (\.fmi[using headers|#sec_head]).
|
357
|
-
|
358
|
-
examples[=
|
359
|
-
header[Introduction]
|
360
|
-
header[Getting Started\|gs]
|
361
|
-
=]
|
362
|
-
]
|
363
|
-
|
364
|
-
ref_macro[section|See =>[#m_div].]
|
365
|
-
|
366
|
-
ref_macro[style|
|
367
|
-
Embeds the content of a CSS or Sass file within a @<style>@ tag (\.fmi[stylesheets|#stylesheets]).
|
368
|
-
|
369
|
-
example[=style[default.css]=]
|
370
|
-
]
|
371
|
-
|
372
|
-
ref_macro[toc|
|
373
|
-
Generates a _Table of Contents_ based on how sections and headers are nested in the current document.
|
374
|
-
|
375
|
-
example[=toc[]=]
|
376
|
-
]
|
377
|
-
|
378
|
-
] --[End structure macros]
|