rabbit-slide-hasumikin-Euruko2024 2024.09.12.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.rabbit +2 -0
- data/PicoRubyHandsOn.md +203 -0
- data/README.md +32 -0
- data/Rakefile +17 -0
- data/config.yaml +23 -0
- data/gist/1_led/rgb_led.jpg +0 -0
- data/gist/1_led/rgbled.png +0 -0
- data/gist/1_led/single_led.jpg +0 -0
- data/gist/4_lcd/lcd.png +0 -0
- data/images/QR_picoruby.png +0 -0
- data/images/Terminal-dec-vt100.jpg +0 -0
- data/images/assets/bg_pattern.png +0 -0
- data/images/assets/bg_slide.png +0 -0
- data/images/assets/bg_title.png +0 -0
- data/images/assets/bg_title.svg +60 -0
- data/images/assets/hero_image.png +0 -0
- data/images/assets/title_dot.svg +13 -0
- data/images/assets/title_dot_24.png +0 -0
- data/images/assets/title_dot_30.png +0 -0
- data/images/assets/title_dot_36.png +0 -0
- data/images/boot_button_1.png +0 -0
- data/images/download-r2p2.png +0 -0
- data/images/hasumi.jpg +0 -0
- data/images/install-uf2.png +0 -0
- data/images/rpi_pico.jpg +0 -0
- data/images/setup.png +0 -0
- data/images/teraterm-0.png +0 -0
- data/images/teraterm.png +0 -0
- data/pdf/Euruko2024-PicoRubyHandsOn.pdf +0 -0
- data/theme.rb +203 -0
- metadata +84 -0
Binary file
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<svg width="121" height="121" viewBox="0 0 121 121" fill="none" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<g id="Layer_1" clip-path="url(#clip0_499_1670)">
|
3
|
+
<g id="Group 237877">
|
4
|
+
<path id="Vector" d="M75.6405 120.76C66.2505 121.28 56.8605 120.82 47.4705 121.01C45.5405 121.05 45.2205 120.11 45.2605 118.5C45.3305 115.23 45.3105 111.96 45.2705 108.7C45.2405 105.55 45.2105 105.49 42.1505 105.48C34.9305 105.44 27.7105 105.47 20.4905 105.47C19.6705 105.47 18.8605 105.49 18.0405 105.47C15.1105 105.4 15.0805 105.4 15.0405 102.59C15.0005 99.6 15.0405 96.6 15.0405 93.6C15.0405 88.56 15.0605 83.52 15.0405 78.49C15.0205 75.7 14.9805 75.67 12.0705 75.64C8.94053 75.61 5.80053 75.55 2.67053 75.66C0.830532 75.73 -0.0194679 75.32 0.0105321 73.22C0.110532 64.64 0.100532 56.06 0.0105321 47.49C-0.00946787 45.48 0.750532 44.88 2.65053 44.95C5.78053 45.06 8.91053 45.02 12.0505 44.97C14.9505 44.92 15.0105 44.88 15.0305 42.02C15.0705 34.94 15.0405 27.86 15.0405 20.78C15.0405 19.96 15.0405 19.15 15.0405 18.33C15.0805 15.23 15.0905 15.19 18.0805 15.18C25.1605 15.16 32.2405 15.18 39.3305 15.18C40.2805 15.18 41.2405 15.18 42.1905 15.18C45.1805 15.21 45.3405 15.38 45.3005 12.03C45.2605 8.76 45.3405 5.49 45.2705 2.23C45.2405 0.66 45.7505 0 47.3705 0C56.2205 0.05 65.0805 0.03 73.9305 0.01C75.3305 0.01 75.8405 0.62 75.8205 1.98C75.7705 5.38 75.7805 8.79 75.8205 12.19C75.8505 15.06 75.8805 15.12 78.7005 15.13C85.9205 15.16 93.1405 15.14 100.361 15.14C101.181 15.14 101.991 15.13 102.811 15.14C105.711 15.2 105.761 15.2 105.781 18C105.811 23.58 105.781 29.17 105.781 34.75C105.781 37.34 105.911 39.93 105.741 42.51C105.601 44.6 106.521 45.04 108.371 44.98C111.641 44.87 114.911 45.04 118.171 44.92C120.081 44.85 120.821 45.43 120.791 47.44C120.661 56.83 120.651 66.22 120.601 75.61C116.671 75.61 112.731 75.6 108.801 75.63C105.571 75.66 105.521 75.68 105.511 79.07C105.481 86.53 105.521 93.99 105.491 101.44C105.481 105.22 105.431 105.26 101.631 105.27C94.1705 105.3 86.7105 105.26 79.2505 105.29C75.7605 105.3 75.7505 105.35 75.7205 108.95C75.6805 112.88 75.6705 116.81 75.6405 120.74V120.76ZM75.8005 60.09C75.8005 55.88 75.7705 51.67 75.8205 47.46C75.8405 45.89 75.6305 44.94 73.6405 44.96C64.9405 45.05 56.2505 45.04 47.5505 44.96C45.7405 44.95 45.2505 45.65 45.2605 47.34C45.3205 56.03 45.3005 64.73 45.2705 73.42C45.2705 74.83 45.4705 75.66 47.2405 75.64C56.0705 75.56 64.9105 75.57 73.7405 75.64C75.3705 75.65 75.8505 75.09 75.8205 73.52C75.7505 69.04 75.7905 64.55 75.7905 60.07L75.8005 60.09Z" fill="#DB2026"/>
|
5
|
+
<rect id="Rectangle 6427" x="36" y="36" width="48" height="51" fill="#DB2026"/>
|
6
|
+
</g>
|
7
|
+
</g>
|
8
|
+
<defs>
|
9
|
+
<clipPath id="clip0_499_1670">
|
10
|
+
<rect width="120.8" height="121.01" fill="white"/>
|
11
|
+
</clipPath>
|
12
|
+
</defs>
|
13
|
+
</svg>
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/images/hasumi.jpg
ADDED
Binary file
|
Binary file
|
data/images/rpi_pico.jpg
ADDED
Binary file
|
data/images/setup.png
ADDED
Binary file
|
Binary file
|
data/images/teraterm.png
ADDED
Binary file
|
Binary file
|
data/theme.rb
ADDED
@@ -0,0 +1,203 @@
|
|
1
|
+
# puts font_families.sort
|
2
|
+
@xxx_large_font_size = screen_size(9 * Pango::SCALE)
|
3
|
+
@xx_large_font_size = screen_size(7.5 * Pango::SCALE)
|
4
|
+
@x_large_font_size = screen_size(6 * Pango::SCALE)
|
5
|
+
@large_font_size = screen_size(5.5 * Pango::SCALE)
|
6
|
+
@normal_font_size = screen_size(4.5 * Pango::SCALE)
|
7
|
+
@small_font_size = screen_size(4 * Pango::SCALE)
|
8
|
+
@x_small_font_size = screen_size(3.5 * Pango::SCALE)
|
9
|
+
@xx_small_font_size = screen_size(2 * Pango::SCALE)
|
10
|
+
|
11
|
+
@title_font_family = find_font_family('Kanit')
|
12
|
+
@font_family = find_font_family('Kanit')
|
13
|
+
@monospace_font_family = 'Courier Prime'
|
14
|
+
|
15
|
+
# colors
|
16
|
+
foreground = "#ffffff"
|
17
|
+
red = "#d62f24"
|
18
|
+
blue = "#00a2ff"
|
19
|
+
black = "#000000"
|
20
|
+
dark_gray = "#333333"
|
21
|
+
light_gray = "#a9a7ad"
|
22
|
+
preformatted_foreground = "#00ffc2"
|
23
|
+
|
24
|
+
@default_headline_line_color = light_gray
|
25
|
+
@default_headline_line_width = 2
|
26
|
+
@default_headline_line_expand = true
|
27
|
+
|
28
|
+
@default_emphasis_color = red
|
29
|
+
@default_emphasis_level2_color = "#ffffff"
|
30
|
+
|
31
|
+
set_graffiti_color red
|
32
|
+
set_graffiti_line_width 7
|
33
|
+
|
34
|
+
#@table_frame_color = "#ffffff"
|
35
|
+
#@table_fill_color = "#0f0428"
|
36
|
+
#@table_body_frame_color = "#ffffff"
|
37
|
+
#@table_body_fill_color = "#3f3468"
|
38
|
+
#@table_head_frame_color = "#ffffff"
|
39
|
+
#@table_head_fill_color = "#rf0428"
|
40
|
+
|
41
|
+
@preformatted_fill_color = black
|
42
|
+
@preformatted_frame_color = red
|
43
|
+
@preformatted_frame_width = 5
|
44
|
+
# @preformatted_centering = true
|
45
|
+
|
46
|
+
@space = screen_y(1)
|
47
|
+
|
48
|
+
@image_slide_number_start_flag_color = blue
|
49
|
+
@image_slide_number_goal_flag_color = red
|
50
|
+
|
51
|
+
#@slide_headline_hide = true
|
52
|
+
|
53
|
+
@slide_background_image = 'images/assets/bg_slide.png'
|
54
|
+
include_theme("slide-background-image")
|
55
|
+
|
56
|
+
@title_slide_background_image = 'images/assets/bg_title.png'
|
57
|
+
include_theme("title-slide-background-image")
|
58
|
+
|
59
|
+
include_theme('default')
|
60
|
+
|
61
|
+
#match(Slide, HeadLine) do |heads|
|
62
|
+
# heads.hide
|
63
|
+
# heads.margin_top = -120
|
64
|
+
#end
|
65
|
+
match(Slide) do |slides|
|
66
|
+
# slides.horizontal_centering = true
|
67
|
+
# slides.margin_left = 100
|
68
|
+
# slides.margin_right = 100
|
69
|
+
slides.prop_set("foreground", foreground)
|
70
|
+
end
|
71
|
+
|
72
|
+
match TitleSlide do |slides|
|
73
|
+
slides.margin_right = 550
|
74
|
+
slides.prop_set("foreground", foreground)
|
75
|
+
slides.prop_set "style", "normal"
|
76
|
+
end
|
77
|
+
match TitleSlide, Title do |title|
|
78
|
+
title.margin_top = 10
|
79
|
+
title.prop_set "size", @x_large_font_size
|
80
|
+
title.prop_set "font-family", @title_font_family
|
81
|
+
title.prop_set "weight", "bold"
|
82
|
+
end
|
83
|
+
match TitleSlide, Subtitle do |subtitle|
|
84
|
+
subtitle.margin_top = 0
|
85
|
+
subtitle.prop_set "size", @xx_large_font_size
|
86
|
+
subtitle.prop_set "font-family", @title_font_family
|
87
|
+
subtitle.prop_set "weight", "bold"
|
88
|
+
end
|
89
|
+
match TitleSlide, Author do |authors|
|
90
|
+
authors.margin_top = 70
|
91
|
+
authors.prop_set "size", @large_font_size
|
92
|
+
authors.prop_set "foreground", red
|
93
|
+
end
|
94
|
+
match TitleSlide, ContentSource do |cs|
|
95
|
+
cs.margin_top = 20
|
96
|
+
cs.prop_set "size", @small_font_size
|
97
|
+
end
|
98
|
+
match TitleSlide, Place do |cs|
|
99
|
+
cs.margin_top = 20
|
100
|
+
cs.prop_set "size", @x_small_font_size
|
101
|
+
end
|
102
|
+
match TitleSlide, Date do |date|
|
103
|
+
date.margin_top = 10
|
104
|
+
date.prop_set "size", @x_small_font_size
|
105
|
+
end
|
106
|
+
match TitleSlide, Institution do |i|
|
107
|
+
i.prop_set "size", @x_small_font_size
|
108
|
+
end
|
109
|
+
|
110
|
+
#@slide_logo_image = 'images/mark_g.png'
|
111
|
+
#include_theme('slide-logo')
|
112
|
+
|
113
|
+
@item_image_1 = 'images/assets/title_dot_36.png'
|
114
|
+
@item_image_2 = 'images/assets/title_dot_30.png'
|
115
|
+
@item_image_3 = 'images/assets/title_dot_24.png'
|
116
|
+
|
117
|
+
include_theme("default-item-mark")
|
118
|
+
|
119
|
+
add_image_path("rabbit-images")
|
120
|
+
|
121
|
+
slide_body = [Slide, Body]
|
122
|
+
item_list_item = [ItemList, ItemListItem]
|
123
|
+
|
124
|
+
indent = 50
|
125
|
+
|
126
|
+
match(*(slide_body + (item_list_item * 1))) do |items|
|
127
|
+
name = "item1"
|
128
|
+
items.delete_pre_draw_proc_by_name(name)
|
129
|
+
items.delete_post_draw_proc_by_name(name)
|
130
|
+
draw_image_mark(items, @item_image_1, name, indent: indent)
|
131
|
+
end
|
132
|
+
|
133
|
+
match(*(slide_body + (item_list_item * 2))) do |items|
|
134
|
+
name = "item2"
|
135
|
+
items.delete_pre_draw_proc_by_name(name)
|
136
|
+
items.delete_post_draw_proc_by_name(name)
|
137
|
+
draw_image_mark(items, @item_image_2, name, indent: indent)
|
138
|
+
end
|
139
|
+
|
140
|
+
match(*(slide_body + (item_list_item * 3))) do |items|
|
141
|
+
name = "item3"
|
142
|
+
items.delete_pre_draw_proc_by_name(name)
|
143
|
+
items.delete_post_draw_proc_by_name(name)
|
144
|
+
draw_image_mark(items, @item_image_3, name, indent: indent)
|
145
|
+
end
|
146
|
+
|
147
|
+
enum_list_item = [EnumList, EnumListItem]
|
148
|
+
|
149
|
+
match(*(slide_body + enum_list_item + item_list_item)) do |items|
|
150
|
+
name = "enum-item1"
|
151
|
+
items.delete_pre_draw_proc_by_name(name)
|
152
|
+
items.delete_post_draw_proc_by_name(name)
|
153
|
+
draw_image_mark(items, @item_image_1, name, indent: indent)
|
154
|
+
end
|
155
|
+
|
156
|
+
match(*(slide_body + enum_list_item + (item_list_item * 2))) do |items|
|
157
|
+
name = "enum-item2"
|
158
|
+
items.delete_pre_draw_proc_by_name(name)
|
159
|
+
items.delete_post_draw_proc_by_name(name)
|
160
|
+
draw_image_mark(items, @item_image_2, name, indent: indent)
|
161
|
+
end
|
162
|
+
|
163
|
+
# table
|
164
|
+
all_table = ["**", Table]
|
165
|
+
match(*(all_table + [TableBody, TableRow, TableCell])) do |cells|
|
166
|
+
set_font_family(cells, @monospace_font_family)
|
167
|
+
end
|
168
|
+
match(*(all_table + [TableHead, TableRow, TableHeader])) do |headers|
|
169
|
+
set_font_family(headers, @monospace_font_family)
|
170
|
+
end
|
171
|
+
|
172
|
+
match("**", Emphasis) do |texts|
|
173
|
+
texts.prop_set("foreground", "#ff0000")
|
174
|
+
texts.prop_set("weight", "normal")
|
175
|
+
end
|
176
|
+
|
177
|
+
# Chapter
|
178
|
+
match Slide do |slides|
|
179
|
+
slides.each do |slide|
|
180
|
+
if slide.match?(/sub_chapter/)
|
181
|
+
slide.horizontal_centering = true
|
182
|
+
elsif slide.match?(/chapter/)
|
183
|
+
slide.margin_top = -10
|
184
|
+
set_font_family slide, @title_font_family
|
185
|
+
slide.horizontal_centering = true
|
186
|
+
elsif slide.match?(/cite/)
|
187
|
+
slide.prop_set "foreground", foreground
|
188
|
+
slide.horizontal_centering = true
|
189
|
+
end
|
190
|
+
end
|
191
|
+
end
|
192
|
+
|
193
|
+
match("**", PreformattedBlock) do |block|
|
194
|
+
# assume console
|
195
|
+
block.prop_set("foreground", preformatted_foreground)
|
196
|
+
# block.prop_set("background", dark_gray)
|
197
|
+
end
|
198
|
+
# ↑↓ the order matters
|
199
|
+
match("**", SyntaxHighlightingBlock) do |block|
|
200
|
+
# assume ruby
|
201
|
+
block.prop_set("foreground", black)
|
202
|
+
end
|
203
|
+
|
metadata
ADDED
@@ -0,0 +1,84 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rabbit-slide-hasumikin-Euruko2024
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 2024.09.12.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- HASUMI Hitoshi
|
8
|
+
bindir: bin
|
9
|
+
cert_chain: []
|
10
|
+
date: 2024-10-29 00:00:00.000000000 Z
|
11
|
+
dependencies:
|
12
|
+
- !ruby/object:Gem::Dependency
|
13
|
+
name: rabbit
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
15
|
+
requirements:
|
16
|
+
- - ">="
|
17
|
+
- !ruby/object:Gem::Version
|
18
|
+
version: 2.0.2
|
19
|
+
type: :runtime
|
20
|
+
prerelease: false
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - ">="
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: 2.0.2
|
26
|
+
description: Presentation slide for Euruko 2024
|
27
|
+
email:
|
28
|
+
- hasumikin@gmail.com
|
29
|
+
executables: []
|
30
|
+
extensions: []
|
31
|
+
extra_rdoc_files: []
|
32
|
+
files:
|
33
|
+
- ".rabbit"
|
34
|
+
- PicoRubyHandsOn.md
|
35
|
+
- README.md
|
36
|
+
- Rakefile
|
37
|
+
- config.yaml
|
38
|
+
- gist/1_led/rgb_led.jpg
|
39
|
+
- gist/1_led/rgbled.png
|
40
|
+
- gist/1_led/single_led.jpg
|
41
|
+
- gist/4_lcd/lcd.png
|
42
|
+
- images/QR_picoruby.png
|
43
|
+
- images/Terminal-dec-vt100.jpg
|
44
|
+
- images/assets/bg_pattern.png
|
45
|
+
- images/assets/bg_slide.png
|
46
|
+
- images/assets/bg_title.png
|
47
|
+
- images/assets/bg_title.svg
|
48
|
+
- images/assets/hero_image.png
|
49
|
+
- images/assets/title_dot.svg
|
50
|
+
- images/assets/title_dot_24.png
|
51
|
+
- images/assets/title_dot_30.png
|
52
|
+
- images/assets/title_dot_36.png
|
53
|
+
- images/boot_button_1.png
|
54
|
+
- images/download-r2p2.png
|
55
|
+
- images/hasumi.jpg
|
56
|
+
- images/install-uf2.png
|
57
|
+
- images/rpi_pico.jpg
|
58
|
+
- images/setup.png
|
59
|
+
- images/teraterm-0.png
|
60
|
+
- images/teraterm.png
|
61
|
+
- pdf/Euruko2024-PicoRubyHandsOn.pdf
|
62
|
+
- theme.rb
|
63
|
+
homepage: https://slide.rabbit-shocker.org/authors/hasumikin/Euruko2024/
|
64
|
+
licenses:
|
65
|
+
- MIT
|
66
|
+
metadata: {}
|
67
|
+
rdoc_options: []
|
68
|
+
require_paths:
|
69
|
+
- lib
|
70
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
71
|
+
requirements:
|
72
|
+
- - ">="
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '0'
|
75
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
76
|
+
requirements:
|
77
|
+
- - ">="
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '0'
|
80
|
+
requirements: []
|
81
|
+
rubygems_version: 3.6.0.dev
|
82
|
+
specification_version: 4
|
83
|
+
summary: 'Embedded Ruby Revolution: A Hands-On Workshop with PicoRuby'
|
84
|
+
test_files: []
|