hyla 1.0.7.pre.2 → 1.0.7.pre.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +8 -8
  2. data/.gitignore +2 -0
  3. data/README.adoc +2 -2
  4. data/Rakefile +93 -24
  5. data/config.yaml +49 -0
  6. data/documentation/developer.adoc +6 -6
  7. data/documentation/imgkit.adoc +44 -0
  8. data/documentation/index.txt +3 -0
  9. data/documentation/introduction.adoc +8 -335
  10. data/documentation/prerequisites.adoc +1 -1
  11. data/documentation/scenario.adoc +320 -0
  12. data/lib/hyla/commands/generate.rb +11 -2
  13. data/lib/hyla/configuration.rb +10 -1
  14. data/lib/hyla/project.rb +1 -1
  15. data/lib/resources/assets/cover/cover.html +62 -0
  16. data/lib/resources/assets/cover/cover.png +0 -0
  17. data/lib/resources/{cover.slim → assets/cover/cover.slim} +0 -0
  18. data/lib/resources/assets/cover/image/1153872-redhat-backroung.png +0 -0
  19. data/lib/resources/assets/cover/image/1156515-Logo_RH_RGB_Reverse.png +0 -0
  20. data/lib/resources/assets/cover/image/1156524-bg_redhat.png +0 -0
  21. data/lib/resources/assets/cover/new_cover.slim +95 -0
  22. data/lib/resources/assets/revealjs-redhat/image/1156515-Logo_RH_RGB_Reverse.png +0 -0
  23. data/lib/resources/assets/revealjs-redhat/image/1156524-bg_redhat.png +0 -0
  24. data/lib/resources/assets/revealjs-redhat/lib/css/font-awesome-4.3.0.css +2893 -0
  25. data/lib/resources/assets/revealjs-redhat/lib/css/gpe.css +705 -0
  26. data/lib/resources/assets/revealjs-redhat/lib/css/offline-v2.css +3646 -0
  27. data/lib/resources/assets/revealjs-redhat/lib/css/print/paper.css +176 -0
  28. data/lib/resources/assets/revealjs-redhat/lib/css/print/pdf.css +190 -0
  29. data/lib/resources/assets/revealjs-redhat/lib/css/theme-output.css +1358 -0
  30. data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/FontAwesome.otf +0 -0
  31. data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.eot +0 -0
  32. data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.svg +565 -0
  33. data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.ttf +0 -0
  34. data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.woff +0 -0
  35. data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.woff2 +0 -0
  36. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-bold.eot +0 -0
  37. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-bold.svg +637 -0
  38. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-bold.ttf +0 -0
  39. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-bold.woff +0 -0
  40. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-light.eot +0 -0
  41. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-light.svg +2121 -0
  42. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-light.ttf +0 -0
  43. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-light.woff +0 -0
  44. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-regular.eot +0 -0
  45. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-regular.svg +637 -0
  46. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-regular.ttf +0 -0
  47. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-regular.woff +0 -0
  48. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass.css +32 -0
  49. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass.css-TODO +12 -0
  50. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_bold-web.eot +0 -0
  51. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_bold-web.svg +454 -0
  52. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_bold-web.ttf +0 -0
  53. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_bold-web.woff +0 -0
  54. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_regular-web.eot +0 -0
  55. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_regular-web.svg +454 -0
  56. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_regular-web.ttf +0 -0
  57. data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_regular-web.woff +0 -0
  58. data/lib/resources/assets/revealjs-redhat/lib/js/head.min.js +131 -0
  59. data/lib/resources/assets/revealjs-redhat/lib/js/reveal.min.js +1279 -0
  60. data/lib/resources/assets/revealjs-redhat/lib/plugin/highlight/highlight.js +25 -0
  61. data/lib/resources/assets/revealjs-redhat/lib/plugin/markdown/markdown.js +320 -0
  62. data/lib/resources/assets/revealjs-redhat/lib/plugin/markdown/marked.js +37 -0
  63. data/lib/resources/assets/revealjs-redhat/lib/plugin/notes/notes.html +387 -0
  64. data/lib/resources/assets/revealjs-redhat/lib/plugin/notes/notes.js +117 -0
  65. data/lib/resources/assets/revealjs-redhat/lib/plugin/zoom-js/zoom.js +258 -0
  66. data/lib/resources/assets/revealjs/css/theme/default.css +121 -0
  67. data/lib/resources/assets/revealjs/css/theme/gpe.css +85 -86
  68. data/lib/resources/assets/sass/gpe.scss +15 -14
  69. data/lib/resources/assets/sass/gpe2.scss +598 -0
  70. data/lib/resources/assets/sass/{_overpass.scss → overpass.scss} +0 -0
  71. data/lib/resources/backends/slim/revealjs-redhat/block_admonition.html.slim +13 -0
  72. data/lib/resources/backends/slim/revealjs-redhat/block_audio.html.slim +6 -0
  73. data/lib/resources/backends/slim/revealjs-redhat/block_colist.html.slim +20 -0
  74. data/lib/resources/backends/slim/revealjs-redhat/block_dlist.html.slim +53 -0
  75. data/lib/resources/backends/slim/revealjs-redhat/block_example.html.slim +4 -0
  76. data/lib/resources/backends/slim/revealjs-redhat/block_floating_title.html.slim +1 -0
  77. data/lib/resources/backends/slim/revealjs-redhat/block_image.html.slim +15 -0
  78. data/lib/resources/backends/slim/revealjs-redhat/block_listing.html.slim +31 -0
  79. data/lib/resources/backends/slim/revealjs-redhat/block_literal.html.slim +4 -0
  80. data/lib/resources/backends/slim/revealjs-redhat/block_math.html.slim +10 -0
  81. data/lib/resources/backends/slim/revealjs-redhat/block_olist.html.slim +9 -0
  82. data/lib/resources/backends/slim/revealjs-redhat/block_open.html.slim +15 -0
  83. data/lib/resources/backends/slim/revealjs-redhat/block_page_break.html.slim +1 -0
  84. data/lib/resources/backends/slim/revealjs-redhat/block_paragraph.html.slim +16 -0
  85. data/lib/resources/backends/slim/revealjs-redhat/block_pass.html.slim +1 -0
  86. data/lib/resources/backends/slim/revealjs-redhat/block_preamble.html.slim +6 -0
  87. data/lib/resources/backends/slim/revealjs-redhat/block_quote.html.slim +14 -0
  88. data/lib/resources/backends/slim/revealjs-redhat/block_ruler.html.slim +1 -0
  89. data/lib/resources/backends/slim/revealjs-redhat/block_sidebar.html.slim +5 -0
  90. data/lib/resources/backends/slim/revealjs-redhat/block_table.html.slim +45 -0
  91. data/lib/resources/backends/slim/revealjs-redhat/block_toc.html.slim +12 -0
  92. data/lib/resources/backends/slim/revealjs-redhat/block_ulist.html.slim +25 -0
  93. data/lib/resources/backends/slim/revealjs-redhat/block_verse.html.slim +14 -0
  94. data/lib/resources/backends/slim/revealjs-redhat/block_video.html.slim +27 -0
  95. data/lib/resources/backends/slim/revealjs-redhat/document.html.slim +162 -0
  96. data/lib/resources/backends/slim/revealjs-redhat/embedded.html.slim +9 -0
  97. data/lib/resources/backends/slim/revealjs-redhat/helpers.rb +8 -0
  98. data/lib/resources/backends/slim/revealjs-redhat/inline_anchor.html.slim +11 -0
  99. data/lib/resources/backends/slim/revealjs-redhat/inline_break.html.slim +2 -0
  100. data/lib/resources/backends/slim/revealjs-redhat/inline_button.html.slim +1 -0
  101. data/lib/resources/backends/slim/revealjs-redhat/inline_callout.html.slim +7 -0
  102. data/lib/resources/backends/slim/revealjs-redhat/inline_footnote.html.slim +6 -0
  103. data/lib/resources/backends/slim/revealjs-redhat/inline_image.html.slim +24 -0
  104. data/lib/resources/backends/slim/revealjs-redhat/inline_indexterm.html.slim +2 -0
  105. data/lib/resources/backends/slim/revealjs-redhat/inline_kbd.html.slim +8 -0
  106. data/lib/resources/backends/slim/revealjs-redhat/inline_menu.html.slim +15 -0
  107. data/lib/resources/backends/slim/revealjs-redhat/inline_quoted.html.slim +22 -0
  108. data/lib/resources/backends/slim/revealjs-redhat/section.html.slim +23 -0
  109. data/lib/resources/backends/slim/revealjs/section.html.slim +2 -2
  110. data/lib/templates/_config.yaml +28 -8
  111. data/lib/templates/sample/slideshow_revealjs.adoc +21 -0
  112. metadata +97 -6
  113. data/.rakeTasks +0 -7
  114. data/.travis.yml +0 -10
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MjNjM2MzODViOTJjMGJmMzA5MDZmYTE3N2FmZGFiZmQ4NDY5ZThhYQ==
4
+ YzBmZWMxMGYwMDM2MzEwNmI5NzMzOWJiYzQ4OTIyOTEyMjc2ZmI2MA==
5
5
  data.tar.gz: !binary |-
