glyph 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. data/AUTHORS.textile +1 -1
  2. data/CHANGELOG.textile +119 -222
  3. data/LICENSE.textile +1 -1
  4. data/README.textile +42 -23
  5. data/Rakefile +1 -3
  6. data/VERSION +1 -1
  7. data/benchmark.rb +72 -0
  8. data/book/config.yml +4 -4
  9. data/book/document.glyph +90 -57
  10. data/book/images/document_generation.png +0 -0
  11. data/book/lib/macros/reference.rb +75 -22
  12. data/book/output/html/glyph.html +3183 -2121
  13. data/book/output/html/images/document_generation.png +0 -0
  14. data/book/output/pdf/glyph.pdf +7370 -4913
  15. data/book/resources/document_generation.txt +34 -0
  16. data/book/snippets.yml +6 -0
  17. data/book/text/changelog.glyph +45 -34
  18. data/book/text/compiling/compiling.glyph +23 -0
  19. data/book/text/compiling/lite_mode.glyph +23 -0
  20. data/book/text/compiling/programmatic_usage.glyph +77 -0
  21. data/book/text/extending/bookmarks_headers.glyph +21 -0
  22. data/book/text/extending/further_reading.glyph +13 -0
  23. data/book/text/extending/internals.glyph +79 -0
  24. data/book/text/extending/interpreting.glyph +51 -0
  25. data/book/text/extending/macro_def.glyph +64 -0
  26. data/book/text/extending/params_attrs.glyph +70 -0
  27. data/book/text/extending/placeholders.glyph +34 -0
  28. data/book/text/extending/validators.glyph +16 -0
  29. data/book/text/getting_started/configuration.glyph +49 -0
  30. data/book/text/getting_started/create_project.glyph +41 -0
  31. data/book/text/getting_started/structure.glyph +55 -0
  32. data/book/text/introduction.glyph +49 -26
  33. data/book/text/license.glyph +1 -1
  34. data/book/text/macros/macros_block.glyph +99 -0
  35. data/book/text/macros/macros_core.glyph +208 -0
  36. data/book/text/macros/macros_filters.glyph +40 -0
  37. data/book/text/macros/macros_inline.glyph +50 -0
  38. data/book/text/macros/macros_structure.glyph +100 -0
  39. data/book/text/ref_commands.glyph +94 -73
  40. data/book/text/ref_config.glyph +34 -42
  41. data/book/text/ref_macros.glyph +1 -373
  42. data/book/text/text_editing/code.glyph +51 -0
  43. data/book/text/text_editing/conditionals.glyph +49 -0
  44. data/book/text/text_editing/evaluation.glyph +13 -0
  45. data/book/text/text_editing/glyph_files.glyph +7 -0
  46. data/book/text/text_editing/images.glyph +29 -0
  47. data/book/text/text_editing/inclusions.glyph +44 -0
  48. data/book/text/text_editing/links.glyph +53 -0
  49. data/book/text/text_editing/macro_intro.glyph +111 -0
  50. data/book/text/text_editing/raw_html.glyph +112 -0
  51. data/book/text/text_editing/sections.glyph +63 -0
  52. data/book/text/text_editing/stylesheets.glyph +36 -0
  53. data/book/text/troubleshooting/errors_command.glyph +39 -0
  54. data/book/text/troubleshooting/errors_generic.glyph +29 -0
  55. data/book/text/troubleshooting/errors_intro.glyph +3 -0
  56. data/book/text/troubleshooting/errors_macro.glyph +98 -0
  57. data/book/text/troubleshooting/errors_parser.glyph +29 -0
  58. data/config.yml +77 -58
  59. data/document.glyph +25 -25
  60. data/glyph.gemspec +57 -22
  61. data/lib/glyph.rb +54 -13
  62. data/lib/glyph/commands.rb +84 -17
  63. data/lib/glyph/config.rb +3 -3
  64. data/lib/glyph/document.rb +14 -8
  65. data/lib/glyph/interpreter.rb +18 -58
  66. data/lib/glyph/macro.rb +160 -55
  67. data/lib/glyph/macro_validators.rb +104 -12
  68. data/lib/glyph/node.rb +24 -0
  69. data/lib/glyph/parser.rb +278 -0
  70. data/lib/glyph/syntax_node.rb +225 -0
  71. data/macros/core.rb +212 -0
  72. data/macros/filters.rb +66 -15
  73. data/macros/html/block.rb +43 -105
  74. data/macros/html/inline.rb +11 -12
  75. data/macros/html/structure.rb +123 -58
  76. data/macros/xml.rb +33 -0
  77. data/spec/files/container.textile +2 -2
  78. data/spec/files/document.glyph +2 -2
  79. data/spec/files/document_with_toc.glyph +3 -3
  80. data/spec/files/included.textile +1 -1
  81. data/spec/files/ligature.jpg +0 -0
  82. data/spec/files/markdown.markdown +2 -1
  83. data/spec/lib/commands_spec.rb +46 -3
  84. data/spec/lib/document_spec.rb +4 -4
  85. data/spec/lib/glyph_spec.rb +17 -46
  86. data/spec/lib/interpreter_spec.rb +6 -25
  87. data/spec/lib/macro_spec.rb +141 -43
  88. data/spec/lib/macro_validators_spec.rb +27 -5
  89. data/spec/lib/node_spec.rb +26 -1
  90. data/spec/lib/parser_spec.rb +246 -0
  91. data/spec/lib/syntax_node_spec.rb +111 -0
  92. data/spec/macros/core_spec.rb +195 -0
  93. data/spec/macros/filters_spec.rb +38 -4
  94. data/spec/macros/macros_spec.rb +20 -176
  95. data/spec/macros/textile_spec.rb +13 -71
  96. data/spec/macros/xml_spec.rb +77 -0
  97. data/spec/spec_helper.rb +50 -10
  98. data/spec/tasks/load_spec.rb +13 -2
  99. data/styles/default.css +18 -6
  100. data/styles/pagination.css +1 -19
  101. data/tasks/generate.rake +2 -2
  102. data/tasks/load.rake +27 -17
  103. data/tasks/project.rake +1 -1
  104. metadata +75 -62
  105. data/book/script/compile.rb +0 -8
  106. data/book/script/prof +0 -1
  107. data/book/script/prof_results.htm +0 -21079
  108. data/book/text/authoring.glyph +0 -548
  109. data/book/text/extending.glyph +0 -224
  110. data/book/text/getting_started.glyph +0 -158
  111. data/book/text/troubleshooting.glyph +0 -179
  112. data/lib/glyph/glyph_language.rb +0 -538
  113. data/lib/glyph/glyph_language.treetop +0 -27
  114. data/macros/common.rb +0 -160
