slideshow 0.9.9 → 0.9.10
Sign up to get free protection for your applications and to get access to all the features.
- data/History.rdoc +0 -0
- data/Manifest.txt +0 -0
- data/README.rdoc +0 -0
- data/Rakefile +0 -0
- data/bin/slideshow +1 -1
- data/lib/slideshow.rb +1 -1
- data/lib/slideshow/filters/headers_filter.rb +3 -6
- data/lib/slideshow/gen.rb +0 -0
- data/lib/slideshow/helpers/background_helper.rb +27 -0
- data/lib/slideshow/helpers/capture_helper.rb +0 -0
- data/lib/slideshow/helpers/syntax/coderay_helper.rb +0 -0
- data/lib/slideshow/helpers/syntax/uv_helper.rb +0 -0
- data/lib/slideshow/helpers/text_helper.rb +0 -0
- data/lib/slideshow/opts.rb +33 -39
- data/templates/slides.html.erb +5 -0
- metadata +4 -4
data/History.rdoc
CHANGED
File without changes
|
data/Manifest.txt
CHANGED
File without changes
|
data/README.rdoc
CHANGED
File without changes
|
data/Rakefile
CHANGED
File without changes
|
data/bin/slideshow
CHANGED
data/lib/slideshow.rb
CHANGED
@@ -28,14 +28,11 @@ def leading_headers( content_with_headers )
|
|
28
28
|
read_headers = false
|
29
29
|
content << line
|
30
30
|
end
|
31
|
-
end
|
32
|
-
|
33
|
-
# fix: do a merge w/ config instead, possible??
|
34
|
-
opts.set_defaults
|
31
|
+
end
|
35
32
|
|
36
33
|
puts " Reading #{headers.length} headers: #{headers.join(', ')}..."
|
37
34
|
|
38
|
-
content
|
35
|
+
content
|
39
36
|
end
|
40
37
|
|
41
38
|
end # module HeadersFilter
|
@@ -43,4 +40,4 @@ end # module Slideshow
|
|
43
40
|
|
44
41
|
class Slideshow::Gen
|
45
42
|
include Slideshow::HeadersFilter
|
46
|
-
end
|
43
|
+
end
|
data/lib/slideshow/gen.rb
CHANGED
File without changes
|
@@ -1,6 +1,33 @@
|
|
1
1
|
module Slideshow
|
2
2
|
module BackgroundHelper
|
3
3
|
|
4
|
+
def gradient_from_headers( *args )
|
5
|
+
|
6
|
+
return "" unless headers.has_gradient? # do nothing if use hasn't set gradient headers (ignore defaults)
|
7
|
+
|
8
|
+
# lets you use headers (gradient, gradient-theme, gradient-colors)
|
9
|
+
# to define gradient (see http://slideshow.rubyforge.org/themes.html for predefined themes)
|
10
|
+
|
11
|
+
theme = headers[ :gradient_theme ]
|
12
|
+
colors = headers[ :gradient_colors ].split( ' ' ) # colors as space separated all-in-one string
|
13
|
+
|
14
|
+
# fix: first version - ignore theme for now
|
15
|
+
# todo: add support for theme
|
16
|
+
|
17
|
+
buf = "linear-gradient( #{colors.join(',') } )"
|
18
|
+
|
19
|
+
|
20
|
+
# todo: add value for headers to puts
|
21
|
+
puts " Adding CSS for gradient background style rule using headers..."
|
22
|
+
content_for( :css, <<-EOS )
|
23
|
+
.slide { background-image: -webkit-#{buf};
|
24
|
+
background-image: -mozilla-#{buf};
|
25
|
+
background-image: -ms-#{buf};
|
26
|
+
background-image: -o-#{buf};
|
27
|
+
background-image: #{buf};
|
28
|
+
}
|
29
|
+
EOS
|
30
|
+
end
|
4
31
|
|
5
32
|
def gradient( *args )
|
6
33
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/slideshow/opts.rb
CHANGED
@@ -20,24 +20,27 @@ class Opts
|
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
23
|
-
def gradient=(
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
23
|
+
def gradient=( line )
|
24
|
+
# split into theme (first value) and colors (everything else)
|
25
|
+
# e.g. diagonal red black
|
26
|
+
|
27
|
+
# todo/check: translate value w/ v.tr( '-', '_' ) ??
|
28
|
+
|
29
|
+
values = line.split( ' ' )
|
30
|
+
|
31
|
+
put( 'gradient-theme', values.first ) if values.size > 0
|
32
|
+
put( 'gradient-colors', values[ 1..-1].join( ' ' ) ) if values.size > 1
|
33
33
|
end
|
34
34
|
|
35
|
-
def
|
36
|
-
|
35
|
+
def has_gradient?
|
36
|
+
# has user defined gradient (using headers)? (default values do NOT count)
|
37
|
+
@hash.has_key?( :gradient_theme ) || @hash.has_key?( :gradient_colors )
|
37
38
|
end
|
38
39
|
|
40
|
+
|
41
|
+
|
39
42
|
def []( key )
|
40
|
-
value =
|
43
|
+
value = get( key )
|
41
44
|
if value.nil?
|
42
45
|
puts "** Warning: header '#{key}' undefined"
|
43
46
|
"- #{key} not found -"
|
@@ -55,7 +58,7 @@ class Opts
|
|
55
58
|
end
|
56
59
|
|
57
60
|
def fetch?
|
58
|
-
|
61
|
+
@hash.has_key?( :fetch_uri )
|
59
62
|
end
|
60
63
|
|
61
64
|
def fetch_uri
|
@@ -63,7 +66,7 @@ class Opts
|
|
63
66
|
end
|
64
67
|
|
65
68
|
def has_includes?
|
66
|
-
@hash
|
69
|
+
@hash.has_key?( :include )
|
67
70
|
end
|
68
71
|
|
69
72
|
def includes
|
@@ -76,7 +79,7 @@ class Opts
|
|
76
79
|
end
|
77
80
|
|
78
81
|
def config_path
|
79
|
-
get( 'config_path'
|
82
|
+
get( 'config_path' )
|
80
83
|
end
|
81
84
|
|
82
85
|
def output_path
|
@@ -84,11 +87,11 @@ class Opts
|
|
84
87
|
end
|
85
88
|
|
86
89
|
def code_engine
|
87
|
-
get( 'code-engine'
|
90
|
+
get( 'code-engine' )
|
88
91
|
end
|
89
92
|
|
90
93
|
def code_txmt
|
91
|
-
get( 'code-txmt'
|
94
|
+
get( 'code-txmt' )
|
92
95
|
end
|
93
96
|
|
94
97
|
|
@@ -97,41 +100,32 @@ class Opts
|
|
97
100
|
:title => 'Untitled Slide Show',
|
98
101
|
:footer => '',
|
99
102
|
:subfooter => '',
|
100
|
-
:gradient_theme => '
|
101
|
-
:
|
102
|
-
:gradient_color2 => 'black',
|
103
|
+
:gradient_theme => 'diagonal',
|
104
|
+
:gradient_colors => 'red black',
|
103
105
|
|
104
106
|
:code_engine => 'sh', # SyntaxHighligher (sh) | ultraviolet (uv) | coderay (cr)
|
105
107
|
:code_txmt => 'false', # Text Mate Hyperlink for Source?
|
106
108
|
}
|
107
109
|
|
108
|
-
def
|
109
|
-
|
110
|
-
|
110
|
+
def get( key, default=nil )
|
111
|
+
key = normalize_key(key)
|
112
|
+
value = @hash.fetch( key, DEFAULTS[ key ] )
|
113
|
+
if value.nil?
|
114
|
+
default
|
115
|
+
else
|
116
|
+
value
|
111
117
|
end
|
112
118
|
end
|
113
119
|
|
114
|
-
def get( key, default )
|
115
|
-
@hash.fetch( normalize_key(key), default )
|
116
|
-
end
|
117
|
-
|
118
120
|
private
|
119
121
|
|
120
122
|
def normalize_key( key )
|
121
123
|
key.to_s.downcase.tr('-', '_').to_sym
|
122
124
|
end
|
123
|
-
|
124
|
-
# Assigns the given gradient-* keys to the values in the given string.
|
125
|
-
def put_gradient( string, *keys )
|
126
|
-
values = string.split( ' ' )
|
127
|
-
|
128
|
-
values.zip(keys).each do |v, k|
|
129
|
-
@hash[ normalize_key( "gradient-#{k}" ) ] = v.tr( '-', '_' )
|
130
|
-
end
|
131
|
-
end
|
132
|
-
|
125
|
+
|
133
126
|
def get_boolean( key, default )
|
134
|
-
|
127
|
+
key = normalize_key( key )
|
128
|
+
value = @hash.fetch( key, DEFAULTS[ key ] )
|
135
129
|
if value.nil?
|
136
130
|
default
|
137
131
|
else
|
data/templates/slides.html.erb
CHANGED
@@ -7,6 +7,11 @@
|
|
7
7
|
<meta name="generator" content="<%= @headers['generator'] %>">
|
8
8
|
<meta name="author" content="<%= @headers['author']%>" >
|
9
9
|
|
10
|
+
<!-- helper/macro that lets you add (CSS3) gradient using headers
|
11
|
+
see http://slideshow.rubyforge.org/themes.html
|
12
|
+
|
13
|
+
<%= gradient_from_headers() %> -->
|
14
|
+
|
10
15
|
<!-- S6 style sheet links -->
|
11
16
|
<link rel="stylesheet" href="<%= "#{@name}.css" %>" media="projection" id="styleProjection">
|
12
17
|
<link rel="stylesheet" href="s6/screen.css" media="screen" id="styleScreen">
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: slideshow
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 47
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 9
|
9
|
-
-
|
10
|
-
version: 0.9.
|
9
|
+
- 10
|
10
|
+
version: 0.9.10
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Gerald Bauer
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date:
|
18
|
+
date: 2012-02-19 00:00:00 +01:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|