showoff 0.13.1 → 0.13.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Rakefile +29 -4
- data/bin/showoff +29 -21
- data/lib/showoff/version.rb +1 -1
- data/lib/showoff.rb +2 -2
- data/lib/showoff_utils.rb +14 -0
- data/public/css/showoff.css +36 -1
- data/public/css/titlebar/center.png +0 -0
- data/public/css/titlebar/left.png +0 -0
- data/public/css/titlebar/powershell-controls.png +0 -0
- data/public/css/titlebar/powershell.png +0 -0
- data/public/css/titlebar/right.png +0 -0
- data/public/js/presenter.js +3 -0
- data/public/js/showoff.js +1 -0
- data/views/header.erb +1 -0
- metadata +8 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5ea96eb5e4bf1886cb16471125acfb7750c50425
|
4
|
+
data.tar.gz: 617dde95b0f92b1029a267f354941a34d8d6a411
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 23a7ba04e6ff1456a986799fe5fdbf50f161752fed18c2998975e47b81d3edb61777fe3509bea3bb3f80a33772c2a1a3ea4b56817b0660fcab27ac0c2f064f44
|
7
|
+
data.tar.gz: 8bce9a117fe1097e54071daefad9cc5be3d25a3775d60c43e7e12df4d5e6ec6fbbc4ba494ee66ee6158cf48ef590e7afd25a052ecde11b60e68374660f1bb6a7
|
data/Rakefile
CHANGED
@@ -1,11 +1,38 @@
|
|
1
|
+
require 'fileutils'
|
2
|
+
|
1
3
|
task :default do
|
2
4
|
system("rake -T")
|
3
5
|
end
|
4
6
|
|
7
|
+
def version
|
8
|
+
`git describe --tags --abbrev=0`.chomp.sub('v','')
|
9
|
+
end
|
10
|
+
|
11
|
+
def next_version(type = :patch)
|
12
|
+
section = [:major,:minor,:patch].index type
|
13
|
+
|
14
|
+
n = version.split '.'
|
15
|
+
n[section] = n[section].to_i + 1
|
16
|
+
n.join '.'
|
17
|
+
end
|
18
|
+
|
19
|
+
desc "Build Docker image"
|
20
|
+
task 'docker' do
|
21
|
+
Dir.chdir('build') do
|
22
|
+
system("docker build -t binford2k/showoff:#{version} -t binford2k/showoff:latest .")
|
23
|
+
end
|
24
|
+
puts
|
25
|
+
puts 'Start container with: docker run -p 9090:9090 binford2k/showoff'
|
26
|
+
end
|
27
|
+
|
28
|
+
desc "Upload image to Docker Hub"
|
29
|
+
task 'docker:push' => ['docker'] do
|
30
|
+
system("docker push binford2k/showoff:#{version}")
|
31
|
+
system("docker push binford2k/showoff:latest")
|
32
|
+
end
|
33
|
+
|
5
34
|
desc "Build HTML documentation"
|
6
35
|
task :doc do
|
7
|
-
require 'fileutils'
|
8
|
-
|
9
36
|
FileUtils.rm_rf('doc')
|
10
37
|
Dir.chdir('documentation') do
|
11
38
|
system("rdoc --main -HOME.rdoc /*.rdoc --op ../doc")
|
@@ -14,8 +41,6 @@ end
|
|
14
41
|
|
15
42
|
desc "Update docs for webpage"
|
16
43
|
task 'doc:website' => [:doc] do
|
17
|
-
require 'fileutils'
|
18
|
-
|
19
44
|
if system('git checkout gh-pages')
|
20
45
|
FileUtils.rm_rf('documentation')
|
21
46
|
FileUtils.mv('doc', 'documentation')
|
data/bin/showoff
CHANGED
@@ -146,7 +146,7 @@ command :serve do |c|
|
|
146
146
|
c.switch [:r, :review]
|
147
147
|
|
148
148
|
c.desc 'Enable remote code execution'
|
149
|
-
c.switch [:x, :executecode]
|
149
|
+
c.switch [:x, :execute, :executecode]
|
150
150
|
|
151
151
|
c.desc 'Run in standalone mode, with no audience interaction'
|
152
152
|
c.switch [:S, :standalone]
|
@@ -175,6 +175,9 @@ command :serve do |c|
|
|
175
175
|
c.default_value "showoff.json"
|
176
176
|
c.flag [:f, :file, :pres_file]
|
177
177
|
|
178
|
+
c.desc 'Git URL to a repository containing the presentation'
|
179
|
+
c.flag [:u, :url]
|
180
|
+
|
178
181
|
c.action do |global_options,options,args|
|
179
182
|
|
180
183
|
# This is gross. A serious revamp in config file parsing is due.
|
@@ -190,6 +193,15 @@ command :serve do |c|
|
|
190
193
|
options[:ssl_private_key] ||= config['ssl_private_key']
|
191
194
|
options[:standalone] ||= config['standalone']
|
192
195
|
|
196
|
+
options[:pres_dir] = args[0]
|
197
|
+
options[:port] = options[:port].to_i
|
198
|
+
|
199
|
+
ssl_options = {
|
200
|
+
:cert_chain_file => options[:ssl_certificate],
|
201
|
+
:private_key_file => options[:ssl_private_key],
|
202
|
+
:verify_peer => false,
|
203
|
+
}
|
204
|
+
|
193
205
|
protocol = options[:ssl] ? 'https' : 'http'
|
194
206
|
host = options[:host] == '0.0.0.0' ? 'localhost' : options[:host]
|
195
207
|
url = "#{protocol}://#{host}:#{options[:p].to_i}"
|
@@ -206,26 +218,22 @@ To run it from presenter view, go to: [ #{url}/presenter ]
|
|
206
218
|
|
207
219
|
"
|
208
220
|
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
}
|
226
|
-
|
227
|
-
server.ssl = true
|
228
|
-
server.ssl_options = ssl_options
|
221
|
+
if options[:url]
|
222
|
+
ShowOffUtils.clone(options[:url], options[:verbose]) do
|
223
|
+
ShowOff.run!(options) do |server|
|
224
|
+
if options[:ssl]
|
225
|
+
server.ssl = true
|
226
|
+
server.ssl_options = ssl_options
|
227
|
+
end
|
228
|
+
end
|
229
|
+
end
|
230
|
+
|
231
|
+
else
|
232
|
+
ShowOff.run!(options) do |server|
|
233
|
+
if options[:ssl]
|
234
|
+
server.ssl = true
|
235
|
+
server.ssl_options = ssl_options
|
236
|
+
end
|
229
237
|
end
|
230
238
|
end
|
231
239
|
|
data/lib/showoff/version.rb
CHANGED
data/lib/showoff.rb
CHANGED
@@ -88,8 +88,8 @@ class ShowOff < Sinatra::Application
|
|
88
88
|
settings.showoff_config = showoff_json
|
89
89
|
|
90
90
|
# Set options for encoding, template and page size
|
91
|
-
settings.encoding
|
92
|
-
settings.page_size
|
91
|
+
settings.encoding = showoff_json["encoding"] || 'UTF-8'
|
92
|
+
settings.page_size = showoff_json["page-size"] || "Letter"
|
93
93
|
settings.pres_template = showoff_json["templates"]
|
94
94
|
end
|
95
95
|
|
data/lib/showoff_utils.rb
CHANGED
@@ -204,6 +204,20 @@ class ShowOffUtils
|
|
204
204
|
`git update-ref refs/heads/gh-pages #{commit_sha}`
|
205
205
|
end
|
206
206
|
|
207
|
+
# clone a repo url, then run a provided block
|
208
|
+
def self.clone(url, verbose=false)
|
209
|
+
require 'tmpdir'
|
210
|
+
Dir.mktmpdir do |dir|
|
211
|
+
Dir.chdir dir do
|
212
|
+
puts "Cloning presentation repository to #{dir}..." if verbose
|
213
|
+
system('git', 'clone', '--depth', '1', url, '.')
|
214
|
+
|
215
|
+
yield if block_given?
|
216
|
+
end
|
217
|
+
end
|
218
|
+
|
219
|
+
end
|
220
|
+
|
207
221
|
# Makes a slide as a string.
|
208
222
|
# [title] title of the slide
|
209
223
|
# [classes] any "classes" to include, such as 'smaller', 'transition', etc.
|
data/public/css/showoff.css
CHANGED
@@ -543,7 +543,40 @@ img#disconnected {
|
|
543
543
|
padding: 0;
|
544
544
|
}
|
545
545
|
|
546
|
-
/* Add
|
546
|
+
/* Add Console "code highlighting" styles to resemble the look of a terminal window. */
|
547
|
+
pre.highlight code.language-console {
|
548
|
+
background: #222;
|
549
|
+
background: url(titlebar/left.png) left top no-repeat, url(titlebar/right.png) right top no-repeat, url(titlebar/center.png) center top repeat-x #222;
|
550
|
+
color: #63de00;
|
551
|
+
padding: 30px 0.5em 0.5em;
|
552
|
+
border: 1px solid #acacac;
|
553
|
+
border-radius: 6px;
|
554
|
+
border-top-left-radius: 12px;
|
555
|
+
border-top-right-radius: 12px;
|
556
|
+
box-shadow: 0px 0px 10px #acacac;
|
557
|
+
overflow: hidden;
|
558
|
+
}
|
559
|
+
|
560
|
+
pre.highlight code.language-powershellconsole {
|
561
|
+
background: rgb(1, 36, 86);
|
562
|
+
background: url(titlebar/powershell-controls.png) right top no-repeat, url(titlebar/powershell.png) left top repeat-x rgb(1, 36, 86);
|
563
|
+
color: rgb(238, 237, 240);
|
564
|
+
padding: 32px 0.5em 0.5em;
|
565
|
+
border: 6px solid rgb(102, 202, 234);
|
566
|
+
border-top: 2px solid rgb(102, 202, 234);
|
567
|
+
border-radius: 4px;
|
568
|
+
overflow: hidden;
|
569
|
+
}
|
570
|
+
|
571
|
+
pre.highlight code.language-console.nochrome,
|
572
|
+
pre.highlight code.language-powershellconsole.nochrome {
|
573
|
+
background-image: none;
|
574
|
+
border-width: 1px;
|
575
|
+
padding: 0.5em;
|
576
|
+
border-radius: 4px;
|
577
|
+
}
|
578
|
+
|
579
|
+
/* to avoid breaking changes */
|
547
580
|
.highlight .language-shell {
|
548
581
|
display: block;
|
549
582
|
background-color: #222;
|
@@ -553,6 +586,8 @@ img#disconnected {
|
|
553
586
|
overflow: hidden;
|
554
587
|
}
|
555
588
|
|
589
|
+
|
590
|
+
|
556
591
|
/**********************************
|
557
592
|
*** code execution ***
|
558
593
|
**********************************/
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/public/js/presenter.js
CHANGED
@@ -138,6 +138,9 @@ function openSlave()
|
|
138
138
|
slaveWindow.presenterView = window;
|
139
139
|
slaveWindow.mode = { track: false, slave: true, follow: false };
|
140
140
|
|
141
|
+
// Add a class to differentiate from the audience view
|
142
|
+
slaveWindow.document.getElementById("preso").className = 'display';
|
143
|
+
|
141
144
|
$('#slaveWindow').addClass('enabled');
|
142
145
|
}
|
143
146
|
catch(e) {
|
data/public/js/showoff.js
CHANGED
data/views/header.erb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: showoff
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.13.
|
4
|
+
version: 0.13.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scott Chacon
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-07-
|
11
|
+
date: 2016-07-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sinatra
|
@@ -319,6 +319,11 @@ files:
|
|
319
319
|
- public/css/presenter.css
|
320
320
|
- public/css/showoff.css
|
321
321
|
- public/css/spinner_bar.gif
|
322
|
+
- public/css/titlebar/center.png
|
323
|
+
- public/css/titlebar/left.png
|
324
|
+
- public/css/titlebar/powershell-controls.png
|
325
|
+
- public/css/titlebar/powershell.png
|
326
|
+
- public/css/titlebar/right.png
|
322
327
|
- public/favicon.ico
|
323
328
|
- public/js/TimeCircles.js
|
324
329
|
- public/js/coffee-script.js
|
@@ -332,7 +337,7 @@ files:
|
|
332
337
|
- public/js/jquery.parsequery.min.js
|
333
338
|
- public/js/presenter.js
|
334
339
|
- public/js/showoff.js
|
335
|
-
homepage:
|
340
|
+
homepage: https://puppetlabs.github.io/showoff
|
336
341
|
licenses:
|
337
342
|
- MIT
|
338
343
|
metadata: {}
|