6
- YWYzNmY3N2Q3YThmMGVjYmIyZjVjNDJhZTFlMzllMGViNTAyM2EzOQ==
6
+ ZDQ4NTQ1MzE5ZWZhYmM4M2Q5Njg0ZTIxZTBkYThlN2JmZTlkNWM5Ng==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- NDAwMjRhZjlkNzczMDM3NmRmZWE5MjUyMDE0MTg4ZDQzNjZiZWQzMWJlZDYz
10
- YjgwZDMyNWMyMzBlMjRhOTM3ZDdlM2RjYTVjNTNiODI4NTFmNmZmYjlmODgw
11
- ZmVjYzlmMGMxNDFlN2E0NDhiY2Y3NDI1MGQyMDBiODNmMzdmODQ=
9
+ OGVmZGM2M2FlNjI0NjE4MGYyMzNjYTE5NWYyNmE2OWQ2OTZmMWI4NWFjODFh
10
+ MWFmYzIxYzQxNDhhNzVjNWFhMTE0ZmMzNjVjNjk0ZTAzZTM5NDBjOWYwY2Y0
11
+ ZWI1OGYzNDMxYjQ2MjU1NzdiNzIwNjI4YjdjYzAwOWRiNjEwNDc=
12
12
  data.tar.gz: !binary |-
