glyph 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. data/.gitignore +7 -0
  2. data/AUTHORS.textile +8 -7
  3. data/CHANGELOG.textile +89 -8
  4. data/LICENSE.textile +1 -2
  5. data/README.textile +89 -61
  6. data/Rakefile +12 -10
  7. data/VERSION +1 -1
  8. data/benchmark.rb +1 -1
  9. data/book/config.yml +18 -4
  10. data/book/document.glyph +269 -45
  11. data/book/images/glyph/commands_tasks.png +0 -0
  12. data/book/images/{document_generation.png → glyph/document_generation.png} +0 -0
  13. data/book/images/glyph/glyph.eps +123 -0
  14. data/book/images/glyph/glyph.png +0 -0
  15. data/book/images/glyph/glyph.svg +29 -0
  16. data/book/lib/commands/commands.rb +11 -0
  17. data/book/lib/layouts/bookindex.glyph +127 -0
  18. data/book/lib/layouts/bookpage.glyph +129 -0
  19. data/book/lib/layouts/project.glyph +26 -0
  20. data/book/lib/macros/reference.rb +27 -7
  21. data/book/lib/tasks/tasks.rake +52 -0
  22. data/book/snippets.yml +1 -1
  23. data/book/text/{acknowledgement.glyph → acknowledgements.glyph} +4 -2
  24. data/book/text/changelog.glyph +29 -3
  25. data/book/text/compiling/compiling.glyph +44 -20
  26. data/book/text/compiling/lite_mode.glyph +0 -4
  27. data/book/text/compiling/programmatic_usage.glyph +1 -5
  28. data/book/text/config/document.glyph +35 -0
  29. data/book/text/config/filters.glyph +28 -0
  30. data/book/text/config/options.glyph +25 -0
  31. data/book/text/config/output.glyph +83 -0
  32. data/book/text/extending/bookmarks_headers.glyph +0 -5
  33. data/book/text/extending/command.glyph +56 -0
  34. data/book/text/extending/commands_tasks.glyph +39 -0
  35. data/book/text/extending/further_reading.glyph +0 -3
  36. data/book/text/extending/internals.glyph +3 -5
  37. data/book/text/extending/interpreting.glyph +0 -4
  38. data/book/text/extending/layouts.glyph +68 -0
  39. data/book/text/extending/macro_def.glyph +0 -5
  40. data/book/text/extending/output_format.glyph +78 -0
  41. data/book/text/extending/params_attrs.glyph +0 -3
  42. data/book/text/extending/placeholders.glyph +0 -4
  43. data/book/text/extending/task.glyph +46 -0
  44. data/book/text/extending/validators.glyph +5 -6
  45. data/book/text/getting_started/configuration.glyph +1 -5
  46. data/book/text/getting_started/create_project.glyph +1 -5
  47. data/book/text/getting_started/structure.glyph +0 -4
  48. data/book/text/introduction.glyph +100 -75
  49. data/book/text/license.glyph +1 -2
  50. data/book/text/macros/macros_block.glyph +8 -4
  51. data/book/text/macros/macros_core.glyph +0 -3
  52. data/book/text/macros/macros_filters.glyph +2 -7
  53. data/book/text/macros/macros_inline.glyph +0 -4
  54. data/book/text/macros/macros_structure.glyph +0 -4
  55. data/book/text/ref_commands.glyph +29 -7
  56. data/book/text/stats/bookmarks.glyph +49 -0
  57. data/book/text/stats/links.glyph +90 -0
  58. data/book/text/stats/macros.glyph +73 -0
  59. data/book/text/stats/snippets.glyph +50 -0
  60. data/book/text/stats/stats.glyph +79 -0
  61. data/book/text/text_editing/attribute_intro.glyph +22 -0
  62. data/book/text/text_editing/code.glyph +0 -5
  63. data/book/text/text_editing/conditionals.glyph +0 -4
  64. data/book/text/text_editing/esc_quot.glyph +64 -0
  65. data/book/text/text_editing/evaluation.glyph +0 -3
  66. data/book/text/text_editing/glyph_files.glyph +0 -3
  67. data/book/text/text_editing/images.glyph +0 -5
  68. data/book/text/text_editing/inclusions.glyph +0 -4
  69. data/book/text/text_editing/links.glyph +2 -7
  70. data/book/text/text_editing/macro_intro.glyph +1 -98
  71. data/book/text/text_editing/raw_html.glyph +0 -87
  72. data/book/text/text_editing/section_aliases.glyph +28 -0
  73. data/book/text/text_editing/sections.glyph +1 -32
  74. data/book/text/text_editing/stylesheets.glyph +3 -5
  75. data/book/text/text_editing/topics.glyph +33 -0
  76. data/book/text/text_editing/xml_fallback.glyph +73 -0
  77. data/book/text/troubleshooting/errors_command.glyph +0 -3
  78. data/book/text/troubleshooting/errors_generic.glyph +21 -6
  79. data/book/text/troubleshooting/errors_macro.glyph +11 -8
  80. data/book/text/troubleshooting/errors_parser.glyph +0 -3
  81. data/config.yml +60 -25
  82. data/glyph.gemspec +90 -36
  83. data/layouts/web/index.glyph +16 -0
  84. data/layouts/web/topic.glyph +15 -0
  85. data/layouts/web5/index.glyph +16 -0
  86. data/layouts/web5/topic.glyph +17 -0
  87. data/lib/glyph.rb +36 -49
  88. data/lib/glyph/analyzer.rb +253 -0
  89. data/lib/glyph/bookmark.rb +92 -0
  90. data/lib/glyph/commands.rb +9 -221
  91. data/lib/glyph/commands/add.rb +8 -0
  92. data/lib/glyph/commands/compile.rb +93 -0
  93. data/lib/glyph/commands/config.rb +38 -0
  94. data/lib/glyph/commands/init.rb +6 -0
  95. data/lib/glyph/commands/outline.rb +45 -0
  96. data/lib/glyph/commands/stats.rb +48 -0
  97. data/lib/glyph/commands/todo.rb +29 -0
  98. data/lib/glyph/config.rb +2 -0
  99. data/lib/glyph/document.rb +61 -30
  100. data/lib/glyph/interpreter.rb +2 -2
  101. data/lib/glyph/macro.rb +14 -5
  102. data/lib/glyph/macro_helpers.rb +280 -0
  103. data/lib/glyph/macro_validators.rb +37 -2
  104. data/lib/glyph/reporter.rb +182 -0
  105. data/lib/glyph/syntax_node.rb +37 -10
  106. data/lib/glyph/system_extensions.rb +8 -45
  107. data/lib/glyph/utils.rb +148 -0
  108. data/macros/core.rb +10 -15
  109. data/macros/filters.rb +4 -5
  110. data/macros/html/block.rb +46 -30
  111. data/macros/html/inline.rb +9 -35
  112. data/macros/html/structure.rb +59 -72
  113. data/macros/html5/block.rb +69 -0
  114. data/macros/html5/inline.rb +24 -0
  115. data/macros/html5/structure.rb +139 -0
  116. data/macros/xml.rb +1 -1
  117. data/spec/files/custom_command.rb +6 -0
  118. data/spec/files/custom_tasks.rake +6 -0
  119. data/spec/files/document_for_stats.glyph +12 -0
  120. data/spec/files/references.glyph +4 -0
  121. data/spec/files/web1.glyph +11 -0
  122. data/spec/files/web2.glyph +10 -0
  123. data/spec/files/web_doc.glyph +23 -0
  124. data/spec/lib/analyzer_spec.rb +137 -0
  125. data/spec/lib/bookmark_spec.rb +64 -0
  126. data/spec/lib/commands_spec.rb +30 -5
  127. data/spec/lib/document_spec.rb +49 -9
  128. data/spec/lib/glyph_spec.rb +21 -1
  129. data/spec/lib/macro_spec.rb +6 -6
  130. data/spec/lib/macro_validators_spec.rb +24 -0
  131. data/spec/lib/reporter_spec.rb +132 -0
  132. data/spec/macros/core_spec.rb +2 -3
  133. data/spec/macros/filters_spec.rb +2 -2
  134. data/spec/macros/html5_spec.rb +101 -0
  135. data/spec/macros/macros_spec.rb +16 -6
  136. data/spec/macros/web5_spec.rb +32 -0
  137. data/spec/macros/web_spec.rb +59 -0
  138. data/spec/macros/xml_spec.rb +1 -1
  139. data/spec/spec_helper.rb +24 -4
  140. data/spec/tasks/generate_spec.rb +54 -0
  141. data/spec/tasks/load_spec.rb +29 -3
  142. data/spec/tasks/project_spec.rb +21 -3
  143. data/styles/default.css +40 -4
  144. data/styles/pagination.css +59 -41
  145. data/tasks/generate.rake +110 -31
  146. data/tasks/load.rake +39 -7
  147. data/tasks/project.rake +9 -7
  148. metadata +115 -34
  149. data/book/images/glyph.png +0 -0
  150. data/book/images/glyph.svg +0 -351
  151. data/book/output/html/glyph.html +0 -4482
  152. data/book/output/html/images/document_generation.png +0 -0
  153. data/book/output/html/images/glyph.png +0 -0
  154. data/book/output/html/images/glyph.svg +0 -351
  155. data/book/output/pdf/glyph.pdf +4 -10254
  156. data/book/script/authors +0 -1
  157. data/book/script/changelog +0 -1
  158. data/book/script/license +0 -1
  159. data/book/script/readme +0 -1
  160. data/book/text/ref_config.glyph +0 -100
  161. data/book/text/ref_macros.glyph +0 -6
  162. data/book/text/troubleshooting/errors_intro.glyph +0 -3
