squib 0.14.3.pre1 → 0.16.0.pre.preview1
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/.github/workflows/tests.yml +22 -0
- data/CHANGELOG.md +58 -2
- data/Dockerfile +27 -0
- data/Guardfile +8 -0
- data/README.md +24 -6
- data/RELEASE TODO.md +1 -0
- data/Rakefile +3 -0
- data/lib/squib.rb +3 -1
- data/lib/squib/args/arg_loader.rb +109 -106
- data/lib/squib/args/box.rb +52 -48
- data/lib/squib/args/card_range.rb +26 -24
- data/lib/squib/args/color_validator.rb +4 -9
- data/lib/squib/args/coords.rb +39 -25
- data/lib/squib/args/csv_opts.rb +13 -16
- data/lib/squib/args/dir_validator.rb +7 -12
- data/lib/squib/args/draw.rb +69 -68
- data/lib/squib/args/embed_adjust.rb +12 -15
- data/lib/squib/args/embed_key.rb +6 -11
- data/lib/squib/args/hand_special.rb +25 -25
- data/lib/squib/args/import.rb +54 -27
- data/lib/squib/args/input_file.rb +22 -26
- data/lib/squib/args/paint.rb +30 -31
- data/lib/squib/args/paragraph.rb +95 -93
- data/lib/squib/args/save_batch.rb +50 -48
- data/lib/squib/args/scale_box.rb +43 -39
- data/lib/squib/args/sheet.rb +147 -149
- data/lib/squib/args/showcase_special.rb +32 -29
- data/lib/squib/args/sprue_file.rb +30 -30
- data/lib/squib/args/svg_special.rb +26 -26
- data/lib/squib/args/transform.rb +48 -54
- data/lib/squib/args/typographer.rb +88 -92
- data/lib/squib/args/unit_conversion.rb +6 -8
- data/lib/squib/args/xywh_shorthands.rb +56 -0
- data/lib/squib/builtin/projects/advanced/config.yml +3 -6
- data/lib/squib/builtin/projects/basic/config.yml +3 -6
- data/lib/squib/commands/make_sprue.rb +2 -0
- data/lib/squib/conf.rb +5 -5
- data/lib/squib/deck.rb +34 -12
- data/lib/squib/dsl/background.rb +35 -0
- data/lib/squib/dsl/circle.rb +39 -0
- data/lib/squib/dsl/csv.rb +42 -0
- data/lib/squib/dsl/curve.rb +35 -0
- data/lib/squib/dsl/cut_zone.rb +47 -0
- data/lib/squib/dsl/ellipse.rb +37 -0
- data/lib/squib/dsl/grid.rb +35 -0
- data/lib/squib/{api → dsl}/groups.rb +0 -0
- data/lib/squib/dsl/hand.rb +42 -0
- data/lib/squib/dsl/line.rb +35 -0
- data/lib/squib/dsl/png.rb +56 -0
- data/lib/squib/dsl/polygon.rb +36 -0
- data/lib/squib/dsl/rect.rb +37 -0
- data/lib/squib/dsl/safe_zone.rb +48 -0
- data/lib/squib/dsl/save.rb +21 -0
- data/lib/squib/dsl/save_pdf.rb +50 -0
- data/lib/squib/dsl/save_png.rb +47 -0
- data/lib/squib/dsl/save_sheet.rb +53 -0
- data/lib/squib/dsl/showcase.rb +43 -0
- data/lib/squib/dsl/star.rb +37 -0
- data/lib/squib/dsl/svg.rb +62 -0
- data/lib/squib/dsl/text.rb +54 -0
- data/lib/squib/dsl/text_embed.rb +78 -0
- data/lib/squib/dsl/triangle.rb +35 -0
- data/lib/squib/{api → dsl}/units.rb +10 -0
- data/lib/squib/dsl/xlsx.rb +40 -0
- data/lib/squib/dsl/yaml.rb +40 -0
- data/lib/squib/errors_warnings/warn_unexpected_params.rb +14 -0
- data/lib/squib/graphics/cairo_context_wrapper.rb +2 -2
- data/lib/squib/graphics/image.rb +0 -6
- data/lib/squib/graphics/save_images.rb +3 -3
- data/lib/squib/graphics/save_sprue.rb +39 -12
- data/lib/squib/graphics/showcase.rb +1 -1
- data/lib/squib/graphics/text.rb +37 -9
- data/lib/squib/import/csv_importer.rb +45 -0
- data/lib/squib/import/quantity_exploder.rb +18 -0
- data/lib/squib/import/xlsx_importer.rb +28 -0
- data/lib/squib/import/yaml_importer.rb +30 -0
- data/lib/squib/layout_parser.rb +24 -7
- data/lib/squib/sprues/crop_line.rb +6 -6
- data/lib/squib/sprues/crop_line_dash.rb +6 -6
- data/lib/squib/sprues/sprue.rb +19 -14
- data/lib/squib/sprues/sprue_schema.rb +4 -2
- data/lib/squib/version.rb +1 -1
- data/samples/autoscale_font/_autoscale_font.rb +77 -8
- data/samples/colors/_colors.rb +11 -5
- data/samples/colors/_switch_color.rb +33 -0
- data/samples/data/_excel.rb +1 -1
- data/samples/images/_more_load_images.rb +1 -1
- data/samples/ranges/_ranges.rb +1 -1
- data/samples/saves/_save_filenames.rb +28 -0
- data/samples/saves/_save_pdf.rb +1 -1
- data/samples/saves/_saves.rb +2 -1
- data/samples/shapes/_draw_shapes.rb +2 -2
- data/samples/sprues/_advanced_sprues.rb +4 -3
- data/samples/sprues/_builtin_sprues.rb +1 -0
- data/samples/sprues/_fold_sheet.rb +4 -1
- data/samples/text/_text.rb +6 -1
- data/samples/text/_text_options.rb +2 -1
- data/samples/units/_cells.rb +51 -0
- data/samples/units/_shorthands.rb +49 -0
- data/samples/units/_units.rb +7 -0
- data/squib.gemspec +19 -13
- metadata +151 -61
- data/.travis.yml +0 -19
- data/appveyor.yml +0 -24
- data/lib/squib/api/background.rb +0 -15
- data/lib/squib/api/data.rb +0 -137
- data/lib/squib/api/image.rb +0 -49
- data/lib/squib/api/save.rb +0 -83
- data/lib/squib/api/shapes.rb +0 -124
- data/lib/squib/api/text.rb +0 -25
- data/lib/squib/api/text_embed.rb +0 -71
- data/samples/bug256/_bug256.rb +0 -13
@@ -1,4 +1,5 @@
|
|
1
|
-
require 'squib'
|
1
|
+
# require 'squib'
|
2
|
+
require_relative '../../lib/squib'
|
2
3
|
|
3
4
|
# This is a more advanced example of Sprues
|
4
5
|
# (mostly so we can have a torturous regression test)
|
@@ -14,10 +15,10 @@ Squib::Deck.new(cards: 6, width: '2.2in', height: '2.1in') do
|
|
14
15
|
|
15
16
|
circle x: width/2, y: height/2, radius: 20 # midpoint
|
16
17
|
|
17
|
-
text str: (0..9).map{ |i| "Card #{i}\n\n" },
|
18
|
+
text str: (0..9).map{ |i| "Card! #{i}\n\n" },
|
18
19
|
font: 'Sans 32', align: :center, valign: :middle,
|
19
20
|
height: :deck, width: :deck
|
20
|
-
|
21
|
+
|
21
22
|
save_sheet sprue: 'my_sprues/weird_sprue.yml',
|
22
23
|
trim: '0.2in', trim_radius: '10pt',
|
23
24
|
prefix: "advanced_sprues_"
|
@@ -22,6 +22,9 @@ Squib::Deck.new(width: '2.5in', height: '3.5in', cards: 8) do
|
|
22
22
|
|
23
23
|
text str: strings,font: 'Sans 32', align: :center, valign: :middle,
|
24
24
|
height: :deck, width: :deck
|
25
|
+
|
25
26
|
save_sheet prefix: 'foldable_',
|
26
|
-
sprue: 'letter_poker_foldable_8up.yml'
|
27
|
+
sprue: 'letter_poker_foldable_8up.yml' # built-in sprue
|
28
|
+
save_pdf file: 'foldable.pdf',
|
29
|
+
sprue: 'letter_poker_foldable_8up.yml' # built-in sprue
|
27
30
|
end
|
data/samples/text/_text.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'squib'
|
2
2
|
require 'squib/sample_helpers'
|
3
3
|
|
4
|
-
Squib::Deck.new(width: 1000, height:
|
4
|
+
Squib::Deck.new(width: 1000, height: 1450) do
|
5
5
|
draw_graph_paper width, height
|
6
6
|
|
7
7
|
sample 'Font strings are quite expressive. Specify family, modifiers, then size. Font names with spaces in them should end with a comma to help with parsing.' do |x, y|
|
@@ -21,6 +21,11 @@ Squib::Deck.new(width: 1000, height: 1250) do
|
|
21
21
|
hint: :red, width: 350, font: 'Serif bold 7'
|
22
22
|
end
|
23
23
|
|
24
|
+
sample 'If you specify ellipsize: :autosize, the font size will autoscale.' do |x, y|
|
25
|
+
text str: 'This text doeas not fit with font size 7. It is autoscaled to the largest size that fits instead.', x: x - 50, y: y,
|
26
|
+
hint: :red, width: 350, height: 100, ellipsize: :autoscale, font: 'Serif bold 7'
|
27
|
+
end
|
28
|
+
|
24
29
|
sample 'If you specify the width only, and turn off ellipsize, the height will auto-stretch.' do |x, y|
|
25
30
|
text str: 'This has fixed width, but not fixed height.', x: x, y: y,
|
26
31
|
hint: :red, width: 300, ellipsize: false, font: 'Serif bold 8'
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'squib'
|
2
|
+
|
3
|
+
Squib::Deck.new(width: '1.5in', height: '1.5in') do
|
4
|
+
background color: :white
|
5
|
+
|
6
|
+
# Squib has a custom unit, called "cell"
|
7
|
+
# A "cell" unit defaults to 37.5px, which at 300dpi is 1/8in or 3.175mm
|
8
|
+
# This is a very common multiple for layouts.
|
9
|
+
# This helps us lay things out in grids without doing much math in our heads
|
10
|
+
# Here's an example... with grid!
|
11
|
+
grid width: '1 cell', height: '1 cell'
|
12
|
+
|
13
|
+
# Plurals are fine or just 'c' as a unit is fine
|
14
|
+
# Whitespace is pretty lenient too.
|
15
|
+
rect fill_color: :blue,
|
16
|
+
x: '1 cell', y: '2 cells',
|
17
|
+
width: '1c', height: '1cell '
|
18
|
+
|
19
|
+
# Technically, the "cell" is actually a "unit", so you can even combine
|
20
|
+
# with xywh shorhands!!
|
21
|
+
rect fill_color: :red,
|
22
|
+
x: 'middle + 0.5c', y: 'height - 1.5c',
|
23
|
+
width: '1c', height: '1c'
|
24
|
+
|
25
|
+
# And, unlike xywh shorthands, this applies basically everywhere we support
|
26
|
+
# unit conversion.
|
27
|
+
circle fill_color: :green,
|
28
|
+
x: '3c', y: '2c', radius: '1c'
|
29
|
+
# Decimals are fine too
|
30
|
+
circle fill_color: :green,
|
31
|
+
x: '5c', y: '2c', radius: '0.5c'
|
32
|
+
# Even dashes!
|
33
|
+
circle fill_color: '#0000', stroke_color: :purple,
|
34
|
+
x: '1c', y: '4c', radius: '0.5c', dash: '0.25c 0.25c'
|
35
|
+
|
36
|
+
# We can also do stuff in layout. Check out the yml file...
|
37
|
+
# (even cleaner in Yaml since we don't need quotes!)
|
38
|
+
use_layout file: 'cells.yml'
|
39
|
+
rect layout: :example
|
40
|
+
rect layout: :extends_example
|
41
|
+
|
42
|
+
save_png prefix: 'cells_'
|
43
|
+
end
|
44
|
+
|
45
|
+
|
46
|
+
# You can customize this with the cell_px configuration option
|
47
|
+
Squib::Deck.new(width: 100, height: 100, config: 'cell_config.yml') do
|
48
|
+
background color: :white
|
49
|
+
rect x: '1c', y: '1c', width: '1c', height: '1c', fill_color: :purple
|
50
|
+
save_png prefix: 'custom_cell_'
|
51
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
require_relative '../../lib/squib'
|
2
|
+
|
3
|
+
# Lots of DSL methods have shorthands that are accepted for
|
4
|
+
# x, y, width, and height parameters.
|
5
|
+
Squib::Deck.new(width: '0.5in', height: '0.25in') do
|
6
|
+
background color: :white
|
7
|
+
|
8
|
+
# middle for x and y will resolve to half the height
|
9
|
+
text str: 'xymiddle', font: 'Sans Bold 3', hint: :red,
|
10
|
+
x: 'middle', y: :middle
|
11
|
+
|
12
|
+
# 'center' also works
|
13
|
+
rect width: 30, height: 30,
|
14
|
+
x: :center, y: 'center'
|
15
|
+
|
16
|
+
# Applies to shapes
|
17
|
+
triangle x1: 20, y1: 20,
|
18
|
+
x2: 60, y2: 20,
|
19
|
+
x3: :middle, y3: :middle
|
20
|
+
|
21
|
+
# We can also do width-, height-, width/, height/
|
22
|
+
rect x: 20, y: 5, stroke_color: :green,
|
23
|
+
width: 'width - 0.1in', height: 10
|
24
|
+
|
25
|
+
rect x: 10, y: 50, width: 10, height: 'height / 3',
|
26
|
+
stroke_color: :purple
|
27
|
+
|
28
|
+
# And middle+/-
|
29
|
+
|
30
|
+
rect x: 'middle + 0.1in', y: 'middle - 0.1in',
|
31
|
+
width: '0.1in', height: '0.1in', fill_color: :blue
|
32
|
+
|
33
|
+
# Layouts apply this too.
|
34
|
+
use_layout file: 'shorthands.yml'
|
35
|
+
rect layout: :example
|
36
|
+
|
37
|
+
# HOWEVER! Shorthands don't combine in an "extends" situation,
|
38
|
+
# e.g. this won't work:
|
39
|
+
# parent:
|
40
|
+
# x: middle
|
41
|
+
# child:
|
42
|
+
# extends: parent
|
43
|
+
# x: += 0.5in
|
44
|
+
|
45
|
+
# These shorthands are not intended for every xywh parameter or
|
46
|
+
# length parameter, see docs for when they do or do not apply.
|
47
|
+
|
48
|
+
save_png prefix: 'shorthand_'
|
49
|
+
end
|
data/samples/units/_units.rb
CHANGED
@@ -23,10 +23,17 @@ Squib::Deck.new(width: '1.5in', height: '1.5in') do
|
|
23
23
|
width: safe_width, height: safe_height,
|
24
24
|
radius: '2 mm '
|
25
25
|
|
26
|
+
# Angles are also automatically converted to radians if you use deg
|
27
|
+
svg file: '../spanner.svg',
|
28
|
+
x: 100, y: 100, width: 40, height: 40, angle: '30deg'
|
29
|
+
|
26
30
|
# We can also do stuff in layout. Check out the yml file...
|
27
31
|
# (even cleaner in Yaml since we don't need quotes!)
|
28
32
|
use_layout file: 'using_units.yml'
|
29
33
|
text str: 'Hello.', layout: :example
|
34
|
+
svg file: '../spanner.svg', layout: :angled
|
30
35
|
|
31
36
|
save prefix: 'units_', format: :png
|
37
|
+
|
38
|
+
# But wait... there's more! See _shorthands.rb for more fanciness with units
|
32
39
|
end
|
data/squib.gemspec
CHANGED
@@ -7,7 +7,7 @@ Gem::Specification.new do |spec|
|
|
7
7
|
spec.specification_version = 2 if spec.respond_to? :specification_version=
|
8
8
|
spec.required_rubygems_version = Gem::Requirement.new('>= 0') if spec.respond_to? :required_rubygems_version=
|
9
9
|
spec.rubygems_version = '2.2.2'
|
10
|
-
spec.required_ruby_version = '>= 2.
|
10
|
+
spec.required_ruby_version = '>= 2.5.0'
|
11
11
|
|
12
12
|
spec.name = 'squib'
|
13
13
|
spec.version = Squib::VERSION
|
@@ -15,9 +15,11 @@ Gem::Specification.new do |spec|
|
|
15
15
|
|
16
16
|
spec.summary = 'A Ruby DSL for prototyping card games'
|
17
17
|
spec.description = 'Squib is a Ruby DSL for prototyping card games'
|
18
|
+
spec.post_install_message = 'Happy Squibbing!'
|
18
19
|
spec.authors = ['Andy Meneely']
|
19
20
|
spec.email = 'andy.meneely@gmail.com'
|
20
21
|
spec.homepage = 'https://github.com/andymeneely/squib'
|
22
|
+
spec.requirements << 'On Windows, you need the Ruby+DevKit. See https://rubyinstaller.org/downloads'
|
21
23
|
|
22
24
|
spec.rdoc_options = ['--charset=UTF-8']
|
23
25
|
spec.extra_rdoc_files = Dir['README.md', 'samples/**/*.rb']
|
@@ -29,24 +31,28 @@ Gem::Specification.new do |spec|
|
|
29
31
|
spec.test_files = spec.files.grep(/^(spec|samples|docs|benchmarks)\//)
|
30
32
|
spec.require_paths = ['lib']
|
31
33
|
|
32
|
-
spec.add_runtime_dependency 'cairo', '1.
|
34
|
+
spec.add_runtime_dependency 'cairo', '~> 1.16'
|
33
35
|
spec.add_runtime_dependency 'classy_hash', '0.2.1'
|
34
|
-
spec.add_runtime_dependency 'gio2', '3.
|
35
|
-
spec.add_runtime_dependency 'gobject-introspection', '3.
|
36
|
-
spec.add_runtime_dependency 'highline', '
|
37
|
-
spec.add_runtime_dependency 'mercenary', '0.
|
38
|
-
spec.add_runtime_dependency 'nokogiri', '1.
|
39
|
-
spec.add_runtime_dependency 'pango', '3.
|
40
|
-
spec.add_runtime_dependency '
|
41
|
-
spec.add_runtime_dependency '
|
42
|
-
spec.add_runtime_dependency '
|
43
|
-
|
36
|
+
spec.add_runtime_dependency 'gio2', '~> 3.4'
|
37
|
+
spec.add_runtime_dependency 'gobject-introspection', '~> 3.4'
|
38
|
+
spec.add_runtime_dependency 'highline', '2.0.3'
|
39
|
+
spec.add_runtime_dependency 'mercenary', '0.4.0'
|
40
|
+
spec.add_runtime_dependency 'nokogiri', '~> 1.10'
|
41
|
+
spec.add_runtime_dependency 'pango', '~> 3.4'
|
42
|
+
spec.add_runtime_dependency 'rainbow', '~> 3.0'
|
43
|
+
spec.add_runtime_dependency 'roo', '~> 2.8'
|
44
|
+
spec.add_runtime_dependency 'rsvg2', '~> 3.4'
|
45
|
+
spec.add_runtime_dependency 'ruby-progressbar', '~> 1.10'
|
46
|
+
|
47
|
+
spec.add_development_dependency 'activesupport'
|
44
48
|
spec.add_development_dependency 'bundler'
|
45
49
|
spec.add_development_dependency 'coveralls', '>= 0.8.21'
|
50
|
+
spec.add_development_dependency 'guard'
|
51
|
+
spec.add_development_dependency 'guard-rake'
|
46
52
|
spec.add_development_dependency 'game_icons'
|
47
53
|
spec.add_development_dependency 'launchy'
|
48
54
|
spec.add_development_dependency 'rake'
|
49
55
|
spec.add_development_dependency 'byebug'
|
50
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
56
|
+
spec.add_development_dependency 'rspec', '~> 3.8'
|
51
57
|
|
52
58
|
end
|
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: squib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.16.0.pre.preview1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Meneely
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-11-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cairo
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.
|
19
|
+
version: '1.16'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.
|
26
|
+
version: '1.16'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: classy_hash
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -42,128 +42,156 @@ dependencies:
|
|
42
42
|
name: gio2
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 3.
|
47
|
+
version: '3.4'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 3.
|
54
|
+
version: '3.4'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: gobject-introspection
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 3.
|
61
|
+
version: '3.4'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 3.
|
68
|
+
version: '3.4'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: highline
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: 2.0.3
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
82
|
+
version: 2.0.3
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: mercenary
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - '='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
89
|
+
version: 0.4.0
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
96
|
+
version: 0.4.0
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: nokogiri
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 1.
|
103
|
+
version: '1.10'
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 1.
|
110
|
+
version: '1.10'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: pango
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- -
|
115
|
+
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 3.
|
117
|
+
version: '3.4'
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
|
-
- -
|
122
|
+
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 3.
|
124
|
+
version: '3.4'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: rainbow
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '3.0'
|
132
|
+
type: :runtime
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '3.0'
|
125
139
|
- !ruby/object:Gem::Dependency
|
126
140
|
name: roo
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
128
142
|
requirements:
|
129
|
-
- -
|
143
|
+
- - "~>"
|
130
144
|
- !ruby/object:Gem::Version
|
131
|
-
version: 2.
|
145
|
+
version: '2.8'
|
132
146
|
type: :runtime
|
133
147
|
prerelease: false
|
134
148
|
version_requirements: !ruby/object:Gem::Requirement
|
135
149
|
requirements:
|
136
|
-
- -
|
150
|
+
- - "~>"
|
137
151
|
- !ruby/object:Gem::Version
|
138
|
-
version: 2.
|
152
|
+
version: '2.8'
|
139
153
|
- !ruby/object:Gem::Dependency
|
140
154
|
name: rsvg2
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
142
156
|
requirements:
|
143
|
-
- -
|
157
|
+
- - "~>"
|
144
158
|
- !ruby/object:Gem::Version
|
145
|
-
version: 3.
|
159
|
+
version: '3.4'
|
146
160
|
type: :runtime
|
147
161
|
prerelease: false
|
148
162
|
version_requirements: !ruby/object:Gem::Requirement
|
149
163
|
requirements:
|
150
|
-
- -
|
164
|
+
- - "~>"
|
151
165
|
- !ruby/object:Gem::Version
|
152
|
-
version: 3.
|
166
|
+
version: '3.4'
|
153
167
|
- !ruby/object:Gem::Dependency
|
154
168
|
name: ruby-progressbar
|
155
169
|
requirement: !ruby/object:Gem::Requirement
|
156
170
|
requirements:
|
157
|
-
- -
|
171
|
+
- - "~>"
|
158
172
|
- !ruby/object:Gem::Version
|
159
|
-
version: 1.
|
173
|
+
version: '1.10'
|
160
174
|
type: :runtime
|
161
175
|
prerelease: false
|
162
176
|
version_requirements: !ruby/object:Gem::Requirement
|
163
177
|
requirements:
|
164
|
-
- -
|
178
|
+
- - "~>"
|
165
179
|
- !ruby/object:Gem::Version
|
166
|
-
version: 1.
|
180
|
+
version: '1.10'
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: activesupport
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - ">="
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '0'
|
188
|
+
type: :development
|
189
|
+
prerelease: false
|
190
|
+
version_requirements: !ruby/object:Gem::Requirement
|
191
|
+
requirements:
|
192
|
+
- - ">="
|
193
|
+
- !ruby/object:Gem::Version
|
194
|
+
version: '0'
|
167
195
|
- !ruby/object:Gem::Dependency
|
168
196
|
name: bundler
|
169
197
|
requirement: !ruby/object:Gem::Requirement
|
@@ -192,6 +220,34 @@ dependencies:
|
|
192
220
|
- - ">="
|
193
221
|
- !ruby/object:Gem::Version
|
194
222
|
version: 0.8.21
|
223
|
+
- !ruby/object:Gem::Dependency
|
224
|
+
name: guard
|
225
|
+
requirement: !ruby/object:Gem::Requirement
|
226
|
+
requirements:
|
227
|
+
- - ">="
|
228
|
+
- !ruby/object:Gem::Version
|
229
|
+
version: '0'
|
230
|
+
type: :development
|
231
|
+
prerelease: false
|
232
|
+
version_requirements: !ruby/object:Gem::Requirement
|
233
|
+
requirements:
|
234
|
+
- - ">="
|
235
|
+
- !ruby/object:Gem::Version
|
236
|
+
version: '0'
|
237
|
+
- !ruby/object:Gem::Dependency
|
238
|
+
name: guard-rake
|
239
|
+
requirement: !ruby/object:Gem::Requirement
|
240
|
+
requirements:
|
241
|
+
- - ">="
|
242
|
+
- !ruby/object:Gem::Version
|
243
|
+
version: '0'
|
244
|
+
type: :development
|
245
|
+
prerelease: false
|
246
|
+
version_requirements: !ruby/object:Gem::Requirement
|
247
|
+
requirements:
|
248
|
+
- - ">="
|
249
|
+
- !ruby/object:Gem::Version
|
250
|
+
version: '0'
|
195
251
|
- !ruby/object:Gem::Dependency
|
196
252
|
name: game_icons
|
197
253
|
requirement: !ruby/object:Gem::Requirement
|
@@ -254,14 +310,14 @@ dependencies:
|
|
254
310
|
requirements:
|
255
311
|
- - "~>"
|
256
312
|
- !ruby/object:Gem::Version
|
257
|
-
version: '3.
|
313
|
+
version: '3.8'
|
258
314
|
type: :development
|
259
315
|
prerelease: false
|
260
316
|
version_requirements: !ruby/object:Gem::Requirement
|
261
317
|
requirements:
|
262
318
|
- - "~>"
|
263
319
|
- !ruby/object:Gem::Version
|
264
|
-
version: '3.
|
320
|
+
version: '3.8'
|
265
321
|
description: Squib is a Ruby DSL for prototyping card games
|
266
322
|
email: andy.meneely@gmail.com
|
267
323
|
executables:
|
@@ -272,10 +328,10 @@ extra_rdoc_files:
|
|
272
328
|
- samples/autoscale_font/_autoscale_font.rb
|
273
329
|
- samples/backend/_backend.rb
|
274
330
|
- samples/basic.rb
|
275
|
-
- samples/bug256/_bug256.rb
|
276
331
|
- samples/build_groups/build_groups.rb
|
277
332
|
- samples/colors/_colors.rb
|
278
333
|
- samples/colors/_gradients.rb
|
334
|
+
- samples/colors/_switch_color.rb
|
279
335
|
- samples/config/config_text_markup.rb
|
280
336
|
- samples/config/custom_config.rb
|
281
337
|
- samples/data/_csv.rb
|
@@ -299,6 +355,7 @@ extra_rdoc_files:
|
|
299
355
|
- samples/saves/_hand.rb
|
300
356
|
- samples/saves/_portrait_landscape.rb
|
301
357
|
- samples/saves/_saves.rb
|
358
|
+
- samples/saves/_save_filenames.rb
|
302
359
|
- samples/saves/_save_pdf.rb
|
303
360
|
- samples/saves/_showcase.rb
|
304
361
|
- samples/shapes/_draw_shapes.rb
|
@@ -313,30 +370,24 @@ extra_rdoc_files:
|
|
313
370
|
- samples/text/_embed_text.rb
|
314
371
|
- samples/text/_text.rb
|
315
372
|
- samples/text/_text_options.rb
|
373
|
+
- samples/units/_cells.rb
|
374
|
+
- samples/units/_shorthands.rb
|
316
375
|
- samples/units/_units.rb
|
317
376
|
files:
|
377
|
+
- ".github/workflows/tests.yml"
|
318
378
|
- ".gitignore"
|
319
|
-
- ".travis.yml"
|
320
379
|
- CHANGELOG.md
|
321
380
|
- CONTRIBUTING.md
|
381
|
+
- Dockerfile
|
322
382
|
- Gemfile
|
383
|
+
- Guardfile
|
323
384
|
- LICENSE.txt
|
324
385
|
- README.md
|
325
386
|
- RELEASE TODO.md
|
326
387
|
- Rakefile
|
327
|
-
- appveyor.yml
|
328
388
|
- bin/squib
|
329
389
|
- lib/squib.rb
|
330
|
-
- lib/squib/api/background.rb
|
331
|
-
- lib/squib/api/data.rb
|
332
|
-
- lib/squib/api/groups.rb
|
333
|
-
- lib/squib/api/image.rb
|
334
|
-
- lib/squib/api/save.rb
|
335
390
|
- lib/squib/api/settings.rb
|
336
|
-
- lib/squib/api/shapes.rb
|
337
|
-
- lib/squib/api/text.rb
|
338
|
-
- lib/squib/api/text_embed.rb
|
339
|
-
- lib/squib/api/units.rb
|
340
391
|
- lib/squib/args/arg_loader.rb
|
341
392
|
- lib/squib/args/box.rb
|
342
393
|
- lib/squib/args/card_range.rb
|
@@ -361,6 +412,7 @@ files:
|
|
361
412
|
- lib/squib/args/transform.rb
|
362
413
|
- lib/squib/args/typographer.rb
|
363
414
|
- lib/squib/args/unit_conversion.rb
|
415
|
+
- lib/squib/args/xywh_shorthands.rb
|
364
416
|
- lib/squib/builtin/layouts/economy.yml
|
365
417
|
- lib/squib/builtin/layouts/fantasy.yml
|
366
418
|
- lib/squib/builtin/layouts/hand.yml
|
@@ -411,6 +463,34 @@ files:
|
|
411
463
|
- lib/squib/conf.rb
|
412
464
|
- lib/squib/constants.rb
|
413
465
|
- lib/squib/deck.rb
|
466
|
+
- lib/squib/dsl/background.rb
|
467
|
+
- lib/squib/dsl/circle.rb
|
468
|
+
- lib/squib/dsl/csv.rb
|
469
|
+
- lib/squib/dsl/curve.rb
|
470
|
+
- lib/squib/dsl/cut_zone.rb
|
471
|
+
- lib/squib/dsl/ellipse.rb
|
472
|
+
- lib/squib/dsl/grid.rb
|
473
|
+
- lib/squib/dsl/groups.rb
|
474
|
+
- lib/squib/dsl/hand.rb
|
475
|
+
- lib/squib/dsl/line.rb
|
476
|
+
- lib/squib/dsl/png.rb
|
477
|
+
- lib/squib/dsl/polygon.rb
|
478
|
+
- lib/squib/dsl/rect.rb
|
479
|
+
- lib/squib/dsl/safe_zone.rb
|
480
|
+
- lib/squib/dsl/save.rb
|
481
|
+
- lib/squib/dsl/save_pdf.rb
|
482
|
+
- lib/squib/dsl/save_png.rb
|
483
|
+
- lib/squib/dsl/save_sheet.rb
|
484
|
+
- lib/squib/dsl/showcase.rb
|
485
|
+
- lib/squib/dsl/star.rb
|
486
|
+
- lib/squib/dsl/svg.rb
|
487
|
+
- lib/squib/dsl/text.rb
|
488
|
+
- lib/squib/dsl/text_embed.rb
|
489
|
+
- lib/squib/dsl/triangle.rb
|
490
|
+
- lib/squib/dsl/units.rb
|
491
|
+
- lib/squib/dsl/xlsx.rb
|
492
|
+
- lib/squib/dsl/yaml.rb
|
493
|
+
- lib/squib/errors_warnings/warn_unexpected_params.rb
|
414
494
|
- lib/squib/graphics/background.rb
|
415
495
|
- lib/squib/graphics/cairo_context_wrapper.rb
|
416
496
|
- lib/squib/graphics/embedding_utils.rb
|
@@ -424,7 +504,11 @@ files:
|
|
424
504
|
- lib/squib/graphics/shapes.rb
|
425
505
|
- lib/squib/graphics/showcase.rb
|
426
506
|
- lib/squib/graphics/text.rb
|
507
|
+
- lib/squib/import/csv_importer.rb
|
427
508
|
- lib/squib/import/data_frame.rb
|
509
|
+
- lib/squib/import/quantity_exploder.rb
|
510
|
+
- lib/squib/import/xlsx_importer.rb
|
511
|
+
- lib/squib/import/yaml_importer.rb
|
428
512
|
- lib/squib/layout_parser.rb
|
429
513
|
- lib/squib/progress.rb
|
430
514
|
- lib/squib/sample_helpers.rb
|
@@ -437,10 +521,10 @@ files:
|
|
437
521
|
- samples/autoscale_font/_autoscale_font.rb
|
438
522
|
- samples/backend/_backend.rb
|
439
523
|
- samples/basic.rb
|
440
|
-
- samples/bug256/_bug256.rb
|
441
524
|
- samples/build_groups/build_groups.rb
|
442
525
|
- samples/colors/_colors.rb
|
443
526
|
- samples/colors/_gradients.rb
|
527
|
+
- samples/colors/_switch_color.rb
|
444
528
|
- samples/config/config_text_markup.rb
|
445
529
|
- samples/config/custom_config.rb
|
446
530
|
- samples/data/_csv.rb
|
@@ -463,6 +547,7 @@ files:
|
|
463
547
|
- samples/ranges/_ranges.rb
|
464
548
|
- samples/saves/_hand.rb
|
465
549
|
- samples/saves/_portrait_landscape.rb
|
550
|
+
- samples/saves/_save_filenames.rb
|
466
551
|
- samples/saves/_save_pdf.rb
|
467
552
|
- samples/saves/_saves.rb
|
468
553
|
- samples/saves/_showcase.rb
|
@@ -478,13 +563,15 @@ files:
|
|
478
563
|
- samples/text/_text.rb
|
479
564
|
- samples/text/_text_options.rb
|
480
565
|
- samples/text/bug134.rb
|
566
|
+
- samples/units/_cells.rb
|
567
|
+
- samples/units/_shorthands.rb
|
481
568
|
- samples/units/_units.rb
|
482
569
|
- squib.gemspec
|
483
570
|
homepage: https://github.com/andymeneely/squib
|
484
571
|
licenses:
|
485
572
|
- MIT
|
486
573
|
metadata: {}
|
487
|
-
post_install_message:
|
574
|
+
post_install_message: Happy Squibbing!
|
488
575
|
rdoc_options:
|
489
576
|
- "--charset=UTF-8"
|
490
577
|
require_paths:
|
@@ -493,26 +580,26 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
493
580
|
requirements:
|
494
581
|
- - ">="
|
495
582
|
- !ruby/object:Gem::Version
|
496
|
-
version: 2.
|
583
|
+
version: 2.5.0
|
497
584
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
498
585
|
requirements:
|
499
586
|
- - ">"
|
500
587
|
- !ruby/object:Gem::Version
|
501
588
|
version: 1.3.1
|
502
|
-
requirements:
|
503
|
-
|
504
|
-
rubygems_version:
|
505
|
-
signing_key:
|
589
|
+
requirements:
|
590
|
+
- On Windows, you need the Ruby+DevKit. See https://rubyinstaller.org/downloads
|
591
|
+
rubygems_version: 3.1.4
|
592
|
+
signing_key:
|
506
593
|
specification_version: 2
|
507
594
|
summary: A Ruby DSL for prototyping card games
|
508
595
|
test_files:
|
509
596
|
- samples/autoscale_font/_autoscale_font.rb
|
510
597
|
- samples/backend/_backend.rb
|
511
598
|
- samples/basic.rb
|
512
|
-
- samples/bug256/_bug256.rb
|
513
599
|
- samples/build_groups/build_groups.rb
|
514
600
|
- samples/colors/_colors.rb
|
515
601
|
- samples/colors/_gradients.rb
|
602
|
+
- samples/colors/_switch_color.rb
|
516
603
|
- samples/config/config_text_markup.rb
|
517
604
|
- samples/config/custom_config.rb
|
518
605
|
- samples/data/_csv.rb
|
@@ -535,6 +622,7 @@ test_files:
|
|
535
622
|
- samples/ranges/_ranges.rb
|
536
623
|
- samples/saves/_hand.rb
|
537
624
|
- samples/saves/_portrait_landscape.rb
|
625
|
+
- samples/saves/_save_filenames.rb
|
538
626
|
- samples/saves/_save_pdf.rb
|
539
627
|
- samples/saves/_saves.rb
|
540
628
|
- samples/saves/_showcase.rb
|
@@ -550,4 +638,6 @@ test_files:
|
|
550
638
|
- samples/text/_text.rb
|
551
639
|
- samples/text/_text_options.rb
|
552
640
|
- samples/text/bug134.rb
|
641
|
+
- samples/units/_cells.rb
|
642
|
+
- samples/units/_shorthands.rb
|
553
643
|
- samples/units/_units.rb
|