13
- NmJlMzcxYThhODcyOTFmMmU1ZmQ5NDkzZDUzMmUyNmYyZDU5OTU4Mzk0ODc4
14
- ODA5MGM5YTU4ZjBhMWIwNmY1MGQxY2I0ODVkNDIwNzgyZDdhZmU1YTg0ZjZi
15
- ZTExYmJlMGM1ZGQ0N2YxMTMwM2YxM2E5YWMwOWZmY2MzODI5NWQ=
13
+ YWJlZWM2N2M1OTEwZTVkY2E5MjdkMDM4MTdiYjdiMjRlNzY5MGFjMWIwMmQ0
14
+ NDYyYzkxZDNlYTgyNGI0ODcwZjAzZGIzM2RkNWVkNzc4MzM4ZGMyMDFmMjVh
15
+ MzhiYzNjZGI0Yjc1MDQ1NTg4MTQ5NzRkYzM2M2ZmODNhM2M2MDc=
data/.gitignore CHANGED
@@ -3,6 +3,8 @@
3
3
  **/lib/resources/assets/sass/.sass-cache/
4
4
  **/lib/resources/assets/sass/styles
5
5
 
6
+ gh-pages/
7
+
6
8
  *.gem
7
9
  *.rbc
8
10
  *.lock
@@ -10,7 +10,7 @@
10
10
  image:https://raw.github.com/cmoulliard/hyla/master/documentation/image/hyla_frog.jpg[Hyla, 100, 100, role="left"] **Hyla** is a Ruby command line tool to create a new
11
11
  documentation/training/blog/static web site project, add artefacts (articles, blog, audio, video, content, code source, ...), render it in HTML, SlideShow, ... using asciidoc(tor) as markup language.
12
12
 
13
- Until now, hyla looks like asciidoctor client but is is more similar to Jekyll on the principle but here we support 'asciidoc, asciidoctor' formats and not markdown.
13
+ Until now, hyla looks like asciidoctor client but it is more similar to Jekyll on the principle but here we support 'asciidoc, asciidoctor' formats and not markdown.
14
14
 
15
15
  The tool allows to :
16
16
 
@@ -83,7 +83,7 @@ Issue tracker (GitHub):: {issues}
83
83
 
84
84
  == Changelog
85
85
 
86
- === v1.0.7 - @cmoulliard
86
+ === v1.0.7 (2015-03-xx) - @cmoulliard
87
87
 
88
88
  Enhancements / Improvements::
89
89
 
data/Rakefile CHANGED
@@ -1,28 +1,13 @@
1
1
  libdir = File.expand_path("../lib", __FILE__)
2
2
  $LOAD_PATH.unshift(libdir) unless $LOAD_PATH.include?(libdir)
3
3
 
4
- #require 'compass'
5
- #require 'compass/sass_compiler'
6
-
7
- # Dir["#{dir}/*.scss"].select do | f |
8
- # p "File : #{f}"
9
- # Compass.add_configuration({
10
- # :sass_dir => '.',
11
- # :css_dir => 'styles',
12
- # :fonts_dir => 'fonts',
13
- # :output_style => :compressed
14
- # }, 'alwaysmin' # A name for the configuration, can be anything you want
15
- # )
16
- # Compass.sass_compiler.compile(f.to_s, '#{f.to_s}.css')
17
- # end
18
-
19
4
  require 'rubygems'
20
5
  require 'rake'
21
6
  require 'rake/testtask'
22
- require 'bundler/version'
7
+ # require 'bundler/version'
23
8
  require 'sass'
24
9
  require 'hyla/configuration'
25
- require 'font-awesome-sass'
10
+ # require 'font-awesome-sass'
26
11
 
27
12
  #############################################################################
28
13
  #
@@ -54,6 +39,10 @@ def sass_assets
54
39
  Hyla::Configuration.assets
55
40
  end
56
41
 
42
+ def revealjs_redhat_css_theme_assets
43
+ [Hyla::Configuration.assets, 'revealjs-redhat', 'lib', 'css'] * '/'
44
+ end
45
+
57
46
  def revealjs_css_theme_assets
58
47
  [Hyla::Configuration.assets, 'revealjs', 'css', 'theme'] * '/'
59
48
  end
@@ -71,6 +60,7 @@ end
71
60
  #
72
61
 
73
62
  style = ENV["STYLE"] || "nested"
63
+ tag_release = ENV["TAG_RELEASE"] || "#{name}-#{version}"
74
64
 
75
65
  #############################################################################
76
66
  #
@@ -94,19 +84,28 @@ task :compass do
94
84
  puts "\n## Compiling Sass"
95
85
 
96
86
  # path = Gem.loaded_specs['font-awesome-sass'].full_gem_path + "/assets/stylesheets"
97
-
87
+
98
88
  #Go to the compass project directory
99
89
  Dir.chdir File.join(sass_assets, "sass") do |dir|
100
90
  puts "Sass dir : #{dir}"
101
91
  # -s #{style} -I #{path}
102
- system "compass compile --fonts-dir 'fonts' --css-dir 'styles' --sass-dir '.' "
92
+ # To generate the sourcemap --> --sourcemap
93
+ system "compass compile --fonts-dir 'fonts' --css-dir 'styles' --sass-dir '.'"
103
94
 