Binary file
@@ -0,0 +1,29 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ xmlns:svg="http://www.w3.org/2000/svg"
6
+ xmlns="http://www.w3.org/2000/svg"
7
+ version="1.1"
8
+ width="388.73267"
9
+ height="439.99896"
10
+ id="svg2839">
11
+ <defs
12
+ id="defs2841" />
13
+ <g
14
+ transform="translate(-179.91938,-75.219847)"
15
+ id="layer1">
16
+ <path
17
+ d="m 332.9286,75.219847 8.85,0 c 12.225,1.8625 24.475,3.9125 36.3625,7.3875 8.225,3.325 17.2875,8.075 20.4875,16.9375 2.5,6.987503 4.825,14.412503 3.875,21.912503 -0.525,3.7875 -2.4875,8.0625 -6.475,9.1375 -6.8375,1.5375 -13.95,-1.125 -19.175,-5.5375 -9.875,-8.0875 -19.75,-16.175 -30.1125,-23.6375 -6.3,-4.350003 -13.2875,-8.375003 -17.575,-14.925003 -1.725,-3.7375 -1.85,-11.25 3.7625,-11.275 z"
18
+ id="path6"
19
+ style="fill:#000000" />
20
+ <path
21
+ d="m 411.6786,150.36985 c 28.3875,-3.8875 56.7125,-8.2 85.1,-12.0375 6.3625,-0.7375 12.7875,1.4125 17.925,5.125 9.6375,6.9125 19.25,13.9 28.375,21.5 3.525,3.0625 7.3375,6.05 9.5125,10.28749 -4.225,5.9 -11.75,7.7 -18.15,10.2875 -17.7625,5.575 -33.9125,15.2375 -48.95,26.0375 -3.3625,2.175 -6.9,4.9375 -11.1125,4.7125 -2.975,-0.525 -3.425,-4.25 -2.3,-6.5625 4.275,-10.2875 8.8,-20.475 13.4125,-30.625 1.5875,-3.925 3.475,-8.12499 2.75,-12.43749 -1.825,-3.1625 -4.7,-6.175 -8.1125,-7.475 -12.5375,-0.85 -25.0625,1 -37.525,2.2375 -50.6125,6.1375 -101.6125,11.3375 -150.975,24.66249 -9.525,2.1125 -18.8,6.7125 -28.775,5.5625 -4.55,-0.3875 -8.75,-2.2375 -12.925,-3.975 -3.8,9.3375 -7.7,18.6375 -11.425,28 -5.2625,13.1875 -10.9,26.525 -19.8875,37.6625 -2.725,3.175 -7.425,7.0875 -11.6875,4.2375 -5.0625,-4.2 -6.4125,-11.1625 -8.0875,-17.2 -1.95,-8.8375 -4.4,-19.5 2.0875,-27.1 9.1,-10.2125 18.025,-20.6125 25.925,-31.7875 3.7875,-5.0625 5.85,-11.24999 6.125,-17.54999 0.4,-4.6125 -0.8875,-9.9125 2.225,-13.8625 1.9125,-2.1875 4.9875,-0.5375 6.8,0.9125 6.425,5.0125 10.8875,12.5625 12.6,20.4875 52.5375,-5.7375 104.525,-15.5 157.075,-21.1 z"
22
+ id="path8"
23
+ style="fill:#000000" />
24
+ <path
25
+ d="m 393.3536,210.36984 c 7.9625,-3.2375 17.375,-5.25 25.35,-0.875 9.175,5.15 18.2125,10.6875 26.45,17.275 3.7125,3.15 7.9875,6.8875 8,12.1875 0.125,4.475 -4.1625,7.25 -7.975,8.375 -12.75,3.8625 -23.625,11.8875 -33.9,20.0875 -13.1125,9.5625 -26.0875,19.325 -38.6875,29.55 8.125,9.025 14.175,19.8875 17.0875,31.7125 17.8875,-2.225 35.8375,-4.0625 53.7875,-5.725 23.2875,-3.3 46.5,-7.1125 69.6125,-11.5 6.1125,-1.5875 12.9125,-3.3875 18.925,-0.4375 12.325,5.7 24.0875,12.975 33.8,22.55 3.5875,3.2125 4.2,10.425 -0.575,12.7875 -4.9625,2.2125 -10.525,0.925 -15.7125,0.5 -22.925,-2.3375 -45.9625,-3.675 -68.9875,-4.4 -28.975,1.75 -58,3.125 -86.875,6.2125 1.3625,9.2625 2.05,18.6 2.475,27.95 3.0375,33.9 4.175,68.725 -4.725,101.8875 -2.35,9.3875 -5.1,18.9125 -10.475,27.075 -3.225,4.8375 -8.15,9.2625 -14.2125,9.625 -4.975,0.225 -9.2125,-2.9 -12.5875,-6.2 -16.25,-15.7125 -34.375,-29.325 -53.025,-42.05 -5.1625,-3.575 -10.7625,-6.6875 -15,-11.4125 2.075,-2.0625 5.1,-2.8 7.9375,-2.175 15.95,2.9375 31.8125,6.3 47.7125,9.4375 6.2625,0.5875 14.825,1.175 18.4375,-5.175 5.275,-9.575 6.0125,-20.775 7.65,-31.375 4.025,-25.0375 2.1625,-50.525 -0.6375,-75.575 -30.1125,2.425 -60.175,6.2 -89.7625,12.3875 -17.3375,3.9625 -35,6.3125 -52.35,10.2375 -5,1.5625 -10.4625,4.3875 -15.675,1.825 -9.95,-4.3375 -20.7625,-8.6875 -27.5875,-17.55 -3.2625,-3.6375 -2.5,-11.475 3.5,-11.225 24.25,-0.425 48.55,-1.125 72.6625,-3.95 25.1125,-3.2875 50.3375,-5.6125 75.525,-8.2375 9.9125,-0.85 19.7875,-2.3 29.75,-2.725 -2.9,-11.5625 -6.4125,-23 -11.325,-33.875 -1.3625,-3.2125 -3.0625,-6.3875 -3.4875,-9.9 -0.15,-2.8625 3.0125,-5.3125 5.7375,-4.2625 4.9,1.675 9.2,4.7375 13.0375,8.1625 10.8375,-16.0875 21.8375,-32.075 33.1375,-47.8375 2.125,-2.7625 2.775,-7.225 0.0375,-9.8125 -4,-3.875 -10.325,-4.425 -15.4,-2.575 -21.4375,7.7125 -42.825,15.5375 -64.375,22.9375 -5.3,2.3875 -10.6875,4.975 -16.6125,5.15 -10.325,0.775 -20.125,-4.7 -26.7375,-12.3125 -2.15,-2.5125 -3.925,-5.8625 -3.075,-9.25 1.0625,-2.9625 4.65,-3.3875 7.3625,-3.4 15.25,0.175 30.925,1.0375 45.6875,-3.575 22.1875,-6.3 44.325,-12.875 66.1,-20.525 z"
26
+ id="path10"
27
+ style="fill:#000000" />
28
+ </g>
29
+ </svg>
@@ -0,0 +1,11 @@
1
+ GLI.desc 'Generates a specific file required for Glyph releases'
2
+ arg_name "file_name"
3
+ command :generate do |c|
4
+ c.action do |global_options,options,args|
5
+ if args.blank? then
6
+ raise RuntimeError, "You must specify a file to generate"
7
+ else
8
+ Glyph.run 'custom:generate', args[0]
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,127 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
4
+ head[
5
+ <title>Glyph - Rapid Document Authoring Framework</title>
6
+ <meta name="author" content="Fabio Cevasco" />
7
+ <meta name="copyright" content="Fabio Cevasco" />
8
+ <meta name="robots" content="all, follow" />
9
+ <meta name="Revisit-After" content="2 Days" />
10
+ <meta name="language" content="en" />
11
+ <meta name="target_country" content="en-us" />
12
+ <meta name="country" content="United States" />
13
+ <meta name="description" content="H3RALD - Fabio Cevasco's Web Site" />
14
+ <meta name="keywords" content="h3rald, fabio cevasco, glyph, technical writing, html, html5, book" />
15
+ <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
16
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
17
+ <meta content="44.388041;9.073248" name="ICBM" />
18
+
19
+ <link href="/css/main.css" media="all" rel="stylesheet" type="text/css" />
20
+ style[default.css]
21
+
22
+ ]
23
+ <body>
24
+ <div id="wrapper">
25
+ <a href="http://github.com/h3rald/h3rald"><img style="position: absolute; top: 0; right: 0; border: 0;" src="http://s3.amazonaws.com/github/ribbons/forkme_right_red_aa0000.png" alt="Fork me on GitHub" /></a>
26
+ <div id="header">
27
+ <!--\[if lte IE 6\]>
28
+ <div id="ie-warning">
29
+ This site is not compatible with Internet Explorer 6 or lower. You should consider using a more modern browser for a better &ndash; and <em>safer</em> &ndash; web experience. \[<a href="http://browsehappy.com/browsers/">Read More...</a>\]
30
+ </div>
31
+ <!\[endif\]-->
32
+ <!-- HEADER START -->
33
+ <div id="header-container">
34
+ <div id="header-left">
35
+ <h1><span class="logo"></span><a id="logo" href="/" title="H3RALD"></a></h1>
36
+ </div>
37
+ <div id="header-right">
38
+ <ul id="navigation">
39
+ <li><span class="preload nav-archives"></span><a id="nav-archives" href="/archives/" title="ARCHIVES"></a></li>
40
+ <li><span class="preload nav-projects"></span><a id="nav-projects" href="/projects/" title="PROJECTS"></a></li>
41
+ <li><span class="preload nav-about"></span><a id="nav-about" href="/about/" title="ABOUT"></a></li>
42
+ <li><span class="preload nav-other"></span><a id="nav-other" href="/other/" title="OTHER"></a></li>
43
+ </ul>
44
+ </div>
45
+ </div>
46
+ </div>
47
+ <!-- HEADER END -->
48
+ <div class="ribbon">
49
+ </div>
50
+ <!-- MAIN START -->
51
+ <div id="main">
52
+ <!-- CONTAINER START -->
53
+ <div id="container">
54
+ <!-- CONTENT START -->
55
+ <div id="content" class="clearfixstandard">
56
+ <div id="page-links">
57
+ <span><script type="text/javascript" src="http://w.sharethis.com/button/sharethis.js#publisher=6e34d60c-b14e-4c19-9b2f-7c35a9f0ab09&amp;type=website&amp;linkfg=%23a4282d"></script></span>
58
+ </div>
59
+
60
+ <h2>Glyph &mdash; Rapid Document Authoring Framework</h2>
61
+ <hr />
62
+ <div id="content-body">
63
+ toc[]
64
+ </div>
65
+ <div id="content-footer">
66
+ <div class="share">
67
+ <script type="text/javascript"><!--
68
+ google_ad_client = "pub-2871497824158668";
69
+ /* 728x90, h3rald 8.0 */
70
+ google_ad_slot = "0081634732";
71
+ google_ad_width = 728;
72
+ google_ad_height = 90;
73
+ //-->
74
+ </script>
75
+ <script type="text/javascript"
76
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
77
+ </script>
78
+ </div>
79
+ </div>
80
+ </div>
81
+ <!-- CONTENT END -->
82
+ </div>
83
+ <!-- CONTAINER END -->
84
+ </div>
85
+ <div class="ribbon"></div>
86
+ <!-- MAIN END -->
87
+ <div id="border-bottom">
88
+ <div id="services">
89
+ <div class ="footer-left">
90
+ <div id="backtype">
91
+ <h3><span class="s-opinions preload"></span><a id="s-opinions" href="http://www.backtype.com/h3rald" title="Opinions"></a></h3>
92
+ </div>
93
+ </div>
94
+ <div class ="footer-center">
95
+ <div id="twitter">
96
+ <h3><span class="s-tweets preload"></span><a id="s-tweets" href="http://www.twitter.com/h3rald" title="Tweets"></a></h3>
97
+ </div>
98
+ </div>
99
+ <div class ="footer-right">
100
+ <div id="delicious">
101
+ <h3><span class="s-bookmarks preload"></span><a id="s-bookmarks" href="http://www.delicious.com/h3rald" title="Bookmarks"></a></h3>
102
+ </div>
103
+ </div>
104
+ </div> <!-- SERVICES END -->
105
+ </div>
106
+ <div class="clearfooter"></div>
107
+ </div> <!-- WRAPPER END -->
108
+ <div id="footer">
109
+ <div id="footer-container">
110
+ <div class="footer-div">
111
+ H3RALD Web Site v8.0.0 <em>"xStatic"</em> &mdash; &copy; 2004-2010 <strong>Fabio Cevasco</strong> &mdash; <a class="link" href="http://creativecommons.org/licenses/by-nc-nd/3.0/us/">Some rights reserved</a> \| <a href="http://validator.w3.org/check?uri=referer" class="link">XHTML 1.1</a> \| <a href="http://jigsaw.w3.org/css-validator/validator?uri=\.$[output.web.base]index\.$[output.web.extension]" class="link">CSS 2.1</a>
112
+ </div>
113
+ </div> <!-- END FOOTER CONTAINER-->
114
+ </div> <!-- END FOOTER -->
115
+ <!-- Start of StatCounter Code -->
116
+ <script type="text/javascript">
117
+ var sc_project=6193656;
118
+ var sc_invisible=1;
119
+ var sc_security="57f7ee2a";
120
+ </script>
121
+ <script type="text/javascript" src="http://www.statcounter.com/counter/counter_xhtml.js"></script>
122
+ <!-- End of StatCounter Code -->
123
+ <script src='http://www.google-analytics.com/ga.js' type='text/javascript'></script>
124
+ <script src="http://www.google.com/jsapi?key=ABQIAAAA6h3j8Jri5D_da53UPbEbThRlq2n1sm52B5HDRR5tm6o8XM18FhTKn3v155RpPeD0kWnWG81QEhhifQ" type="text/javascript"></script>
125
+ <script src="/js/compressed.js" type="text/javascript"></script>
126
+ </body>
127
+ </html>
@@ -0,0 +1,129 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
4
+ head[
5
+ <title>{{title}} - Glyph</title>
6
+ <meta name="author" content="Fabio Cevasco" />
7
+ <meta name="copyright" content="Fabio Cevasco" />
8
+ <meta name="robots" content="all, follow" />
9
+ <meta name="Revisit-After" content="2 Days" />
10
+ <meta name="language" content="en" />
11
+ <meta name="target_country" content="en-us" />
12
+ <meta name="country" content="United States" />
13
+ <meta name="description" content="H3RALD - Fabio Cevasco's Web Site" />
14
+ <meta name="keywords" content="h3rald, fabio cevasco, glyph, technical writing, html, html5, book" />
15
+ <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" />
16
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
17
+ <meta content="44.388041;9.073248" name="ICBM" />
18
+
19
+ <link href="/css/main.css" media="all" rel="stylesheet" type="text/css" />
20
+ style[default.css]
21
+
22
+ ]
23
+ <body>
24
+ <div id="wrapper">
25
+ <a href="http://github.com/h3rald/h3rald"><img style="position: absolute; top: 0; right: 0; border: 0;" src="http://s3.amazonaws.com/github/ribbons/forkme_right_red_aa0000.png" alt="Fork me on GitHub" /></a>
26
+ <div id="header">
27
+ <!--\[if lte IE 6\]>
28
+ <div id="ie-warning">
29
+ This site is not compatible with Internet Explorer 6 or lower. You should consider using a more modern browser for a better &ndash; and <em>safer</em> &ndash; web experience. \[<a href="http://browsehappy.com/browsers/">Read More...</a>\]
30
+ </div>
31
+ <!\[endif\]-->
32
+ <!-- HEADER START -->
33
+ <div id="header-container">
34
+ <div id="header-left">
35
+ <h1><span class="logo"></span><a id="logo" href="/" title="H3RALD"></a></h1>
36
+ </div>
37
+ <div id="header-right">
38
+ <ul id="navigation">
39
+ <li><span class="preload nav-archives"></span><a id="nav-archives" href="/archives/" title="ARCHIVES"></a></li>
40
+ <li><span class="preload nav-projects"></span><a id="nav-projects" href="/projects/" title="PROJECTS"></a></li>
41
+ <li><span class="preload nav-about"></span><a id="nav-about" href="/about/" title="ABOUT"></a></li>
42
+ <li><span class="preload nav-other"></span><a id="nav-other" href="/other/" title="OTHER"></a></li>
43
+ </ul>
44
+ </div>
45
+ </div>
46
+ </div>
47
+ <!-- HEADER END -->
48
+ <div class="ribbon">
49
+ </div>
50
+ <!-- MAIN START -->
51
+ <div id="main">
52
+ <!-- CONTAINER START -->
53
+ <div id="container">
54
+ <!-- CONTENT START -->
55
+ <div id="content" class="clearfixstandard">
56
+ <div id="page-links">
57
+ <span><script type="text/javascript" src="http://w.sharethis.com/button/sharethis.js#publisher=6e34d60c-b14e-4c19-9b2f-7c35a9f0ab09&amp;type=website&amp;linkfg=%23a4282d"></script></span>
58
+ </div>
59
+
60
+ <h2>{{title}}</h2>
61
+ <hr />
62
+ <div id="content-body">
63
+ navigation[{{id}}]
64
+ {{contents}}
65
+ navigation[{{id}}]
66
+ </div>
67
+ <div id="content-footer">
68
+ <div class="share">
69
+ <script type="text/javascript"><!--
70
+ google_ad_client = "pub-2871497824158668";
71
+ /* 728x90, h3rald 8.0 */
72
+ google_ad_slot = "0081634732";
73
+ google_ad_width = 728;
74
+ google_ad_height = 90;
75
+ //-->
76
+ </script>
77
+ <script type="text/javascript"
78
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
79
+ </script>
80
+ </div>
81
+ </div>
82
+ </div>
83
+ <!-- CONTENT END -->
84
+ </div>
85
+ <!-- CONTAINER END -->
86
+ </div>
87
+ <div class="ribbon"></div>
88
+ <!-- MAIN END -->
89
+ <div id="border-bottom">
90
+ <div id="services">
91
+ <div class ="footer-left">
92
+ <div id="backtype">
93
+ <h3><span class="s-opinions preload"></span><a id="s-opinions" href="http://www.backtype.com/h3rald" title="Opinions"></a></h3>
94
+ </div>
95
+ </div>
96
+ <div class ="footer-center">
97
+ <div id="twitter">
98
+ <h3><span class="s-tweets preload"></span><a id="s-tweets" href="http://www.twitter.com/h3rald" title="Tweets"></a></h3>
99
+ </div>
100
+ </div>
101
+ <div class ="footer-right">
102
+ <div id="delicious">
103
+ <h3><span class="s-bookmarks preload"></span><a id="s-bookmarks" href="http://www.delicious.com/h3rald" title="Bookmarks"></a></h3>
104
+ </div>
105
+ </div>
106
+ </div> <!-- SERVICES END -->
107
+ </div>
108
+ <div class="clearfooter"></div>
109
+ </div> <!-- WRAPPER END -->
110
+ <div id="footer">
111
+ <div id="footer-container">
112
+ <div class="footer-div">
113
+ H3RALD Web Site v8.0.0 <em>"xStatic"</em> &mdash; &copy; 2004-2010 <strong>Fabio Cevasco</strong> &mdash; <a class="link" href="http://creativecommons.org/licenses/by-nc-nd/3.0/us/">Some rights reserved</a> \| <a href="http://validator.w3.org/check?uri=referer" class="link">XHTML 1.1</a> \| <a href="http://jigsaw.w3.org/css-validator/validator?uri=\.$[output.web.base]{{id}}\.$[output.web.extension]" class="link">CSS 2.1</a>
114
+ </div>
115
+ </div> <!-- END FOOTER CONTAINER-->
116
+ </div> <!-- END FOOTER -->
117
+ <!-- Start of StatCounter Code -->
118
+ <script type="text/javascript">
119
+ var sc_project=6193656;
120
+ var sc_invisible=1;
121
+ var sc_security="57f7ee2a";
122
+ </script>
123
+ <script type="text/javascript" src="http://www.statcounter.com/counter/counter_xhtml.js"></script>
124
+ <!-- End of StatCounter Code -->
125
+ <script src='http://www.google-analytics.com/ga.js' type='text/javascript'></script>
126
+ <script src="http://www.google.com/jsapi?key=ABQIAAAA6h3j8Jri5D_da53UPbEbThRlq2n1sm52B5HDRR5tm6o8XM18FhTKn3v155RpPeD0kWnWG81QEhhifQ" type="text/javascript"></script>
127
+ <script src="/js/compressed.js" type="text/javascript"></script>
128
+ </body>
129
+ </html>
@@ -0,0 +1,26 @@
1
+ -----
2
+ permalink: glyph
3
+ filters_pre:
4
+ - erb
5
+ - redcloth
6
+ title: "Project: Glyph"
7
+ type: project
8
+ github: glyph
9
+ links:
10
+ - "Repository": http://www.github.com/h3rald/glyph/
11
+ - "Bug Tracking": http://www.github.com/h3rald/glyph/issues
12
+ - "Development Wiki": http://wiki.github.com/h3rald/glyph
13
+ - "Download": http://www.rubygems.org/gems/glyph
14
+ - "Book (PDF)": http://github.com/downloads/h3rald/glyph/glyph.pdf
15
+ - "Book (Web)": http://www.h3rald.com/glyph/book/
16
+ - "Docs": http://rubydoc.info/gems/glyph/
17
+ - "User Group": http://groups.google.com/group/glyph-framework
18
+ status: Active
19
+ version: %[Glyph::VERSION]
20
+ -----
21
+
22
+ <%= render 'project_data', :tag => 'glyph' %>
23
+
24
+ {{contents}}
25
+
26
+ <%= render 'project_updates', :tag => 'glyph' %>
@@ -22,16 +22,15 @@ macro :ref_error do
22
22
  end
