chriseppstein-compass 0.6.15 → 0.7.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.
Files changed (82) hide show
  1. data/CHANGELOG.markdown +170 -0
  2. data/LICENSE.markdown +29 -0
  3. data/README.markdown +10 -2
  4. data/REVISION +1 -1
  5. data/Rakefile +126 -0
  6. data/VERSION.yml +2 -2
  7. data/deps.rip +1 -0
  8. data/examples/blueprint_default/src/images/grid.png +0 -0
  9. data/examples/blueprint_plugins/src/images/grid.png +0 -0
  10. data/examples/blueprint_scoped/images/grid.png +0 -0
  11. data/examples/blueprint_scoped_form/images/grid.png +0 -0
  12. data/examples/blueprint_semantic/src/images/grid.png +0 -0
  13. data/examples/blueprint_semantic/src/liquid.sass +2 -2
  14. data/examples/blueprint_semantic/src/screen.sass +3 -3
  15. data/examples/compass/src/images/blue_arrow.gif +0 -0
  16. data/frameworks/blueprint/stylesheets/blueprint/_ie.sass +42 -0
  17. data/frameworks/blueprint/stylesheets/blueprint/_reset.sass +3 -0
  18. data/frameworks/blueprint/stylesheets/blueprint/modules/_fancy_type.sass +10 -9
  19. data/frameworks/blueprint/stylesheets/blueprint/modules/_form.sass +35 -23
  20. data/frameworks/blueprint/stylesheets/blueprint/modules/_grid.sass +7 -7
  21. data/frameworks/blueprint/stylesheets/blueprint/modules/_reset.sass +56 -0
  22. data/frameworks/blueprint/stylesheets/blueprint/modules/_rtl.sass +2 -2
  23. data/frameworks/blueprint/stylesheets/blueprint/modules/_scaffolding.sass +2 -1
  24. data/frameworks/blueprint/stylesheets/blueprint/modules/_typography.sass +3 -2
  25. data/frameworks/blueprint/templates/project/manifest.rb +2 -1
  26. data/frameworks/blueprint/templates/project/partials/_base.sass +11 -0
  27. data/frameworks/blueprint/templates/project/screen.sass +38 -6
  28. data/frameworks/compass/stylesheets/compass/_utilities.sass +1 -0
  29. data/frameworks/compass/stylesheets/compass/utilities/_sprites.sass +1 -0
  30. data/frameworks/compass/stylesheets/compass/utilities/general/_reset.sass +106 -28
  31. data/frameworks/compass/stylesheets/compass/utilities/general/_tag_cloud.sass +1 -1
  32. data/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite_img.sass +12 -0
  33. data/frameworks/compass/stylesheets/compass/utilities/text/_replacement.sass +10 -3
  34. data/frameworks/compass/templates/project/manifest.rb +1 -1
  35. data/frameworks/compass/templates/project/screen.sass +6 -0
  36. data/lib/compass/actions.rb +7 -0
  37. data/lib/compass/{merb.rb → app_integration/merb.rb} +0 -0
  38. data/lib/compass/app_integration/rails/action_controller.rb +15 -0
  39. data/lib/compass/app_integration/rails/image_url.rb +14 -0
  40. data/lib/compass/app_integration/rails/sass_plugin.rb +5 -0
  41. data/lib/compass/app_integration/rails/templates/compass-install-rails.rb +80 -0
  42. data/lib/compass/app_integration/rails.rb +12 -0
  43. data/lib/compass/app_integration.rb +5 -0
  44. data/lib/compass/commands/project_base.rb +12 -2
  45. data/lib/compass/commands/update_project.rb +13 -3
  46. data/lib/compass/commands/watch_project.rb +27 -28
  47. data/lib/compass/commands/write_configuration.rb +5 -1
  48. data/lib/compass/compiler.rb +14 -2
  49. data/lib/compass/configuration.rb +78 -2
  50. data/lib/compass/exec.rb +78 -37
  51. data/lib/compass/installers/base.rb +4 -2
  52. data/lib/compass/installers/rails.rb +3 -2
  53. data/lib/compass/installers/stand_alone.rb +3 -2
  54. data/lib/compass/sass_extensions/functions/display.rb +22 -0
  55. data/lib/compass/sass_extensions/functions/enumerate.rb +6 -0
  56. data/lib/compass/sass_extensions/functions/image_url.rb +88 -0
  57. data/lib/compass/sass_extensions/functions/inline_image.rb +35 -0
  58. data/lib/compass/sass_extensions/functions/selectors.rb +39 -0
  59. data/lib/compass/sass_extensions/functions.rb +19 -0
  60. data/lib/compass/sass_extensions/monkey_patches/stylesheet_updating.rb +23 -0
  61. data/lib/compass/sass_extensions/monkey_patches.rb +3 -0
  62. data/lib/compass/sass_extensions.rb +5 -0
  63. data/lib/compass/version.rb +2 -3
  64. data/lib/compass.rb +3 -18
  65. data/test/command_line_helper.rb +102 -0
  66. data/test/command_line_test.rb +2 -106
  67. data/test/compass_test.rb +18 -6
  68. data/test/configuration_test.rb +73 -0
  69. data/test/fixtures/stylesheets/blueprint/images/grid.png +0 -0
  70. data/test/fixtures/stylesheets/compass/css/reset.css +42 -46
  71. data/test/fixtures/stylesheets/compass/sass/reset.sass +9 -0
  72. data/test/fixtures/stylesheets/image_urls/config.rb +17 -0
  73. data/test/fixtures/stylesheets/image_urls/css/screen.css +3 -0
  74. data/test/fixtures/stylesheets/image_urls/images/grid.png +0 -0
  75. data/test/fixtures/stylesheets/image_urls/sass/screen.sass +6 -0
  76. data/test/rails_integration_test.rb +83 -0
  77. data/test/sass_extensions_test.rb +0 -1
  78. data/test/test_case_helper.rb +13 -0
  79. data/test/test_helper.rb +3 -27
  80. data/test/test_rails_helper.rb +20 -0
  81. metadata +51 -4
  82. data/lib/sass_extensions.rb +0 -67