104
95
  # Copy css to RevealJS theme
105
96
  # p revealjs_css_assets
106
- system "cp styles/gpe.css #{revealjs_css_theme_assets}"
107
- system "cp styles/font-awesome.css #{revealjs_css_vendor_assets}/font-awesome-4.3.0.css"
97
+ sh "cp styles/gpe.css #{revealjs_css_theme_assets}"
98
+ sh "cp styles/font-awesome.css #{revealjs_css_vendor_assets}/font-awesome-4.3.0.css"
99
+
100
+ sh "cp styles/gpe2.css #{revealjs_redhat_css_theme_assets}/gpe.css"
101
+ sh "cp styles/font-awesome.css #{revealjs_redhat_css_theme_assets}/font-awesome-4.3.0.css"
102
+
103
+ # sh "cp gpe.scss #{revealjs_css_theme_assets}"
104
+ # sh "cp styles/gpe.css.map #{revealjs_css_theme_assets}"
105
+ # sh "cp styles/font-awesome.css.map #{revealjs_css_vendor_assets}/font-awesome-4.3.0.css.map"
106
+
108
107
  end
109
-
108
+
110
109
  end
111
110
 
112
111
  # Build the Gem
@@ -124,9 +123,79 @@ task :deploy => :install do
124
123
  system "gem push #{gem_file}"
125
124
  end
126
125
 
127
- # Build the Gem and move it under the pkg directory
128
- task :build_pkg => :gemspec do
126
+ # Tag the release
127
+ task :tag_release do
128
+ system "git tag -a #{name}-#{version} -m 'Release of hyla #{version}'"
129
+ system "git push origin #{name}-#{version}"
130
+ end
131
+
132
+ desc "Delete the git tag"
133
+ task :tag_delete do
134
+ p "Tag to be removed: #{tag_release}"
135
+ sh "git tag -d #{tag_release}"
136
+ sh "git push origin :#{tag_release}"
137
+ end
138
+
139
+ desc "Build the Gem and move it under the pkg directory"
140
+ task :build_pkg do
129
141
  sh "mkdir -p pkg"
130
142
  sh "gem build #{gemspec_file}"
131
143
  sh "mv #{gem_file} pkg"
132
144
  end
145
+
146
+ #
147
+ # Generate doc for gh-pages
148
+ #
149
+ desc "Commit the local site to the gh-pages branch and publish to GitHub Pages"
150
+ task :publish do
151
+ # Ensure the gh-pages dir exists so we can generate into it.
152
+ puts "Checking for gh-pages dir..."
153
+ unless File.exist?("./gh-pages")
154
+ puts "Creating gh-pages dir..."
155
+ sh "git clone git@github.com:cmoulliard/hyla.git gh-pages"
156
+ end
157
+
158
+ # Ensure latest gh-pages branch history.
159
+ Dir.chdir('gh-pages') do
160
+ sh "git checkout gh-pages"
161
+ sh "git pull origin gh-pages"
162
+ end
163
+
164
+ # Proceed to purge all files in case we removed a file in this release.
165
+ puts "Cleaning gh-pages directory..."
166
+ purge_exclude = %w[
167
+ gh-pages/.
168
+ gh-pages/..
169
+ gh-pages/.git
170
+ gh-pages/.gitignore
171
+ ]
172
+ FileList["gh-pages/{*,.*}"].exclude(*purge_exclude).each do |path|
173
+ sh "rm -rf #{path}"
174
+ end
175
+
176
+ # Copy site to gh-pages dir.
177
+ puts "Building site into gh-pages branch..."
178
+
179
+ # Generate HTML site using hyla
180
+ sh "hyla generate -c config.yaml"
181
+
182
+ # Commit and push.
183
+ puts "Committing and pushing to GitHub Pages..."
184
+ sha = `git rev-parse HEAD`.strip
185
+
186
+ Dir.chdir('gh-pages') do
187
+ sh "git add ."
188
+ sh "git commit --allow-empty -m 'Updating to #{sha}.'"
189
+ sh "git push origin gh-pages"
190
+ end
191
+ puts 'Done.'
192
+ end
193
+
194
+ desc 'Say Hello'
195
+ task :hello, [:msg1, :msg2] do |t, args|
196
+ msg1 = args.msg1 or
197
+ fail "Msg1 is mandatory"
198
+ msg2 = args[:msg2] || "Man"
199
+ puts msg1.upcase + '!'
200
+ puts msg2.downcase + '!'
201
+ end
@@ -0,0 +1,49 @@
1
+ #
2
+ # Common options
3
+ #
4
+ source: documentation
5
+ destination: gh-pages # or . or ~/Hyla or generated_content
6
+ # end common options
7
+
8
+ #
9
+ # Styles
10
+ # Supported : liberation, asciidoctor, colony, foundation, foundation-lime, foundation-potion, github, golo, iconic, maker, readthedocs, riak, rocket-panda, rubygems
11
+ #
12
+ style: asciidoctor
13
+
14
+ #
15
+ # Asciidoctor and attributes options
16
+ #
17
+ backend: html5
18
+ doctype: book
19
+ attributes:
20
+ source-highlighter: coderay
21
+ linkcss!: true
22
+ data-uri: true
23
+ allow-uri-read: true
24
+ linkattrs: true
25
+ sectanchors: true
26
+ setlinks: true
27
+ last-update-label!:
28
+
29
+ stylesdir: /Users/chmoulli/.rbenv/versions/1.9.3-p484/lib/ruby/gems/1.9.1/gems/hyla-1.0.7.pre.3/lib/resources/assets/styles
30
+ safe: unsafe
31
+
32
+ toc: right
33
+ toclevel: 4
34
+
35
+ # Font Icons - http://fortawesome.github.io/Font-Awesome/icons/
36
+ icon-arrow-left: <i class="fa fa-arrow-right"></i>
37
+ icon-arrow-right: <i class="fa fa-arrow-right"></i>
38
+ icon-exclamation-mark: <i class="fa fa-exclamation"></i>
39
+ icon-question-mark: <i class="fa fa-question"></i>
40
+
41
+ icons: font
42
+ iconfont-remote: true
43
+ iconfont-cdn: http://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css
44
+
45
+ footer_copyright: Copyright ©2015 Charles Moulliard - Hyla # Copyright Text
46
+ nofooter: true
47
+
48
+ # end asciidoctor attributes
49
+ rendering: index2html
@@ -3,7 +3,7 @@
3
3
  :sources: https://github.com/cmoulliard/hyla