23
23
 
24
24
  macro :"%>" do
25
- interpret "=>[#m_#{value.gsub(/[^a-z0-1_-]/, '_')}|#{value}] macro"
25
+ interpret "=>[#m_#{value.gsub(/[^a-z0-1_-]/, '_')}|code[#{value}]] macro"
26
26
  end
27
27
 
28
28
  macro :"#>" do
29
- interpret "=>[#c_#{value}|#{value}] command"
29
+ interpret "=>[#c_#{value}|code[#{value}]] command"
30
30
  end
31
31
 
32
32
  macro :"$>" do
33
- val = value.gsub /\./, "_"
34
- interpret "=>[#s_#{val}|#{value}] setting"
33
+ interpret "=>[#s_#{value.gsub(/\./, '_')}|code[#{value}]] setting"
35
34
  end
36
35
 
37
36
  macro :default do
@@ -68,6 +67,19 @@ macro :option do
68
67
  }
69
68
  end
70
69
 
70
+ macro :long_option do
71
+ ident = param(0)
72
+ desc = param(1)
73
+ %{
74
+ <tr>
75
+ <td><code>--#{ident}</code></td>
76
+ <td>
77
+ #{desc}
78
+ </td>
79
+ </tr>
80
+ }
81
+ end
82
+
71
83
  macro :values do
