So far, I really like this approach. It allows us to push validation logic out of the Card class and into its own set of classes that can be more easily tested.
Fixes#75, but we've got a lot more work to do in getting this full scale
Needed to set squibcolor prior to translating the coordinate system so that gradients are relative to the card (as is documented). This also means stroking is done AFTER drawing the text, which looks better anyway.
Fill color is still the same with 'color' (i.e. can be overridden by markup still), but now there's a stroke_width and a stroke_color option that, when stroke_width > 0, will draw an outline below the text. Since this isn't a Pango feature, we can't do markup for outlines. (Maybe make that a feature request to Pango if you want it.)
Implements #51
With the new design, we take the load off of deck.rb and simply delegate methods over to the new conf.rb. This means that things like `antialias` is now available as a method to the normal Squib scripts for easy checking (without being mutable). Squib::Conf also handles parsing and defaults, and any potential input validation we need to do in the future.
Typographer is also set up now as a deck-wide configuration. This may change in the future if we want typography customization per-command, although that seems like a strange use case.
Lots of tests for this one, and lots of cross-cutting concerns in this commit.
This commit also includes some tweaks to rspec tests, including tagging of slow tests for a `rake spec_fastonly`
Conflicts:
spec/samples/samples_regression_spec.rb
spec/spec_helper.rb
squib.sublime-project
If you're living in a non-UTF-8 character set, then you can configure what quotes are smartly changed.
If my regexes are messing things up, you can also turn this off with smart_quotes: false
Also updated docs.
This closes#50