4
4
  :issues: https://github.com/cmoulliard/hyla/issues/
5
5
 
6
- == Install the gem
6
+ === Install the gem
7
7
 
8
8
  Use `gem install` command to deploy Hyla :
9
9
 
@@ -11,7 +11,7 @@ Use `gem install` command to deploy Hyla :
11
11
 
12
12
  NOTE : The option `-y` will tell to rubyGems to deploy the gem but also the dependencies required
13
13
 
14
- == Build the project from the code
14
+ === Build the project from the code
15
15
 
16
16
  * Generate the gem
17
17
 
@@ -34,13 +34,13 @@ This command will create a gem of the project
34
34
 
35
35
  rake deploy
36
36
 
37
- * To create a release, generate a tagged release and publish it to Gem Repo
37
+ * To create a build, generate a git tag and publish it to the Gem Repo
38
38
 
39
39
  rake install
40
- git commit -m "Release Hyla 1.0.7.pre.x" -a
40
+ git commit -m "Release Hyla 1.0.x" -a
41
41
  git push
42
- git tag -a hyla-1.0.7.pre.x -m "Release hyla 1.0.7.pre.x"
43
- git push origin hyla-1.0.7.pre.x
42
+ git tag -a hyla-1.0.x -m "Release hyla 1.0.x"
43
+ git push origin hyla-1.0.x
44
44
 
45
45
  rake deploy
46
46
 