72
84
  %{*Possible Values:* @#{value}@}
73
85
  end
@@ -118,7 +130,7 @@ macro :ref_macro do
118
130
  ]} if raw_attr(:remarks)
119
131
  interpret %{
120
132
  section[
121
- @title[<code>#{m_name}</code>]
133
+ @title[#{m_name}]
122
134
  @id[m_#{m_name.gsub(/[^a-z0-1_-]/, '_')}]
123
135
  txt[
124
136
  #{m_value}
@@ -137,7 +149,7 @@ end
137
149
  macro :ref_config do
138
150
  m_name = param(0)
139
151
  m_value = param(1)
140
- default = Glyph::SYSTEM_CONFIG.get(m_name).to_yaml.gsub(/^---/, '')
152
+ default = Glyph::SYSTEM_CONFIG.get(m_name).inspect
141
153
  default = "nil" if default.blank?
142
154
  interpret %{tr[
143
155
  td[code[#{m_name}] #[s_#{m_name.gsub(/\./, '_').gsub(/\*/,'')}]]
@@ -150,12 +162,20 @@ macro :ref_config do
150
162
  ]}
151
163
  end
152
164
 
165
+ macro :out_cfg do
166
+ setting = param(0)
167
+ snippet = "&[o_#{setting.gsub(/^.+?\./, '')}]"
168
+ interpret %{ref_config[output.#{setting}|
169
+ #{snippet}
170
+ ]}
171
+ end
172
+
153
173
  macro :config_table do
154
174
  interpret %{table[
155
175
  tr[
156
176
  th[Name]
157
177
  th[Description]
158
- th[Default (YAML)]
178
+ th[Default]
159
179
  ]
160
180
  #{value}
161
181
  ]}
@@ -0,0 +1,52 @@
1
+ namespace :custom do
2
+ task :generate, [:file] do |t, args|
3
+ generate = lambda do |source, destination|
4
+ Glyph.info "Generating #{destination}..."
5
+ Glyph.compile Glyph::PROJECT/"text/#{source}.glyph", Glyph::PROJECT/"../#{destination}.textile"
6
+ end
7
+ files = {
8
+ :AUTHORS => :acknowledgements,
9
+ :CHANGELOG => :changelog,
10
+ :LICENSE => :license,
11
+ :README => :introduction
12
+ }
13
+ arg = args[:file].upcase.to_sym
14
+ raise RuntimeError, "Unknown file '#{arg}.glyph'" unless files.keys.include? arg
15
+ generate.call files[arg], arg
16
+ Glyph.info "Done."
17
+ end
18
+ end
19
+
20
+ namespace :generate do
21
+ desc "Create output for h3rald.com integration"
22
+ task :h3rald => [:web] do
23
+ dir = Glyph::PROJECT/'output/h3rald'
24
+ (dir/"glyph/book").mkpath
25
+ # Copy files in subdir
26
+ (dir).find do |i|
27
+ if i.file? then
28
+ next if
29
+ i.to_s.match(Regexp.escape(dir/'glyph')) ||
30
+ i.to_s.match(Regexp.escape(dir/'images')) ||
31
+ i.to_s.match(Regexp.escape(dir/'styles'))
32
+ dest = dir/"glyph/book/#{i.relative_path_from(Glyph::PROJECT/dir)}"
33
+ src = i.to_s
34
+ Pathname.new(dest).parent.mkpath
35
+ file_copy src, dest
36
+ end
37
+ end
38
+ # Remove files
39
+ dir.children.each do |c|
40
+ unless [dir/'glyph', dir/'images', dir/'styles'].include? c then
41
+ c.directory? ? c.rmtree : c.unlink
42
+ end
43
+ end
44
+ (dir/'images/glyph/glyph.eps').unlink
45
+ (dir/'images/glyph/glyph.svg').unlink
46
+ # Create project page
47
+ project = Glyph.filter %{layout:project[
48
+ @contents[#{file_load(Glyph::PROJECT/'text/introduction.glyph')}]
49
+ ]}
50
+ file_write dir/"glyph.textile", project
51
+ end
52
+ end