data/CHANGELOG.markdown CHANGED
@@ -1,6 +1,169 @@
1
1
  COMPASS CHANGELOG
2
2
  =================
3
3
 
4
+ 0.8.0
5
+ -----
6
+
7
+ ### Rails
8
+
9
+ * image_url() now integrates with the rails asset handling code when
10
+ stylesheets are generated within the rails container.
11
+ **This causes your rails configuration for cache busting and asset hosts
12
+ to be used when generating your stylesheets**. Unfortunately, all
13
+ that code runs within the context of a controller, so the stylesheets
14
+ have to be generated during first request to use this functionality. If you
15
+ need to compile stylesheets offline, use the compass configuration file to set
16
+ the <code>asset_host</code> and <code>asset_cache_buster</code>.
17
+ [Commit](http://github.com/chriseppstein/compass/commit/998168160b11c8702ded0a32820ea15b70d51e83).
18
+
19
+ * An official Rails template for Compass is now [provided][rails_template].
20
+ [Commit](http://github.com/chriseppstein/compass/commit/f6948d1d58818ef8babce8f8f9d775562d7cd7ef)
21
+ by [Derek Perez][perezd].
22
+
23
+ ### Blueprint
24
+
25
+ * The Blueprint port has been upgraded to match Blueprint 0.9. The following changes were made as part
26
+ of that project:
27
+ * Removed body margins from blueprint scaffolding by default.
28
+ The old body styles can be reinstated by mixing +blueprint-scaffolding-body into your body selector(s).
29
+ [Commit](http://github.com/chriseppstein/compass/commit/45af89d4c7a396fae5d14fab4ef3bab23bcdfb6a)
30
+ by [Enrico Bianco][enricob].
31
+ * A bug in the calculations affecting the +colborder mixin has been fixed.
32
+ [Commit](http://github.com/chriseppstein/compass/commit/4b33fae5e5c5421580ba536116cb10194f1318d1)
33
+ by [Enrico Bianco][enricob].
34
+ Related [commit](http://github.com/chriseppstein/compass/commit/0a0a14aab597d2ec31ff9d267f6ee8cfad878e10).
35
+ * Blueprint now has inline form support. Mix +blueprint-inline-form into a form selector to make it inline.
36
+ [Commit](http://github.com/chriseppstein/compass/commit/56c745b939c763cfcc5549b54979d48ab1309087)
37
+ by [Enrico Bianco][enricob].
38
+ * Please update the conditional comment that surrounds your IE stylesheet to use "lt IE 8" as the condition
39
+ as these styles are not needed in IE8. New blueprint projects will now use this conditional as their default.
40
+ [Commit](http://github.com/chriseppstein/compass/commit/77f6e02c0ec80d2b6fd19e611ced02be003c98ae)
41
+ by [Enrico Bianco][enricob].
42
+ * Explicitly define image interpolation mode for IE so that images aren't jagged when resizing.
43
+ [Commit](http://github.com/chriseppstein/compass/commit/63075f82db367913efcce5e1d0f5489888e86ca4)
44
+ by [Enrico Bianco][enricob].
45
+
46
+ * When starting a new project based on Blueprint, a more complete screen.sass file will be
47
+ provided that follows compass best practices instead of matching blueprint css exactly. A
48
+ partials/_base.sass file is provided and already set up for blueprint customization.
49
+ [Commit](http://github.com/chriseppstein/compass/commit/11b6ea14c3ee919711fa4bdce349f88b64b68d51)
50
+
51
+ * The sizes and borders for form styling can now be altered via mixin arguments.
52
+ [Commit](http://github.com/chriseppstein/compass/commit/b84dd3031b82547cff8e1ef1f85de66d98cd162b)
53
+ by [Thomas Reynolds][tdreyno].
54
+
55
+ * Grid borders can now be altered via mixin arguments.
56
+ [Commit](http://github.com/chriseppstein/compass/commit/0a0a14aab597d2ec31ff9d267f6ee8cfad878e10)
57
+ by [Thomas Reynolds][tdreyno].
58
+
59
+ * The reset file for blueprint has moved from compass/reset.sass to blueprint/reset.sass. Please
60
+ update your imports accordingly. Also note that some of the reset mixin names have changed
61
+ (now prefixed with blueprint-*).
62
+ [Commit](http://github.com/chriseppstein/compass/commit/2126240a1a16edacb0a758d782334a9ced5d9116)
63
+ by [Noel Gomez][noel].
64
+
65
+ ### Compass Core
66
+
67
+ * **Sprites**. A basic sprite mixin is now available. Import compass/utilities/sprites.sass and use the +sprite-img
68
+ mixin to set the background image from a sprite image file. Assumes every sprite in the sprite image
69
+ file has the same dimensions.
70
+ [Commit](http://github.com/chriseppstein/compass/commit/1f21d6309140c009188d350ed911eed5d34bf02e)
71
+ by [Thomas Reynolds][tdreyno].
72
+
73
+ * **Reset**. The compass reset is now based on [Eric Meyer's reset](http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/).
74
+ which makes no attempt to apply base styles like the blueprint reset does. **Existing compass projects
75
+ will want to change their reset import to point to blueprint/reset.sass** -- which is where the old
76
+ default reset for compass projects now lives -- see the blueprint notes above for more information.
77
+ [Commit](http://github.com/chriseppstein/compass/commit/2126240a1a16edacb0a758d782334a9ced5d9116)
78
+ by [Noel Gomez][noel].
79
+
80
+ * A bug was fixed in the tag_cloud mixin so that it actually works.
81
+ [Commit](http://github.com/chriseppstein/compass/commit/be5c0ff6731ec5e0cdac73bc47f5603c3db899b5)
82
+ by [Bjørn Arild Mæland][Chrononaut].
83
+
84
+ ### Sass Extensions
85
+
86
+ * The <code>inline_image(image_path)</code> function can now be used to generate a data url that embeds the image data in
87
+ the generated css file -- avoiding the need for another request.
88
+ This function works like <code>image_url()</code> in that it expects the image to be a path
89
+ relative to the images directory. There are clear advantages and disadvantages to this approach.
90
+ See [Wikipedia](http://en.wikipedia.org/wiki/Data_URI_scheme) for more details.
91
+ NOTE: Neither IE6 nor IE7 support this feature.
92
+ [Commit](http://github.com/chriseppstein/compass/commit/5a015b3824f280af56f1265bf8c3a7c64a252621).
93
+
94
+ ### Configuration
95
+
96
+ * **Asset Hosts**. You can now configure the asset host(s) used for images via the image_url() function.
97
+ Asset hosts are off unless configured and also off when relative urls are enabled.
98
+ [Commit](http://github.com/chriseppstein/compass/commit/ef47f3dd9dbfc087de8b12a90f9a82993bbb592e).
99
+ In your compass configuration file, you must define an asset_host algorithm to be used like so:
100
+ # Return the same host for all images:
101
+ asset_host {|path| "http://assets.example.com" }
102
+ # Return a different host based on the image path.
103
+ asset_host do |path|
104
+ "http://assets%d.example.com" % (path.hash % 4)
105
+ end
106
+
107
+
108
+ * **Configurable Cache Buster**. You can now configure the cache buster that gets placed at the end of
109
+ images via the image_url function. This might be useful if you need to coordinate the query string
110
+ or use something other than a timestamp.
111
+ [Commit](http://github.com/chriseppstein/compass/commit/ef47f3dd9dbfc087de8b12a90f9a82993bbb592e)
112
+ Example:
113
+ asset_cache_buster do |path, file|
114
+ "busted=true"
115
+ end
116
+
117
+ * You can now set/override arbitrary sass options by setting the <code>sass_options</code> configuration property
118
+ to a hash. [Commit](http://github.com/chriseppstein/compass/commit/802bca61741db31da7131c82d31fff45f9323696).
119
+
120
+ * You can now specify additional import paths to look for sass code outside the project.
121
+ [Commit](http://github.com/chriseppstein/compass/commit/047be06a0a63923846f53849fc220fb4be69513b).
122
+ This can be done in two ways:
123
+ 1. By setting <code>additional_import_paths</code> to an array of paths.
124
+ 2. By (repeatedly) calling <code>add_import_path(path)</code>
125
+
126
+ * The compass configuration can now be placed in PROJECT_DIR/.compass/config.rb if you so choose.
127
+ [Commit](http://github.com/chriseppstein/compass/commit/69cf32f70ac79c155198d2dbf96f50856bee9504).
128
+
129
+
130
+ ### Command Line
131
+
132
+ * **Watch Improvements** The watch command was rewritten for robustness and reliability. The most
133
+ important change is that generated css files will be deleted if the originating sass file is removed while
134
+ watching the project. [Commit](http://github.com/chriseppstein/compass/commit/0a232bd922695f6f659fac9f90466745d4425839).
135
+
136
+ * The images and javascripts directories may now be set via the command line.
137
+ [Commit](http://github.com/chriseppstein/compass/84aec053d0109923ea0208ac0847684cf09cefc1).
138
+
139
+ * The usage output (-h) of the command-line has been reformatted to make it more readable and understandable.
140
+ [Commit](http://github.com/chriseppstein/compass/f742f26208f4c5c783ba63aa0cc509bb19e06ab9).
141
+
142
+ * The configuration file being read can now be specified explicitly using the -c option.
143
+ This also affects the output location of the --write-configuration command.
144
+ NOTE: The -c option used to be for writing the configuration file, an infrequently used option.
145
+ [Commit](http://github.com/chriseppstein/compass/d2acd343b899db960c1d3a377e2ee6f58595c6b1).
146
+
147
+ * You can now install into the current working directory by explicitly setting the command line mode to -i
148
+ and providing no project name.
149
+ [Commit](http://github.com/chriseppstein/compass/f742f26208f4c5c783ba63aa0cc509bb19e06ab9).
150
+
151
+ ### Compass Internals
152
+
153
+ * Some internal code was reorganized to make managing sass extensions and functions more manageable.
154
+
155
+ * Some internal code was reorganized to make managing ruby application integration more manageable.
156
+
157
+ * The compass unit tests were reorganized to separate rails testing from other tests.
158
+
159
+ * The [Rip Packaging System](http://hellorip.com) is now supported.
160
+ [Commit](http://github.com/chriseppstein/compass/commit/56f36577c7654b93a349f74abf274327df23402b)
161
+ by [Will Farrington](http://github.com/wfarr).
162
+
163
+ * A [licence is now available](http://github.com/chriseppstein/compass/blob/master/LICENSE.markdown)
164
+ making the copyrights and terms of use clear for people who care about such things.
165
+
166
+
4
167
  0.6.14
5
168
  ------
6
169
 
@@ -216,3 +379,10 @@ that are not yet fixed in blueprint-css and we use a different clearfix implemen
216
379
  ### Bugs Introduced
217
380
 
218
381
  Almost definitely. Please let me know if you encounter any problems and I'll get a patch out
382
+
383
+ [tdreyno]: http://github.com/tdreyno
384
+ [noel]: http://github.com/noel
385
+ [enricob]: http://github.com/enricob
386
+ [perezd]: http://github.com/perezd
387
+ [Chrononaut]: http://github.com/Chrononaut
388
+ [rails_template]: http://github.com/chriseppstein/compass/raw/4e7e51e2c5491851f66c77abf3f15194f2f8fb8d/lib/compass/app_integration/rails/templates/compass-install-rails.rb
data/LICENSE.markdown ADDED
@@ -0,0 +1,29 @@
1
+ Copyright (c) 2009 Christopher M. Eppstein
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+ No attribution is required by products that make use of this software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
+
23
+ Except as contained in this notice, the name(s) of the above copyright
24
+ holders shall not be used in advertising or otherwise to promote the sale,
25
+ use or other dealings in this Software without prior written authorization.
26
+
27
+ Contributors to this project agree to grant all rights to the copyright
28
+ holder of the primary product. Attribution is maintained in the source
29
+ control history of the product.
data/README.markdown CHANGED
@@ -5,9 +5,10 @@ A [Sass][sass]-based CSS Meta-Framework that allows you to mix and match any of
5
5
  - [Blueprint][blueprint_website] - [Wiki Documentation][bleuprint_wiki]
6
6
  - [YUI][yui_website] - [Wiki Documentation][yui_wiki]
7
7
  - [960][ninesixty_website] - [Wiki Documentation][ninesixty_wiki]
8
- - Other frameworks can be added relatively easily. Port your own!
8
+ - Other frameworks can be added relatively easily. Create your own!
9
9
 
10
10
  ## Compass Provides
11
+
11
12
  1. A [command line tool][command_line_wiki] for managing your Sass projects.
12
13
  2. Simple integration with [Ruby-on-Rails][ruby_on_rails_wiki], [Merb][merb_wiki], [StaticMatic][static_matic_wiki], and even [non-ruby application servers][command_line_wiki].
13
14
  3. Loads of Sass mixins to make building your website a snap.
@@ -16,7 +17,13 @@ A [Sass][sass]-based CSS Meta-Framework that allows you to mix and match any of
16
17
  Please see the [wiki][wiki]
17
18
 
18
19
  ## Author
19
- Compass is written by [Chris Eppstein][chris_eppstein]. Chris is the Software Architect of [Caring.com][caring.com] and a member of the [Sass][sass] core team.
20
+ Compass is written by [Chris Eppstein][chris_eppstein].<br>
21
+ Chris is the Software Architect of [Caring.com][caring.com] and a member of the [Sass][sass] core team.
22
+
23
+ ## License
24
+ Copyright (c) 2008-2009 Christopher M. Eppstein<br>
25
+ All Rights Reserved.<br>
26
+ Released under a [slightly modified MIT License][license].
20
27
 
21
28
  [sass]: http://haml.hamptoncatlin.com/docs/rdoc/classes/Sass.html "Syntactically Awesome StyleSheets"
22
29
  [compass_core_website]: http://github.com/chriseppstein/compass/tree/master/frameworks/compass
@@ -34,3 +41,4 @@ Compass is written by [Chris Eppstein][chris_eppstein]. Chris is the Software Ar
34
41
  [static_matic_wiki]: http://wiki.github.com/chriseppstein/compass/staticmatic-integration
35
42
  [chris_eppstein]: http://acts-as-architect.blogspot.com
36
43
  [caring.com]: http://www.caring.com/ "Senior Care Resources"
44
+ [license]: http://github.com/chriseppstein/compass/tree/master/LICENSE.markdown
data/REVISION CHANGED
@@ -1 +1 @@
1
- 6bfa7f6846d91d927851baaa1ddcf4762c601236
1
+ 0eed2843a688c42cf41d1a2e6de80d781b5781ff
data/Rakefile ADDED
@@ -0,0 +1,126 @@
1
+ if ENV['RUN_CODE_RUN']
2
+ # We need to checkout edge haml for the run>code>run test environment.
3
+ if File.directory?("haml")
4
+ Dir.chdir("haml") do
5
+ sh "git", "pull"
6
+ end
7
+ else
8
+ sh "git", "clone", "git://github.com/nex3/haml.git"
9
+ end
10
+ $LOAD_PATH.unshift "haml/lib"
11
+ end
12
+
13
+ require 'rubygems'
14
+ require 'rake'
15
+ require 'lib/compass'
16
+
17
+ # ----- Default: Testing ------
18
+
19
+ task :default => :run_tests
20
+
21
+ require 'rake/testtask'
22
+ require 'fileutils'
23
+
24
+ Rake::TestTask.new :run_tests do |t|
25
+ t.libs << 'lib'
26
+ t.libs << 'haml/lib' if ENV["RUN_CODE_RUN"]
27
+ test_files = FileList['test/**/*_test.rb']
28
+ test_files.exclude('test/rails/*', 'test/haml/*')
29
+ t.test_files = test_files
30
+ t.verbose = true
31
+ end
32
+ Rake::Task[:test].send(:add_comment, <<END)
33
+ To run with an alternate version of Rails, make test/rails a symlink to that version.
34
+ To run with an alternate version of Haml & Sass, make test/haml a symlink to that version.
35
+ END
36
+
37
+ begin
38
+ require 'jeweler'
39
+ Jeweler::Tasks.new do |gemspec|
40
+ gemspec.rubyforge_project = "compass"
41
+ gemspec.name = "compass"
42
+ gemspec.summary = "A Real Stylesheet Framework"
43
+ gemspec.email = "chris@eppsteins.net"
44
+ gemspec.homepage = "http://compass-style.org"
45
+ gemspec.description = "Compass is a Sass-based Stylesheet Framework that streamlines the creation and maintainance of CSS."
46
+ gemspec.authors = ["Chris Eppstein"]
47
+ gemspec.has_rdoc = false
48
+ gemspec.add_dependency('haml-edge', '>= 2.1.12')
49
+ gemspec.files = []
50
+ gemspec.files << "CHANGELOG.markdown"
51
+ gemspec.files << "README.markdown"
52
+ gemspec.files << "LICENSE.markdown"
53
+ gemspec.files << "REVISION"
54
+ gemspec.files << "VERSION.yml"
55
+ gemspec.files << "Rakefile"
56
+ gemspec.files << "deps.rip"
57
+ gemspec.files += Dir.glob("bin/*")
58
+ gemspec.files += Dir.glob("examples/**/*.*")
59
+ gemspec.files -= Dir.glob("examples/**/*.css")
60
+ gemspec.files -= Dir.glob("examples/**/*.html")
61
+ gemspec.files += Dir.glob("frameworks/**/*.*")
62
+ gemspec.files += Dir.glob("lib/**/*")
63
+ gemspec.files += Dir.glob("test/**/*.*")
64
+ gemspec.files -= Dir.glob("test/fixtures/stylesheets/*/saved/**/*.*")
65
+ gemspec.test_files = Dir.glob("test/**/*.*")
66
+ gemspec.test_files -= Dir.glob("test/fixtures/stylesheets/*/saved/**/*.*")
67
+ end
68
+ rescue LoadError
69
+ puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
70
+ end
71
+
72
+ desc "Record the current git revision."
73
+ task :REVISION do
74
+ require 'git'
75
+
76
+ repo = Git.open('.')
77
+ open("REVISION", "w") do |f|
78
+ f.write(repo.object("HEAD").sha)
79
+ end
80
+ end
81
+
82
+ desc "Commit the revision file."
83
+ task :commit_revision => :REVISION do
84
+ require 'git'
85
+ repo = Git.open('.')
86
+ repo.add("REVISION")
87
+ repo.commit("Record current revision for release.")
88
+ end
89
+
90
+ task :release => :commit_revision
91
+
92
+ desc "Compile Examples into HTML and CSS"
93
+ task :examples do
94
+ linked_haml = "tests/haml"
95
+ if File.exists?(linked_haml) && !$:.include?(linked_haml + '/lib')
96
+ puts "[ using linked Haml ]"
97
+ $:.unshift linked_haml + '/lib'
98
+ end
99
+ require 'haml'
100
+ require 'sass'
101
+ require 'pathname'
102
+ require 'lib/compass'
103
+ require 'lib/compass/exec'
104
+ FileList['examples/*'].each do |example|
105
+ puts "\nCompiling #{example}"
106
+ puts "=" * "Compiling #{example}".length
107
+ # compile any haml templates to html
108
+ FileList["#{example}/**/*.haml"].each do |haml_file|
109
+ basename = haml_file[0..-6]
110
+ engine = Haml::Engine.new(open(haml_file).read, :filename => haml_file)
111
+ puts " haml #{File.basename(basename)}"
112
+ output = open(basename,'w')
113
+ output.write(engine.render)
114
+ output.close
115
+ end
116
+ Dir.chdir example do
117
+ Compass::Exec::Compass.new(["--force"]).run!
118
+ end
119
+ end
120
+ end
121
+
122
+ namespace :git do
123
+ task :clean do
124
+ sh "git", "clean", "-fdx"
125
+ end
126
+ end
data/VERSION.yml CHANGED
@@ -1,4 +1,4 @@
1
1
  ---
2
- :minor: 6
3
- :patch: 15
2
+ :patch: 0
4
3
  :major: 0
4
+ :minor: 8
data/deps.rip ADDED
@@ -0,0 +1 @@
1
+ git://github.com/nex3/haml.git master
@@ -53,7 +53,7 @@ body#sample
53
53
  :margin-top 0
54
54
  :padding-top 0
55
55
  em.caps
56
- +reset
56
+ +reset-font
57
57
  +caps
58
58
  #nested-1
59
59
  +column(7)
@@ -64,7 +64,7 @@ body#sample
64
64
  +column(7, true)
65
65
  h3
66
66
  em
67
- +reset
67
+ +reset-font
68
68
  +alt
69
69
  #parting-thought
70
70
  +alt
@@ -10,7 +10,7 @@ body.blueprint
10
10
  .container
11
11
  +container
12
12
  .showgrid
13
- +showgrid
13
+ :background= inline_image("grid.png")
14
14
  hr
15
15
  +colruler
16
16
  hr.space
@@ -54,7 +54,7 @@ body#sample
54
54
  :margin-top 0
55
55
  :padding-top 0
56
56
  em.caps
57
- +reset
57
+ +reset-font
58
58
  +caps
59
59
  #nested-1
60
60
  +column(7)
@@ -65,7 +65,7 @@ body#sample
65
65
  +column(7, true)
66
66
  h3
67
67
  em
68
- +reset
68
+ +reset-font
69
69
  +alt
70
70
  #parting-thought
71
71
  +alt
@@ -36,6 +36,17 @@
36
36
  p code
37
37
  :*white-space normal
38
38
 
39
+ // Fixes for Blueprint "inline" forms in IE
40
+ =blueprint-inline-form-ie
41
+ div, p
42
+ :vertical-align middle
43
+ label
44
+ :position relative
45
+ :top -0.25em
46
+ input
47
+ &.checkbox, &.radio, &.button, button
48
+ :margin 0.5em 0
49
+
39
50
  =blueprint-ie-defaults
40
51
  .container
41
52
  :text-align left
@@ -47,5 +58,36 @@
47
58
  :vertical-align text-bottom
48
59
  hr
49
60
  :margin -8px auto 11px
61
+ img
62
+ :-ms-interpolation-mode bicubic
50
63
  fieldset
51
64
  :padding-top 0
65
+ input
66
+ &.text
67
+ :margin 0.5em 0
68
+ :background-color #fff
69
+ :border 1px solid #bbb
70
+ &:focus
71
+ :border 1px solid #666
72
+ &.title
73
+ :margin 0.5em 0
74
+ :background-color #fff
75
+ :border 1px solid #bbb
76
+ &:focus
77
+ :border 1px solid #666
78
+ &.checkbox
79
+ :position relative
80
+ :top 0.25em
81
+ &.radio
82
+ :position relative
83
+ :top 0.25em
84
+ &.button
85
+ :position relative
86
+ :top 0.25em
87
+ textarea
88
+ :margin 0.5em 0
89
+ select
90
+ :margin 0.5em 0
91
+ button
92
+ :position relative
93
+ :top 0.25em
@@ -0,0 +1,3 @@
1
+ @import modules/reset.sass
2
+
3
+ +blueprint-global-reset
@@ -1,7 +1,8 @@
1
- /*
1
+ @import typography.sass
2
+
3
+ //
2
4
  To install the fancy type plugin:
3
- 1. import the fancy_type module:
4
- @import blueprint/modules/fancy_type
5
+ 1. import the fancy_type module: @import blueprint/modules/fancy_type
5
6
  2. mixin +fancy-type to your project's body or at the top level of your stylesheet:
6
7
  body
7
8
  +fancy-type
@@ -15,7 +16,7 @@
15
16
  .alt
16
17
  +alt
17
18
 
18
- /* Indentation instead of line shifts for sibling paragraphs. Mixin to a style like p + p
19
+ // Indentation instead of line shifts for sibling paragraphs. Mixin to a style like p + p
19
20
  =sibling-indentation
20
21
  :text-indent 2em
21
22
  :margin-top -1.5em
@@ -23,7 +24,7 @@
23
24
  form &
24
25
  :text-indent 0
25
26
 
26
- /*
27
+ //
27
28
  For great looking type, use this code instead of asdf:
28
29
  <span class="alt">asdf</span>
29
30
  Best used on prepositions and ampersands.
@@ -34,7 +35,7 @@
34
35
  :font-style italic
35
36
  :font-weight normal
36
37
 
37
- /*
38
+ //
38
39
  For great looking quote marks in titles, replace "asdf" with:
39
40
  <span class="dquo">&#8220;</span>asdf&#8221;
40
41
  (That is, when the title starts with a quote mark).
@@ -42,7 +43,7 @@
42
43
  =dquo(!offset = 0.5em)
43
44
  :margin-left -!offset
44
45
 
45
- /*
46
+ //
46
47
  Reduced size type with incremental leading
47
48
  (http://www.markboulton.co.uk/journal/comments/incremental_leading/)
48
49
 
@@ -56,12 +57,12 @@
56
57
  font_size - The desired font size in pixels. This will be converted to ems for you. Defaults to 10px.
57
58
  base_font_size - The base font size in pixels. Defaults to 12px
58
59
  old_line_height - The old line height. Defaults to 1.5 times the base_font_size
59
- =incr(!font_size = 10px, !base_font_size = 12px, !old_line_height = !base_font_size * 1.5)
60
+ =incr(!font_size = 10px, !base_font_size = !blueprint_font_size, !old_line_height = !base_font_size * 1.5)
60
61
  :font-size= 1em * !font_size / !base_font_size
61
62
  :line-height= 1em * !old_line_height / !font_size * 4 / 5
62
63
  :margin-bottom 1.5em
63
64
 
64
- /*
65
+ //
65
66
  Surround uppercase words and abbreviations with this class.
66
67
  Based on work by Jørgen Arnor Gårdsø Lom [http://twistedintellect.com/]
67
68
  =caps
@@ -1,43 +1,55 @@
1
1
  @import colors.sass
2
2
 
3
+ // Mixin for producing Blueprint "inline" forms. Should be used with the blueprint-form mixin.
4
+ =blueprint-inline-form
5
+ :line-height 3
6
+ p
7
+ :margin-bottom 0
8
+
3
9
  =blueprint-form
10
+ +blueprint-form-layout
11
+ +blueprint-form-borders
12
+ +blueprint-form-sizes
13
+
14
+ =blueprint-form-layout
4
15
  label
5
16
  :font-weight bold
6
17
  fieldset
7
18
  :padding 1.4em
8
19
  :margin 0 0 1.5em 0
9
- :border 1px solid #ccc
10
20
  legend
11
21
  :font-weight bold
12
22
  :font-size 1.2em
13
23
  input
14
- &.text
24
+ &.text, &.title, &[type=text]
15
25
  :margin 0.5em 0
16
- :border 1px solid #bbb
17
- :width 300px
26
+ :background-color #fff
18
27
  :padding 5px
19
- &:focus
20
- :border 1px solid #666
21
- &.title
28
+ &.title
22
29
  :font-size 1.5em
23
- input.title
24
- :margin 0.5em 0
25
- :border 1px solid #bbb
26
- :width 300px
27
- :padding 5px
28
- &:focus
29
- :border 1px solid #666
30
+ &[type=checkbox], &.checkbox,
31
+ &[type=radio], &.radio
32
+ :position relative
33
+ :top 0.25em
30
34
  textarea
31
35
  :margin 0.5em 0
32
- :border 1px solid #bbb
33
- &:focus
34
- :border 1px solid #666
36
+ :padding 5px
35
37
  select
36
38
  :margin 0.5em 0
37
- :border 1px solid #bbb
38
- &:focus
39
- :border 1px solid #666
39
+
40
+ =blueprint-form-sizes(!input_width = 300px, !textarea_width = 390px, !textarea_height = 250px)
41
+ input.text, input.title
42
+ :width= !input_width
40
43
  textarea
41
- :width 390px
42
- :height 250px
43
- :padding 5px
44
+ :width= !textarea_width
45
+ :height= !textarea_height
46
+
47
+ =blueprint-form-borders(!unfocused_border_color = #bbb, !focus_border_color = #666, !fieldset_border_color = #ccc)
48
+ fieldset
49
+ :border= 1px "solid" !fieldset_border_color
50
+ input.text, input.title,
51
+ textarea,
52
+ select
53
+ :border= 1px "solid" !unfocused_border_color
54
+ &:focus
55
+ :border= 1px "solid" !focus_border_color
@@ -139,16 +139,16 @@
139
139
  +push-margins(!n)
140
140
 
141
141
  // Border on right hand side of a column.
142
- =border
143
- :padding-right = !blueprint_grid_margin / 2 - 1
142
+ =border(!border_color = #eee, !border_width = 1px)
143
+ :padding-right = !blueprint_grid_margin / 2 - !border_width
144
144
  :margin-right = !blueprint_grid_margin / 2
145
- :border-right 1px solid #eee
145
+ :border-right #{!border_width} solid #{!border_color}
146
146
 
147
147
  // Border with more whitespace, spans one column.
148
- =colborder
149
- :padding-right= !blueprint_grid_width - 0.5 * !blueprint_grid_margin - 1
150
- :margin-right= !blueprint_grid_width - 0.5 * !blueprint_grid_margin
151
- :border-right 1px solid #eee
148
+ =colborder(!border_color = #eee, !border_width = 1px)
149
+ :padding-right= floor((!blueprint_grid_width - 2 * !blueprint_grid_margin - !border_width)/2)
150
+ :margin-right= ceil((!blueprint_grid_width - 2 * !blueprint_grid_margin - !border_width)/2)
151
+ :border-right #{!border_width} solid #{!border_color}
152
152
 
153
153
  // Mixin this to an hr to make a horizontal ruler across a column.
154
154
  =colruler