@@ -0,0 +1,44 @@
1
+
2
+
3
+ == Imgkit installation
4
+
5
+ [source,txt]
6
+ ----
7
+ gem install imgkit -v 1.6.0
8
+ Fetching: imgkit-1.6.0.gem (100%)
9
+ ******************************************************************
10
+
11
+ Now install wkhtmltoimage binaries:
12
+ Global: sudo `which imgkit` --install-wkhtmltoimage
13
+ rvmsudo imgkit --install-wkhtmltoimage
14
+ (installs to default /usr/local/bin/wkhtmltoimage)
15
+
16
+ inside RVM folder: export TO=`which imgkit | sed 's:/imgkit:/wkhtmltoimage:'` && imgkit --install-wkhtmltoimage
17
+ (you'll have to configure the location of the binary if you do this!)
18
+
19
+ (run imgkit --help to see more options)
20
+ ******************************************************************
21
+ ----
22
+
23
+ Execution of the command `sudo `which imgkit` --install-wkhtmltoimage` has generated this error :
24
+
25
+ [source,txt]
26
+ ----
27
+ /Users/chmoulli/.rbenv/versions/1.9.3-p484/lib/ruby/gems/1.9.1/gems/imgkit-1.6.0/bin/imgkit:12: Use RbConfig instead of obsolete and deprecated Config.
28
+ Sorry, I couldn't find the binary for your architecture (OSX)
29
+ at http://code.google.com/p/wkhtmltopdf/downloads/list?can=1
30
+ Please go to that page, unzip the appropriate binary, and install
31
+ ----
32
+
33
+ The web site referenced by imgkit is not longer correct and the tool must be installed from this web site now +http://wkhtmltopdf.org/downloads.html+
34
+ The version installed successfully is http://downloads.sourceforge.net/project/wkhtmltopdf/0.12.2.1/wkhtmltox-0.12.2.1_osx-cocoa-x86-64.pkg[0.12.2.1]
35
+
36
+ Verification of the version installed :
37
+
38
+ wkhtmltoimage -V
39
+ wkhtmltoimage 0.12.2.1 (with patched qt)
40
+
41
+
42
+
43
+
44
+
@@ -0,0 +1,3 @@
1
+ :numbered:
2
+
3
+ include::introduction.adoc[]
@@ -1,11 +1,3 @@
1
- :toc:
2
- :data-uri:
3
- :linkattrs:
4
- :sectanchors:
5
- :setlinks:
6
-
7
- toc::[]
8
-
9
1
  == Introduction
10
2
 
11
3
  image:https://raw.github.com/cmoulliard/hyla/master/documentation/image/hyla_frog.jpg[Hyla, 100, 100, role="left"] **Hyla** is a Ruby command line tool to create a new
@@ -41,11 +33,14 @@ The Hyla project name comes from an arboreal http://en.wikipedia.org/wiki/Hyla[f
41
33
 
42
34
  == Developer
43
35
 
44
- * link:documentation/prerequisites.adoc[Prerequisites]
45
- * link:documentation/developer.adoc["How to install, build the gem"]
46
- * Using a Docker container
36
+ include::prerequisites.adoc[]
37
+ include::developer.adoc[]
47
38
 
48
- == Usage
39
+ //* link:prerequisites.html[Prerequisites]
40
+ //* link:developer.adoc["How to install, build the gem"]
41
+ //* Using a Docker container
42
+
43
+ == Technical writer
49
44
 
50
45
  Open a terminal and move to the folder where you would like to create a new project or develop an existing. As Hyla is command line tool, it will be used with one of the following commands :
51
46
 
@@ -62,329 +57,7 @@ More info about options and commands available can be find by running the `comma
62
57
 
63
58
  == Scenario
64
59
 
65
- The following scenario describes how we can can setup a project using one of the option proposed by Hyla : Create, Generate, Watch, ...
66
-
67
- ==== 1. Delete Temp directory
68
-
69
- rm -rf ~/hyla/MyBlankProject/
70
- rm -rf ~/hyla/MyBookProject
71
- rm -rf ~/hyla/MyPdfProject/
72
- rm -rf ~/hyla/MyTocProject/
73
- rm -rf ~/hyla/MyTrainingProject/
74
- rm -rf ~/hyla/MyTrainingExercisesProject/
75
- rm -rf ~/hyla/MyDeckSlideShow/
76
- rm -rf ~/hyla/MyRevealSlideShow/
77
- rm -rf ~/hyla/MyEmailProject/
78
-
79
- == 1. Blank Project & Artefacts
80
-
81
- Using hyla we will create a new project (= directory) and add artefacts (article, audio, video, image, source, table)
82
-
83
- == 1. Create a Blank Project (with or without --force option)
84
-
85
- hyla new --blank -d ~/hyla/MyBlankProject
86
- hyla new --blank -d ~/hyla/MyBlankProject --force
87
-
88
- == 2. Create a Blank Project without _config.yaml config file, add artefact
89
-
90
- - Clean and create a MyBlankProject (= directory) using --force option
91
-
92
- cd ~/hyla
93
- rm -rf MyBlankProject/
94
- hyla new --blank -d MyBlankProject
95
-
96
- - Create Asciidoc files from samples (book, article, image, audio, ...)
97
-
98
- hyla add --t asciidoc -a article -d ~/hyla/MyBlankProject
99
- hyla add --t asciidoc -a book -d ~/hyla/MyBlankProject
100
- hyla add --t asciidoc -a image -d ~/hyla/MyBlankProject
101
- hyla add --t asciidoc -a audio -d ~/hyla/MyBlankProject
102
- hyla add --t asciidoc -a video -d ~/hyla/MyBlankProject
103
- hyla add --t asciidoc -a source -d ~/hyla/MyBlankProject
104
- hyla add --t asciidoc -a table -d ~/hyla/MyBlankProject
105
-
106
- == 3. Create a Blank Project using _config.yaml config file, add artefacts
107
-
108
- - Clean up project and create a MyBlankProject (= directory) using --force option
109
-
110
- cd ~/hyla
111
- rm -rf MyBlankProject/
112
-
113
- # Create a Blank project but containing the yaml config file
114
- hyla new --blank -d MyBlankProject
115
-
116
- cd MyBlankProject
117
-
118
- - Create Asciidoc files from samples (book, article, image, audio, ...)
119
-
120
- hyla add --a article
121
- hyla add --a book
122
- hyla add --a image
123
- hyla add --a audio
124
- hyla add --a video
125
- hyla add --a source
126
- hyla add --a table
127
-
128
- === 4. Generate HTML Content of an existing project (asciidoc 2 html)
129
-
130
- hyla generate -r adoc2html -s ~/hyla/MyBlankProject/ -d ~/hyla/MyBlankProject/generated_content
131
-
132
- === 5. Generate HTML Content of an existing project (asciidoc 2 html) with a different style
133
-
134
- Styles available : liberation, asciidoctor, colony, foundation, foundation-lime, foundation-potion, github, golo, iconic, maker, readthedocs, riak, rocket-panda, rubygems
135
-
136
- hyla generate -r adoc2html -s ~/hyla/MyBlankProject/ -d ~/hyla/MyBlankProject/generated_content --style liberation
137
- hyla generate -r adoc2html -s ~/hyla/MyBlankProject/ -d ~/hyla/MyBlankProject/generated_content --style github
138
- hyla generate -r adoc2html -s ~/hyla/MyBlankProject/ -d ~/hyla/MyBlankProject/generated_content --style foundation
139
-
140
- === 6. Generate HTML Content within project
141
-
142
- hyla generate -r adoc2html -s . -d generated_content
143
-
144
- === 7. Generate HTML Content within project & using Config File
145
-
146
- As destination directory is not longer '.' (which is the case when we add artefacts using `hyla add` command, then we must change the destination directory to `generated_content`. the original file is
147
- still available as it will backup by ruby
148
-
149
- ruby -i.bak -pe 'sub(%r{destination: .},"destination: generated_content")' _config.yaml
150
- hyla generate
151
- hyla generate -y foundation
152
-
153
-
154
- == 2. Project from Template
155
-
156
- === 1. Create a project using a template (training)
157
-
158
- cd ~/hyla
159
- hyla new --t training -d MyTrainingProject
160
-
161
- // TODO Refactor Training Exercises Template
162
- hyla new --t training-exercises -d MyTrainingExercisesProject
163
-
164
- // TODO - Add images
165
- hyla new --t book -d MyBookProject
166
-
167
- === 2. Generate content and watch it
168
-
169
- cd ~/hyla/MyTrainingProject
170
- ruby -i.bak -pe 'sub(%r{destination: .},"destination: generated_content")' _config.yaml
171
- hyla generate
172
-
173
- hyla watch -s ~/hyla/MyTrainingProject/ -d ~/hyla/MyTrainingProject/generated_content
174
-
175
- == 3. Table Of Content To asciidoc
176
-
177
- === 1. Generate an asciidoctor project from a Table of Content
178
-
179
- The entry point of a Documentation site, Training, Publication or Book will consist most of the time to create
180
- a Table Of Content which is a collection of modules with chapters that we will develop. As this process to elaborate
181
- the structure of the project will consume lot of time/effort, Hyla will simplify your life as it allows from a TOC file
182
-
183
-
184
- = A. Introduction module
185
- >> This is the module 'A. Introduction'
186
-
187
- == 1. Chapter
188
- This is a chapter about ...
189
-
190
- == 2. Chapter
191
- This is a Chapter about ...
192
-
193
- === 2.1. Section
194
- This is a sub chapter
195
-
196
- = B. Instruction module
197
- >> This is the module 'B. Instruction module'
198
-
199
- == 1. Chapter
200
- This is a Chapter about ...
201
-
202
- to generate a collection of folders (= modules) containing files which represent the chapters (== Titles of the TOC ).
203
- For each module (= Module), an index file is also created including the files listed in a module. That can be serve to generate a
204
- slideshow presentation using as backend (DeckJS, DZSlides, ...) later on.
205
-
206
- - Delete existing project
207
-
208
- cd ~/hyla
209
- rm -rf MyTocProject/
210
-
211
- - Generate asciidoc files from a Table Of Content (= collection of folders and files) and next HTML
212
-
213
- hyla generate -r toc2adoc -p my-project -d ~/hyla/MyTocProject/ --toc ~/MyProjects/hyla/data/toc.adoc
214
- hyla generate -r adoc2html -s ~/hyla/MyTocProject/ -d ~/hyla/MyTocProject/generated_content
215
-
216
- Example about what is generated
217
-
218
- >> Project Name : my-project <<
219
- >> Directory created : ~/hyla/MyTocProject/A_Introduction_module <<
220
- = File created : 1_Chapter
221
- = File created : 2_Chapter
222
- = File created : 3_Chapter
223
- >> Directory created : ~/Temp/MyTocProject/B_Instruction_module <<
224
- = File created : 1_Chapter
225
- >> Directory created : /Temp/MyTocProject/C_Installation_module <<
226
- = File created : 1_Chapter
227
- = File created : 2_Chapter
228
-
229
-
230
- - Watch asciidoc files and generate new HTML content when a modification is detected
231
-
232
- While you develop asciidoc(tor) documents, it is interesting to consult the files rendered in HTML. Hyla supports such option with LiverReload
233
- as a WebSocket server is exposed for the browser. To watch files and let's asciidoctor to render them, simply open a terminal and provide as
234
- parameter the source directory containing the files to be watched.
235
-
236
- hyla watch -s ~/hyla/MyTocProject/ -d ~/hyla/MyTocProject/generated_content
237
-
238
- === 2. Generate an asciidoctor project from a Table of Content using YAML config file and watch content
239
-
240
- rm -rf ~/hyla/MyTocProject
241
- cd ~/hyla
242
- hyla new --blank MyTocProject
243
- cd MyTocProject
244
- hyla generate --r toc2adoc
245
-
246
- # Change destination in config files or pass info as option
247
- # cd ../MyTocProject/
248
- # subl _config.yaml
249
- hyla generate -r adoc2html
250
-
251
- hyla watch -s ~/hyla/MyTocProject/ -d generated_content
252
-
253
- === 3. Generate a DeckJS Slideshow for a module
254
-
255
- cd ~/hyla/MyTocProject
256
- hyla generate --backend deckjs -s A_Introduction_module/ -d A_Introduction_module/generated_content -r index2html
257
-
258
- === 4. Generate a DeckJS Slideshow for a Project (all the TOC)
259
-
260
- cd ~/hyla/MyTocProject
261
- hyla generate --backend deckjs -s . -d generated_content -r index2html
262
-
263
- == 5. Server content locally - HTTP Server
264
-
265
- To simplify your life, a simple HTTP Server can be started by Hyla and will allow to consult/browse HTML files generated. In this case, start this
266
- Hyla command in another Terminal
267
-
268
- hyla serve -P 4000 -H localhost -b /hyla/ --out_dir ~/hyla/MyTrainingProject/generated_content/
269
-
270
- == 6. Generate a Slideshow
271
-
272
- === 1. DeckJS
273
-
274
- rm -rf ~/hyla/MyDeckSlideShow
275
- cd ~/hyla
276
- hyla new -b -d MyDeckSlideShow
277
-
278
- hyla add --t slideshow -a deckjs -d MyDeckSlideShow
279
- hyla generate --backend deckjs -s ~/hyla/MyDeckSlideShow -d ~/hyla/MyDeckSlideShow/generated_content -r adoc2html
280
-
281
- === 2. Different DeckJS Style options
282
-
283
- hyla generate --backend deckjs -s ~/hyla/MyDeckSlideShow -d ~/hyla/MyDeckSlideShow/generated_content -r adoc2html -a deckjs_theme=swiss,deckjs_transition=fade
284
- hyla generate --backend deckjs -s ~/hyla/MyDeckSlideShow -d ~/hyla/MyDeckSlideShow/generated_content -r adoc2html -a deckjs_theme=web-2.0,deckjs_transition=horizontal-slide
285
-
286
- === 3. RevealJS
287
-
288
- rm -rf ~/hyla/MyRevealSlideShow
289
- cd ~/hyla
290
- hyla new --blank -d MyRevealSlideShow
291
-
292
- hyla add --t slideshow -a revealjs -d MyRevealSlideShow
293
-
294
- cd MyRevealSlideShow
295
-
296
- hyla generate --backend revealjs -s . -d generated_content -r adoc2html
297
-
298
- open http://localhost:4000/hyla/slideshow_revealjs.html &
299
-
300
- hyla serve -P 4000 -H localhost -b /hyla/ -d generated_content/
301
-
302
- == 7. Generate a PDF
303
-
304
- A PDF document can be created using the rendering option `html2pdf`. To render the HTML file, Hyla uses the following Ruby
305
- libraries https://github.com/pdfkit/pdfkit[pdfkit] and https://github.com/wkhtmltopdf/wkhtmltopdf[wkhtmltopdf].
306
-
307
- - Clean and create a MyPdfProject (= directory)
308
-
309
- cd ~/hyla
310
- rm -rf MyPdfroject/
311
- hyla new -b -d MyPdfProject --force
312
- cd MyPdfProject
313
-
314
- - Create Asciidoc file from sample (book)
315
-
316
- hyla add -a book --t asciidoc -d .
317
-
318
- - Generate HTML content using foundation stylesheet
319
-
320
- hyla generate --style foundation
321
-
322
- - We change the rendering from adoc2html to html2pdf
323
-
324
- ruby -i.bak -pe 'sub(%r{rendering: adoc2html},"rendering: html2pdf")' _config.yaml
325
-
326
- - Source directory & Destination directory
327
-
328
- ruby -i.bak -pe 'sub(%r{source: .},"source: ./generated_content")' _config.yaml
329
- ruby -i.bak -pe 'sub(%r{destination: generated_content},"destination: ./generated_content/pdf")' _config.yaml
330
-
331
- - We will generate the PDF file for the image and book
332
-
333
- hyla generate -f asciidoc_book.html
334
- hyla generate -f asciidoc_image.html
335
-
336
- - Result can be opened and viewed
337
-
338
- open generated_content/pdf/asciidoc_book.pdf
339
- open generated_content/pdf/asciidoc_image.pdf
340
-
341
- == 7. Send Email
342
-
343
- An email can be created using as attachment an HTML file based on the information, parameters provided into the
344
- _config.yaml file. These parameters will allow to populate the email message and add as attachment the HTML
345
- file generated from an asciidoc file.
346
-
347
- email_attributes:
348
- from: "Charles Moulliard <ch007m@gmail.com>"
349
- to: 'cmoulliard@apache.com'
350
- subject: "This is a beautiful HTML document created by Asciidoctor and Hyla Tool"
351
- # GMAIL
352
- smtp_server: 'smtp.gmail.com'
353
- port: '587'
354
- enable_starttls: 'true'
355
- user: 'your_gmail_user'
356
- password: 'your_gmail_password!'
357
-
358
- Two new options are required to process the request on the command line or using _config.yaml file
359
-
360
- source: ./generated_content
361
- file: name_of_html_file
362
-
363
- - Create a Blank project
364
-
365
- cd ~/hyla
366
- rm -rf MyEmailProject/
367
- hyla new -b -d MyEmailProject --force
368
- cd MyEmailProject
369
-
370
- - Add an asciidoc file (report, doc, book, article)
371
-
372
- hyla add --a book --d .
373
-
374
- - Edit the _config.yaml file and add the parameters required (see previously)
375
-
376
- - Generate HTML content using foundation stylesheet
377
-
378
- hyla generate --style asciidoctor
379
-
380
- - Send email to the SMTP server defined
381
-
382
- hyla sendmail
383
-
384
- - Consult the message received in your mailbox
385
-
386
- image::image/email_send.png[]
387
-
60
+ include::scenario.adoc[]
388
61
 
389
62
 
390
63