glyph 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
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