@@ -0,0 +1,63 @@
1
+ section[
2
+ @title[Sections and Headers]
3
+ @id[sec_head]
4
+
5
+ p[Glyph documents are normally organized as a hierarchical tree of nested chapters, appendixes, sections, etc. To define a section, use the %>[section], like so:]
6
+
7
+ highlight[=html|
8
+ section[
9
+ @title[Section #1]
10
+ Write the section contents here...
11
+ section[
12
+ @title[Section #2]
13
+ This section is nested into the previous one.
14
+ ] --[End of Section #2]
15
+ ] --[End of Section #1]
16
+ =]
17
+
18
+ txt[This example defines two nested sections. If the code[@title] attribute is specified like in this case, it will be converted to a proper HTML header and it will appear in the table of contents (see the %>[toc]).
19
+
20
+ Note an important difference from HTML: there is no need for an explicit level for the headers, as it will be determined at runtime when the document is compiled, based on how sections are nested. The previous code snippet (taken as it is), for example, will be transformed into the following HTML code:]
21
+
22
+ highlight[=html|
23
+ <div class="section">
24
+ <h2>Section #1</h2>
25
+ <p>Write the section contents here...</p>
26
+ <div class="section">
27
+ <h3>Section #2</h3>
28
+ <p>This section is nested in the previous one</p>
29
+ </div>
30
+ </div>
31
+ =]
32
+
33
+ txt[
34
+ By default, in Glyph the first header level is _2_, so the two headers are rendered as @h2@ and @h3@, respectively (@--\[...\]@ macros are _comments_, therefore they are not included in the final output).
35
+
36
+ There are _a lot_ of macros that can be used in the same way as @section@, one for each element commonly used in =>[http://en.wikipedia.org/wiki/Book_design|book design]. Each one of them is a simple wrapper for a @<div>@ tag with a @class@ attribute set to its name.
37
+
38
+ The following table lists the identifiers of all section-like macros, divided according to the part of the book they should be placed in:
39
+ ]
40
+ table[
41
+ tr[
42
+ th[Frontmatter]
43
+ td[txt[@imprint@ ^&dagger;^, @dedication@ ^&dagger;^, @inspiration@ ^&dagger;^, @foreword@ ^&Dagger;^, @introduction@ ^&Dagger;^, @acknowledgement@ ^&Dagger;^, @prologue@ ^&Dagger;^, @toc@ ^*^]]
44
+ ]
45
+ tr[
46
+ th[Bodymatter]
47
+ td[txt[@volume@, @book@, @part@, @chapter@]]
48
+ ]
49
+ tr[
50
+ th[Backmatter]
51
+ td[txt[@epilogue@ ^&Dagger;^, @afterword@ ^&Dagger;^, @postscript@ ^&dagger;^, @appendix@, @addendum@ ^&Dagger;^, @glossary@ ^**&Dagger;^, @colophon@ ^&dagger;^, @bibliography@ ^**&Dagger;^, @promotion@ ^&dagger;^, @references@ ^**&Dagger;^, @index@ ^**&Dagger;^, @lot@ ^**&Dagger;^, @lof@ ^**&Dagger;^]]
52
+ ]
53
+ ]
54
+
55
+ p[strong[*]: The %>[toc] is used to generate the Table of Contents automatically, and it takes no parameters.]
56
+ p[strong[**]: This macro is likely to be extended in future versions to generate/aggregate content automatically.]
57
+ p[strong[&dagger;]: This section is not listed in the Table of Contents.]
58
+ p[strong[&Dagger;]: Any subsection of this section is not listed in the Table of Contents.]
59
+
60
+ note[
61
+ code[frontmatter], code[bodymatter] and code[backmatter] are also macro identifiers, but they are exposed as attributes for the %>[book] and the %>[article], so if you're using either of these two macros as your root macro for your document, there's no need to use them explicitly.
62
+ ]
63
+ ]
@@ -0,0 +1,36 @@
1
+ section[
2
+ @title[Adding Stylesheets]
3
+ @id[stylesheets]
4
+ p[Currently, Glyph does not provide any native way to format text and pages. The reason is that there's absolutely no need for that: CSS does the job just fine. In particular, CSS3 offers specific attributes and elements that can be used specifically for paginated documents. That's no replacement for LaTeX by any means, but it is enough if you're not looking for advanced typographical features.]
5
+ p[You can embed CSS files using the %>[style], like this:]
6
+ p[code[= style[default.css] =]]
7
+ txt[In this case, the %>[style] looks for a @default.css@ file in the @/styles@ folder of your Glyph project _and_ among the default Glyph stylesheets, and embeds it within a @<style>@ tag. If you supply a file with a @.sass@ extension, it will interpret it as a Sass file and convert it to CSS automatically (if the _Haml_ gem is installed).]
8
+ section[
9
+ @title[Default Stylesheets]
10
+ @id[default_stylesheets]
11
+ p[Glyph provides the following default stylesheets, that can be referenced directly using the %>[style]:]
12
+ table[
13
+ tr[
14
+ th[File name]
15
+ th[Notes]
16
+ ]
17
+ tr[
18
+ td[code[default.css]]
19
+ td[The stylesheet used for this book.]
20
+ ]
21
+ tr[
22
+ td[code[pagination.css]]
23
+ td[A CSS3-compliant stylesheet used for pagination, suitable for PDF generation using &[prince].]
24
+ ]
25
+ tr[
26
+ td[code[coderay.css]]
27
+ td[The default &[coderay] stylesheet, used for syntax highlighting.]
28
+ ]
29
+ tr[
30
+ td[code[ultraviolet/*]]
31
+ td[This folder contains the following &[uv] stylesheets, used for syntax highlighting: code[%[(Glyph::HOME/"styles/ultraviolet").children.sort.map{\|c\| c.basename}.join(", ")]]]
32
+ ]
33
+ ]
34
+ ]
35
+ ]
36
+
@@ -0,0 +1,39 @@
1
+ section[
2
+ @title[Command Errors]
3
+ error_table[
4
+ ref_error[Source file '\.em[source_file]' does not exist|
5
+ Returned if Glyph is running in =>[#lite_mode|lite mode] and the specified source file was not found.
6
+ ]
7
+ ref_error[Source and destination file are the same|
8
+ Returned if Glyph is running in =>[#lite_mode|lite mode] and you specified the same source and destination files.
9
+ ]
10
+ ref_error[DirectoryWatcher is not available. Install it with: gem install directory_watcher|
11
+ Returned if =>[#auto_regeneration|auto regeneration] is enabled but the code[directory_watcher] gem in not installed.
12
+ ]
13
+ ref_error[Document cannot be finalized due to previous errors|
14
+ Returned if one or more errors occurred in the document prevented finalization.
15
+ ]
16
+ ref_error[Please specify a file name|
17
+ No file name was specified for the #>[add].
18
+ ]
19
+ ref_error[Output target not specified|
20
+ Returned if no target was specified for the #>[compile] _and_ if the $>[document.output] is not set.
21
+ ]
22
+ ref_error[Unknown output target '\.em[target_name]'|
23
+ An unsupported output target was specified for the #>[compile]. Only the following output targets are supported:
24
+ ul[
25
+ li[html]
26
+ li[pdf]
27
+ ]
28
+ ]
29
+ ref_error[Too few/too many arguments|
30
+ Returned if the #>[config] was used with no arguments or more than two arguments respectively.
31
+ ]
32
+ ref_error[Unknown setting '\.em[setting_name]'|
33
+ The name of an unknown setting was specified for the #>[config].
34
+ ]
35
+ ref_error[Cannot reset '\.em[setting_name]' setting (system use only).|
36
+ Returned by the #>[config] when attempting to override a setting in the code[system.*] namespace.
37
+ ]
38
+ ]
39
+ ]
@@ -0,0 +1,29 @@
1
+ section[
2
+ @title[Generic Errors]
3
+ error_table[
4
+ ref_error[Invalid alias: macro '\.em[macro_name]' already exists|
5
+ The alias name supplied to the @macro_alias@ method has already been used for another macro or alias.
6
+ ]
7
+ ref_error[Undefined macro '\.em[macro_name]'|
8
+ The document contains a macro that does not exist, i.e. it is not a standard or used-defined =>[#macro_ref|Glyph macro or alias].
9
+ ]
10
+ ref_error[An error occurred when generating _file-name_.pdf|
11
+ Returned if Prince could not generate the PDF file or if Prince is not installed. Normally, Prince provides additional details on the specific error(s).
12
+ ]
13
+ ref_error[Glyph cannot generate PDF. Please specify a valid tools.pdf_generator setting|
14
+ Returned if the $>[tools.pdf_generator] has not be set to a valid PDF renderer. Currently, the only supported value for this setting is code[prince].
15
+ ]
16
+ ref_error[The current directory is not a valid Glyph project|
17
+ Returned if a glyph command was executed outside a valid glyph project directory.
18
+ ]
19
+ ref_error[Invalid snippet file|
20
+ The code[snippet.yml] file contains invalid data. Most likely, it does not evaluate to a Ruby code[Hash].
21
+ ]
22
+ ref_error[Directory '\.em[directory_name]' is not empty|
23
+ Returned when executing the #>[init] in a directory that is not empty.
24
+ ]
25
+ ref_error[File '\.em[file_name]' already exists|
26
+ Returned if the name of an existing file was specified as a parameter for the #>[add].
27
+ ]
28
+ ]
29
+ ]
@@ -0,0 +1,3 @@
1
+ This chapter lists the most common error messages that can be returned when running a Glyph command. It does not aim to be an exhaustive list, especially if you =>[#extending|extended] Glyph by creating your own macros or you're embedding Ruby code using the %>[ruby].
2
+
3
+ tip[As a general rule, more diagnostic information is provided if Glyph is run in =>[#debug_switch|debug mode].]
@@ -0,0 +1,98 @@
1
+ section[
2
+ @title[Macro Errors]
3
+ txt[
4
+ The following errors are displayed in the form:
5
+
6
+ em[message]
7
+ &nbsp; source: em[macro_source]
8
+ &nbsp; path: em[macro_path]
9
+
10
+ em[macro_value]
11
+
12
+ Where:
13
+ * em[message] is the error message.
14
+ * em[macro_source] is the file or snippet where the error occurred.
15
+ * em[macro_path] is the full path to the macro that returned the error, within the document syntax tree, e.g. @document/body/bodymatter/chapter/section/header/&@ if the error occurrent in a snippet within the header of a section in the @bodymatter@ part of the document.
16
+ * em[macro_value] is the value of the macro (shown only if Glyph is running in =>[#debug_switch|debug mode]).
17
+ ]
18
+ error_table[
19
+ ref_error[Macro '\.em[name]' takes up to em[x] parameter(s) (\.em[y] given)|
20
+ Returned if the macro was called with extra parameters.
21
+ ]
22
+ ref_error[Macro '\.em[name]' takes at least em[x] parameter(s) (\.em[y] given)|
23
+ Returned if the macro was called with fewer parameters than expected.
24
+ ]
25
+ ref_error[Macro '\.em[name]' takes exactly em[x] parameter(s) (\.em[y] given)|
26
+ Returned if the macro was called with a different number of parameters than.
27
+ ]
28
+ ref_error[Macro not available when compiling a single file.|
29
+ Returned by the %>[include] if used in =>[#lite_mode|lite mode].
30
+ ]
31
+ ref_error[Filter macro '\.em[extension]' not available|
32
+ Returned by a filter macro if $>[filters.by_file_extension] is set to @true@, but the extension was not recognized.
33
+ ]
34
+ ref_error[Invalid regular expression: em[regexp]|
35
+ Returned by the %>[match] if an invalid regular expression was supplied.
36
+ ]
37
+ ref_error[Macro '\.em[name]' takes no parameters (\.em[x] given)|
38
+ Returned if the macro was called with parameters but none are requested.
39
+ ]
40
+ ref_error[No highlighter installed. Please run: gem install coderay|
41
+ Returned by the %>[highlight] if no highlighters are installed.
42
+ ]
43
+ ref_error[CodeRay highlighter not installed. Please run: gem install coderay|
44
+ Returned by the %>[highlight] if $>[filters.highlighter] is set to @coderay@ but &[coderay] is not installed.
45
+ ]
46
+ ref_error[UltraViolet highlighter not installed. Please run: gem install ultraviolet|
47
+ Returned by the %>[highlight] if $>[filters.highlighter] is set to @ultraviolet@ but &[uv] is not installed.
48
+ ]
49
+ ref_error[Mutual Inclusion in parameter/attribute(\.em[name]): '\.em[value]'|
50
+ Returned if a catch-22 situation occurs with macro inclusion, for example if the value of a snippet includes a reference to the same snippet.
51
+ ]
52
+ ref_error[Snippet '\.em[snippet_id]' does not exist|
53
+ Returned by the %>[snippet] if an invalid snippet ID was supplied.
54
+ ]
55
+ ref_error[File '\.em[file_name]' not found|
56
+ Returned by the %>[include] if an invalid file was supplied.
57
+ ]
58
+ ref_error[Filter macro '\.em[macro_name]' not found|
59
+ Returned by the %>[include] if the $>[filters.by_file_extension] is set to @true@ but the file extension of the included file is not recognized as a filter macro.
60
+ ]
61
+ ref_error[RedCloth gem not installed. Please run: gem install RedCloth|
62
+ Returned by the %>[textile] if the RedCloth gem is not installed.
63
+ ]
64
+ ref_error[No MarkDown converter installed. Please run: gem install bluecloth|
65
+ Returned by the %>[markdown] if no valid Markdown converter gem is installed. Glyph checks for: BlueCloth, Maruku, Kramdown and RDiscount.
66
+ ]
67
+ ref_error[Image/Figure not found|
68
+ Retured by the %>[image] or the %>[figure] respectively, if the specified image file could not be found within the code[images/] folder.
69
+ ]
70
+ ref_error[Bookmark '\.em[bookmark_name]' already exists|
71
+ Returned by the %>[anchor] or by the %>[section] if the anchor ID supplied as attribute has already been used in the document.
72
+ ]
73
+ ref_error[Bookmark '\.em[bookmark_name]' already exists|
74
+ Returned by the %>[link] if the anchor ID supplied as parameter has not been used in the document.
75
+ ]
76
+ ref_error[Stylesheet '\.em[file_name]' not found|
77
+ Returned by the %>[style] if the code[.css] or code[.sass] file supplied as parameter was not found in the code[styles/] directory.
78
+ ]
79
+ ref_error[Haml is not installed. Please run: gem install haml|
80
+ Returned by the %>[style] if a code[.sass] file was passed as parameter but the Haml gem is not installed.
81
+ ]
82
+ ref_error[Invalid XML element: '\.em[element_name]'|
83
+ An invalid XML element name was supplied to the code[\|xml\|] system macro (see =>[#other_elements]).
84
+ ]
85
+ ref_error[Invalid XML element: '\.em[element_name]'|
86
+ An invalid XML attribute name was supplied to the code[\|xml\|] system macro (see =>[#other_elements]).
87
+ ]
88
+ ref_error[Macro '\.em[macro_name]' cannot be used in safe mode|
89
+ Returned if a forbidden macro was used in safe mode (see =>[#modes]).
90
+ ]
91
+ ref_error[Cannot reset 'system.\.em[setting_name]' setting (system use only).|
92
+ Returned by the =>[config:] when attempting to override a setting in the code[system.*] namespace.
93
+ ]
94
+ ref_error[Macro '\.em[macro_name]' cannot be defined by itself|
95
+ Returned by the =>[rewrite:] if it contains a macro with the same name.
96
+ ]
97
+ ]
98
+ ]
@@ -0,0 +1,29 @@
1
+ section[
2
+ @title[Parsing Errors]
3
+ error_table[
4
+ ref_error[Macro delimiter '\.em[delimiter]' not escaped|
5
+ Returned in case of unescaped code[\[]or code[\]].
6
+ ]
7
+ ref_error[em[macro_name]\[...\] - A macro cannot start with '@' or a digit.|
8
+ Returned if an invalid macro name was specified.
9
+ ]
10
+ ref_error[Macro '\.em[macro_name]' not closed|
11
+ Returned if a macro lacks its end delimiter code[\.=\]].
12
+ ]
13
+ ref_error[Escaping macro '\.em[macro_name]' not closed|
14
+ Returned if an escaping macro lacks its end delimiter code[\.=\]].
15
+ ]
16
+ ref_error[Attribute @\.em[attribute_name] not closed|
17
+ Returned if a macro attribute lacks its end delimiter code[\]].
18
+ ]
19
+ ref_error[Attributes cannot be nested|
20
+ Returned if a macro attribute was found immediately within another attribute.
21
+ ]
22
+ ref_error[Cannot nest escaping macro '\.em[macro_name_1]' within escaping macro '\.em[macro_name_2]'|
23
+ Returned if an escaping macro contains another escaping macro.
24
+ ]
25
+ ref_error[Parameter delimiter '\|' not allowed here|
26
+ Returned if a parameter delimiter is outside a macro or inside an attribute.
27
+ ]
28
+ ]
29
+ ]
data/config.yml CHANGED
@@ -4,72 +4,91 @@
4
4
  :title: ""
5
5
  :subtitle: ""
6
6
  :filename: ""
7
+ :revision: ""
7
8
  :draft: false
8
9
  :output: 'html'
9
- :output_targets: [:html, :pdf]
10
- :structure:
11
- :hidden:
12
- - :imprint
13
- - :dedication
14
- - :inspiration
15
- - :postscript
16
- - :colophon
17
- - :promotion
18
- :special:
19
- - :foreword
20
- - :acknowledgement
21
- - :prologue
22
- - :epilogue
23
- - :addendum
24
- - :glossary
25
- - :bibliography
26
- - :references
27
- - :index
28
- - :lot
29
- - :lof
30
- :frontmatter:
31
- - :preface
32
- - :imprint
33
- - :dedication
34
- - :inspiration
35
- - :foreword
36
- - :introduction
37
- - :acknowledgement
38
- - :prologue
39
- :bodymatter:
40
- - :volume
41
- - :book
42
- - :part
43
- - :chapter
44
- :backmatter:
45
- - :epilogue
46
- - :afterword
47
- - :postscript
48
- - :appendix
49
- - :addendum
50
- - :glossary
51
- - :colophon
52
- - :bibliography
53
- - :promotion
54
- - :references
55
- - :index
56
- - :lot
57
- - :lof
10
+ :language:
11
+ :set: 'glyph' # xml, core, filters
12
+ :options:
13
+ :xml_fallback: true
14
+ :xml_blacklist:
15
+ - applet
16
+ - base
17
+ - basefont
18
+ - embed
19
+ - frame
20
+ - frameset
21
+ - iframe
22
+ - isindex
23
+ - meta
24
+ - noframes
25
+ - noscript
26
+ - object
27
+ - param
28
+ - title
58
29
  :tools:
59
30
  :pdf_generator: 'prince'
60
- :highlighters:
61
- :target: 'html'
62
- :current: 'coderay'
63
- :coderay:
64
- # See options at http://coderay.rubychan.de/doc/classes/CodeRay/Encoders/HTML.html
65
- :css: :class
66
- :ultraviolet:
67
- :line_numbers: false
68
- :theme: 'blackboard'
69
31
  :filters:
70
32
  :by_file_extension: true
33
+ :highlighter: 'coderay'
71
34
  :target: 'html'
72
35
  :markdown:
73
36
  :converter: 'bluecloth'
74
37
  :redcloth:
75
38
  :restrictions: []
39
+ :coderay:
40
+ # See options at http://coderay.rubychan.de/doc/classes/CodeRay/Encoders/HTML.html
41
+ :css: :class
42
+ :ultraviolet:
43
+ :line_numbers: true
44
+ :theme: 'lazy'
45
+ :system:
46
+ :quiet: false
47
+ :output_targets: [:html, :pdf]
48
+ :structure:
49
+ :hidden:
50
+ - :imprint
51
+ - :dedication
52
+ - :inspiration
53
+ - :postscript
54
+ - :colophon
55
+ - :promotion
56
+ :special:
57
+ - :foreword
58
+ - :acknowledgement
59
+ - :prologue
60
+ - :epilogue
61
+ - :addendum
62
+ - :glossary
63
+ - :bibliography
64
+ - :references
65
+ - :index
66
+ - :lot
67
+ - :lof
68
+ :frontmatter:
69
+ - :preface
70
+ - :imprint
71
+ - :dedication
72
+ - :inspiration
73
+ - :foreword
74
+ - :introduction
75
+ - :acknowledgement
76
+ - :prologue
77
+ :bodymatter:
78
+ - :volume
79
+ - :part
80
+ - :chapter
81
+ :backmatter:
82
+ - :epilogue
83
+ - :afterword
84
+ - :postscript
85
+ - :appendix
86
+ - :addendum
87
+ - :glossary
88
+ - :colophon
89
+ - :bibliography
90
+ - :promotion
91
+ - :references
92
+ - :index
93
+ - :lot
94
+ - :lof