rabbit-slide-aycabta-rubyconf-2019 2019.11.20.0

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.
Binary file
@@ -0,0 +1,196 @@
1
+ include_theme('lightning-rabbit')
2
+ include_theme('body-background-image')
3
+
4
+ @headline_logo_image = "usa1.png"
5
+ include_theme("headline-logo")
6
+
7
+ def Kernel.log(msg)
8
+ open('log', 'w') { |f| f.puts msg.to_s }
9
+ end
10
+
11
+ match(TitleSlide) do |elements|
12
+ elements.prop_set('size', screen_size(8) * Pango::SCALE)
13
+ end
14
+
15
+ match('**', Text) do |elements|
16
+ elements.each do |text|
17
+ case text.text
18
+ when /4gamer/
19
+ text.prop_set('size', screen_size(2.5) * Pango::SCALE)
20
+ when /bugs\.ruby-lang\.org/
21
+ text.prop_set('size', screen_size(4) * Pango::SCALE)
22
+ when /Feature #/, /Show documents when completion/
23
+ text.prop_set('size', screen_size(4) * Pango::SCALE)
24
+ when /How is/
25
+ text.prop_set('size', screen_size(5) * Pango::SCALE)
26
+ when /https?:\/\//
27
+ text.prop_set('size', screen_size(4) * Pango::SCALE)
28
+ end
29
+ end
30
+ end
31
+
32
+ match('**', BlockQuote) do |elements|
33
+ elements.each do |text|
34
+ case text.text
35
+ when /https?:\/\//
36
+ text.prop_set('size', screen_size(4) * Pango::SCALE)
37
+ when /ANSI/
38
+ text.prop_set('size', screen_size(4) * Pango::SCALE)
39
+ else
40
+ text.prop_set('size', screen_size(2.8) * Pango::SCALE)
41
+ end
42
+ end
43
+ end
44
+
45
+ match('*', HeadLine) do |elements|
46
+ elements.each do |headline|
47
+ if headline.text.match?(/GNU/)
48
+ headline.prop_set('size', screen_size(4.5) * Pango::SCALE)
49
+ else
50
+ headline.prop_set('size', screen_size(5.2) * Pango::SCALE)
51
+ end
52
+ end
53
+ end
54
+
55
+ match('**', ItemListItem) do |elements|
56
+ elements.prop_set('size', screen_size(5.0) * Pango::SCALE)
57
+ elements.padding_top = 0
58
+ elements.padding_bottom = 0
59
+ elements.margin_top = 0
60
+ elements.margin_bottom = 0
61
+ end
62
+
63
+ match('**', ItemListItem, '**', ItemListItem) do |elements|
64
+ elements.prop_set('size', screen_size(4.0) * Pango::SCALE)
65
+ elements.padding_top = 0
66
+ elements.padding_bottom = 0
67
+ elements.margin_top = 0
68
+ elements.margin_bottom = 0
69
+ end
70
+
71
+ match('**', ItemListItem, '**', ItemListItem, '**', ItemListItem) do |elements|
72
+ elements.prop_set('size', screen_size(3.3) * Pango::SCALE)
73
+ elements.padding_top = 0
74
+ elements.padding_bottom = 0
75
+ elements.margin_top = 0
76
+ elements.margin_bottom = 0
77
+ end
78
+
79
+ match('**', ItemListItem, '**', ItemListItem, '**', ItemListItem, '**', ItemListItem) do |elements|
80
+ elements.prop_set('size', screen_size(3) * Pango::SCALE)
81
+ elements.padding_top = 0
82
+ elements.padding_bottom = 0
83
+ elements.margin_top = 0
84
+ elements.margin_bottom = 0
85
+ elements.margin_left = screen_size(4)
86
+ end
87
+
88
+ match('**', ItemListItem) do |elements|
89
+ elements.select{ |e| e.text.match?(/codepoint/) }.each do |e|
90
+ e.prop_set('size', screen_size(4) * Pango::SCALE)
91
+ end
92
+ end
93
+
94
+ match('**', Image) do |images|
95
+ images.each do |image|
96
+ if image.caption&.match?(/http/) or image.caption&.match?(/facial expression/)
97
+ image.add_pre_draw_proc(:save_url) do |canvas, x, y, w, h, simulation|
98
+ unless @image_caption_font_size_backup
99
+ @image_caption_font_size_backup = @image_caption_font_size
100
+ @image_caption_font_size = screen_size(3) * Pango::SCALE
101
+ end
102
+ [x, y, w, h]
103
+ end
104
+ elsif image.caption&.match?(/Desk Set/)
105
+ image.add_pre_draw_proc(:save_url) do |canvas, x, y, w, h, simulation|
106
+ unless @image_caption_font_size_backup
107
+ @image_caption_font_size_backup = @image_caption_font_size
108
+ @image_caption_font_size = screen_size(4.5) * Pango::SCALE
109
+ end
110
+ [x, y, w, h]
111
+ end
112
+ elsif image.caption&.match?(/Kobayashi/)
113
+ image.add_pre_draw_proc(:save_url) do |canvas, x, y, w, h, simulation|
114
+ unless @image_caption_font_size_backup
115
+ @image_caption_font_size_backup = @image_caption_font_size
116
+ @image_caption_font_size = screen_size(3) * Pango::SCALE
117
+ end
118
+ [x, y, w, h]
119
+ end
120
+ elsif image.caption&.match?(/fuses/)
121
+ image.add_pre_draw_proc(:save_url) do |canvas, x, y, w, h, simulation|
122
+ unless @image_caption_font_size_backup
123
+ @image_caption_font_size_backup = @image_caption_font_size
124
+ @image_caption_font_size = screen_size(4) * Pango::SCALE
125
+ end
126
+ [x, y, w, h]
127
+ end
128
+ elsif image.caption&.match?(/the hell/)
129
+ image.add_pre_draw_proc(:save_url) do |canvas, x, y, w, h, simulation|
130
+ unless @image_caption_font_size_backup
131
+ @image_caption_font_size_backup = @image_caption_font_size
132
+ @image_caption_font_size = screen_size(4.5) * Pango::SCALE
133
+ end
134
+ [x, y, w, h]
135
+ end
136
+ elsif image.caption&.match?(/Asakusa.rb/)
137
+ image.add_pre_draw_proc(:save_url) do |canvas, x, y, w, h, simulation|
138
+ unless @image_caption_font_size_backup
139
+ @image_caption_font_size_backup = @image_caption_font_size
140
+ @image_caption_font_size = screen_size(4.3) * Pango::SCALE
141
+ end
142
+ [x, y, w, h]
143
+ end
144
+ else
145
+ image.add_pre_draw_proc(:restore_url) do |canvas, x, y, w, h, simulation|
146
+ if @image_caption_font_size_backup
147
+ @image_caption_font_size = @image_caption_font_size_backup
148
+ @image_caption_font_size_backup = nil
149
+ end
150
+ [x, y, w, h]
151
+ end
152
+ end
153
+ end
154
+ end
155
+
156
+ match('*') do |elements|
157
+ elements.each do |slide|
158
+ if slide.title.match?(/fullimage/)
159
+ slide.each do |e|
160
+ if e.instance_of?(Body)
161
+ image = e.first
162
+ image.add_pre_draw_proc(:bbbb) do |canvas, x, y, w, h, simulation|
163
+ image.resize(canvas.width, canvas.height)
164
+ [0.0, 0.0, w, h]
165
+ end
166
+ end
167
+ end
168
+ elsif slide.title.match?(/notitle/)
169
+ slide.each do |e|
170
+ if e.instance_of?(HeadLine)
171
+ e.prop_set('size', screen_size(0) * Pango::SCALE)
172
+ end
173
+ end
174
+ elsif slide.title.match?(/Asakusa\.rb/)
175
+ if (slide.any?{ |e| e.text.match?(/One other/) })
176
+ slide.each do |e|
177
+ e.each do |inside|
178
+ if inside.instance_of?(BlockQuote)
179
+ inside.prop_set('size', screen_size(4) * Pango::SCALE)
180
+ end
181
+ end
182
+ end
183
+ end
184
+ elsif slide.title.match?(/The History of Terminal/)
185
+ if (slide.any?{ |e| e.text.match?(/reset/) })
186
+ slide.each do |e|
187
+ e.each do |inside|
188
+ if inside.instance_of?(PreformattedBlock)
189
+ inside.prop_set('size', screen_size(2.8) * Pango::SCALE)
190
+ end
191
+ end
192
+ end
193
+ end
194
+ end
195
+ end
196
+ end
Binary file
Binary file
Binary file
Binary file
Binary file
metadata ADDED
@@ -0,0 +1,82 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rabbit-slide-aycabta-rubyconf-2019
3
+ version: !ruby/object:Gem::Version
4
+ version: 2019.11.20.0
5
+ platform: ruby
6
+ authors:
7
+ - ITOYANAGI Sakura
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2019-11-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rabbit
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 2.0.2
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 2.0.2
27
+ description: ''
28
+ email:
29
+ - aycabta@gmail.com
30
+ executables: []
31
+ extensions: []
32
+ extra_rdoc_files: []
33
+ files:
34
+ - ".rabbit"
35
+ - Ernest_Hemingway_typewriter.jpg
36
+ - README.rd
37
+ - Rakefile
38
+ - Ruby_logo.svg
39
+ - Ruby_logo_fullhd.png
40
+ - asakusarb.jpg
41
+ - cfp.md
42
+ - char_deco.png
43
+ - config.yaml
44
+ - deskset.jpg
45
+ - electric_telegraph.jpg
46
+ - eyes.png
47
+ - norosi_off.png
48
+ - norosi_on.png
49
+ - pdf/rubyconf-2019-technical_background_of_interactive_cli_of_ruby_2.7.pdf
50
+ - space-pirates-logo.svg
51
+ - technical_background_of_interactive_cli_of_ruby_2.7.rab
52
+ - telephone.png
53
+ - theme.rb
54
+ - usa1.png
55
+ - worldmap.png
56
+ - worldmap_japan.png
57
+ - worldmap_nashville.png
58
+ - worldmap_puertorico.png
59
+ homepage: https://slide.rabbit-shocker.org/authors/aycabta/rubyconf-2019/
60
+ licenses:
61
+ - CC-BY-SA-4.0
62
+ metadata: {}
63
+ post_install_message:
64
+ rdoc_options: []
65
+ require_paths:
66
+ - lib
67
+ required_ruby_version: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - ">="
70
+ - !ruby/object:Gem::Version
71
+ version: '0'
72
+ required_rubygems_version: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: '0'
77
+ requirements: []
78
+ rubygems_version: 3.0.6
79
+ signing_key:
80
+ specification_version: 4
81
+ summary: 'IRB Reboot: Modernize Implementation and Features'
82
+ test_files: []