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.
- checksums.yaml +8 -8
- data/.gitignore +2 -0
- data/README.adoc +2 -2
- data/Rakefile +93 -24
- data/config.yaml +49 -0
- data/documentation/developer.adoc +6 -6
- data/documentation/imgkit.adoc +44 -0
- data/documentation/index.txt +3 -0
- data/documentation/introduction.adoc +8 -335
- data/documentation/prerequisites.adoc +1 -1
- data/documentation/scenario.adoc +320 -0
- data/lib/hyla/commands/generate.rb +11 -2
- data/lib/hyla/configuration.rb +10 -1
- data/lib/hyla/project.rb +1 -1
- data/lib/resources/assets/cover/cover.html +62 -0
- data/lib/resources/assets/cover/cover.png +0 -0
- data/lib/resources/{cover.slim → assets/cover/cover.slim} +0 -0
- data/lib/resources/assets/cover/image/1153872-redhat-backroung.png +0 -0
- data/lib/resources/assets/cover/image/1156515-Logo_RH_RGB_Reverse.png +0 -0
- data/lib/resources/assets/cover/image/1156524-bg_redhat.png +0 -0
- data/lib/resources/assets/cover/new_cover.slim +95 -0
- data/lib/resources/assets/revealjs-redhat/image/1156515-Logo_RH_RGB_Reverse.png +0 -0
- data/lib/resources/assets/revealjs-redhat/image/1156524-bg_redhat.png +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/css/font-awesome-4.3.0.css +2893 -0
- data/lib/resources/assets/revealjs-redhat/lib/css/gpe.css +705 -0
- data/lib/resources/assets/revealjs-redhat/lib/css/offline-v2.css +3646 -0
- data/lib/resources/assets/revealjs-redhat/lib/css/print/paper.css +176 -0
- data/lib/resources/assets/revealjs-redhat/lib/css/print/pdf.css +190 -0
- data/lib/resources/assets/revealjs-redhat/lib/css/theme-output.css +1358 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/FontAwesome.otf +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.eot +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.svg +565 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.ttf +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.woff +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/font-awesome/fontawesome-webfont.woff2 +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-bold.eot +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-bold.svg +637 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-bold.ttf +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-bold.woff +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-light.eot +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-light.svg +2121 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-light.ttf +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-light.woff +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-regular.eot +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-regular.svg +637 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-regular.ttf +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass-regular.woff +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass.css +32 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass.css-TODO +12 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_bold-web.eot +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_bold-web.svg +454 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_bold-web.ttf +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_bold-web.woff +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_regular-web.eot +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_regular-web.svg +454 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_regular-web.ttf +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/font/overpass/overpass_regular-web.woff +0 -0
- data/lib/resources/assets/revealjs-redhat/lib/js/head.min.js +131 -0
- data/lib/resources/assets/revealjs-redhat/lib/js/reveal.min.js +1279 -0
- data/lib/resources/assets/revealjs-redhat/lib/plugin/highlight/highlight.js +25 -0
- data/lib/resources/assets/revealjs-redhat/lib/plugin/markdown/markdown.js +320 -0
- data/lib/resources/assets/revealjs-redhat/lib/plugin/markdown/marked.js +37 -0
- data/lib/resources/assets/revealjs-redhat/lib/plugin/notes/notes.html +387 -0
- data/lib/resources/assets/revealjs-redhat/lib/plugin/notes/notes.js +117 -0
- data/lib/resources/assets/revealjs-redhat/lib/plugin/zoom-js/zoom.js +258 -0
- data/lib/resources/assets/revealjs/css/theme/default.css +121 -0
- data/lib/resources/assets/revealjs/css/theme/gpe.css +85 -86
- data/lib/resources/assets/sass/gpe.scss +15 -14
- data/lib/resources/assets/sass/gpe2.scss +598 -0
- data/lib/resources/assets/sass/{_overpass.scss → overpass.scss} +0 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_admonition.html.slim +13 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_audio.html.slim +6 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_colist.html.slim +20 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_dlist.html.slim +53 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_example.html.slim +4 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_floating_title.html.slim +1 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_image.html.slim +15 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_listing.html.slim +31 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_literal.html.slim +4 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_math.html.slim +10 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_olist.html.slim +9 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_open.html.slim +15 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_page_break.html.slim +1 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_paragraph.html.slim +16 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_pass.html.slim +1 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_preamble.html.slim +6 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_quote.html.slim +14 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_ruler.html.slim +1 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_sidebar.html.slim +5 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_table.html.slim +45 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_toc.html.slim +12 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_ulist.html.slim +25 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_verse.html.slim +14 -0
- data/lib/resources/backends/slim/revealjs-redhat/block_video.html.slim +27 -0
- data/lib/resources/backends/slim/revealjs-redhat/document.html.slim +162 -0
- data/lib/resources/backends/slim/revealjs-redhat/embedded.html.slim +9 -0
- data/lib/resources/backends/slim/revealjs-redhat/helpers.rb +8 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_anchor.html.slim +11 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_break.html.slim +2 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_button.html.slim +1 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_callout.html.slim +7 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_footnote.html.slim +6 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_image.html.slim +24 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_indexterm.html.slim +2 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_kbd.html.slim +8 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_menu.html.slim +15 -0
- data/lib/resources/backends/slim/revealjs-redhat/inline_quoted.html.slim +22 -0
- data/lib/resources/backends/slim/revealjs-redhat/section.html.slim +23 -0
- data/lib/resources/backends/slim/revealjs/section.html.slim +2 -2
- data/lib/templates/_config.yaml +28 -8
- data/lib/templates/sample/slideshow_revealjs.adoc +21 -0
- metadata +97 -6
- data/.rakeTasks +0 -7
- data/.travis.yml +0 -10
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YzBmZWMxMGYwMDM2MzEwNmI5NzMzOWJiYzQ4OTIyOTEyMjc2ZmI2MA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZDQ4NTQ1MzE5ZWZhYmM4M2Q5Njg0ZTIxZTBkYThlN2JmZTlkNWM5Ng==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
OGVmZGM2M2FlNjI0NjE4MGYyMzNjYTE5NWYyNmE2OWQ2OTZmMWI4NWFjODFh
|
10
|
+
MWFmYzIxYzQxNDhhNzVjNWFhMTE0ZmMzNjVjNjk0ZTAzZTM5NDBjOWYwY2Y0
|
11
|
+
ZWI1OGYzNDMxYjQ2MjU1NzdiNzIwNjI4YjdjYzAwOWRiNjEwNDc=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
YWJlZWM2N2M1OTEwZTVkY2E5MjdkMDM4MTdiYjdiMjRlNzY5MGFjMWIwMmQ0
|
14
|
+
NDYyYzkxZDNlYTgyNGI0ODcwZjAzZGIzM2RkNWVkNzc4MzM4ZGMyMDFmMjVh
|
15
|
+
MzhiYzNjZGI0Yjc1MDQ1NTg4MTQ5NzRkYzM2M2ZmODNhM2M2MDc=
|
data/.gitignore
CHANGED
data/README.adoc
CHANGED
@@ -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
|
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
|
-
|
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
|
-
|
107
|
-
|
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
|
-
#
|
128
|
-
task :
|
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
|
data/config.yaml
ADDED
@@ -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
|
-
|
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
|
-
|
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
|
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.
|
40
|
+
git commit -m "Release Hyla 1.0.x" -a
|
41
41
|
git push
|
42
|
-
git tag -a hyla-1.0.
|
43
|
-
git push origin hyla-1.0.
|
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
|
+
|
@@ -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
|
-
|
45
|
-
|
46
|
-
* Using a Docker container
|
36
|
+
include::prerequisites.adoc[]
|
37
|
+
include::developer.adoc[]
|
47
38
|
|
48
|
-
|
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
|
-
|
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
|
|