chriseppstein-compass 0.3.7 → 0.3.8
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.
- data/Manifest +5 -4
- data/VERSION +1 -1
- data/bin/compass +1 -1
- data/compass.gemspec +5 -5
- data/{lib/compass/frameworks → frameworks}/blueprint.rb +0 -0
- data/{lib/compass/frameworks → frameworks}/compass.rb +0 -0
- data/{lib/compass/frameworks → frameworks}/yui.rb +0 -0
- data/lib/compass.rb +14 -0
- data/lib/compass/commands/base.rb +19 -11
- data/lib/compass/commands/create_project.rb +19 -11
- data/lib/compass/commands/install_rails.rb +9 -28
- data/lib/compass/commands/project_base.rb +89 -0
- data/lib/compass/commands/update_project.rb +2 -39
- data/lib/compass/commands/watch_project.rb +9 -2
- data/lib/compass/exec.rb +17 -7
- data/lib/compass/frameworks.rb +6 -4
- data/test/command_line_test.rb +144 -0
- data/test/compass_test.rb +6 -10
- data/test/test_helper.rb +13 -3
- metadata +10 -9
data/Manifest
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
bin/compass
|
|
2
|
-
compass.gemspec
|
|
3
2
|
examples/blueprint_default/index.html
|
|
4
3
|
examples/blueprint_default/parts/elements.html
|
|
5
4
|
examples/blueprint_default/parts/forms.html
|
|
@@ -71,6 +70,7 @@ frameworks/blueprint/templates/project/grid.png
|
|
|
71
70
|
frameworks/blueprint/templates/project/ie.sass
|
|
72
71
|
frameworks/blueprint/templates/project/print.sass
|
|
73
72
|
frameworks/blueprint/templates/project/screen.sass
|
|
73
|
+
frameworks/blueprint.rb
|
|
74
74
|
frameworks/compass/stylesheets/_compass.sass
|
|
75
75
|
frameworks/compass/stylesheets/compass/_layout.sass
|
|
76
76
|
frameworks/compass/stylesheets/compass/_reset.sass
|
|
@@ -100,24 +100,24 @@ frameworks/compass/templates/project/grid.png
|
|
|
100
100
|
frameworks/compass/templates/project/ie.sass
|
|
101
101
|
frameworks/compass/templates/project/print.sass
|
|
102
102
|
frameworks/compass/templates/project/screen.sass
|
|
103
|
+
frameworks/compass.rb
|
|
103
104
|
frameworks/yui/COPYRIGHT
|
|
104
105
|
frameworks/yui/stylesheets/_yui.sass
|
|
105
106
|
frameworks/yui/stylesheets/yui/modules/_base.sass
|
|
106
107
|
frameworks/yui/stylesheets/yui/modules/_fonts.sass
|
|
107
108
|
frameworks/yui/stylesheets/yui/modules/_grids.sass
|
|
108
109
|
frameworks/yui/templates/project/screen.sass
|
|
110
|
+
frameworks/yui.rb
|
|
109
111
|
lib/compass/commands/base.rb
|
|
110
112
|
lib/compass/commands/create_project.rb
|
|
111
113
|
lib/compass/commands/install_rails.rb
|
|
112
114
|
lib/compass/commands/list_frameworks.rb
|
|
113
115
|
lib/compass/commands/print_version.rb
|
|
116
|
+
lib/compass/commands/project_base.rb
|
|
114
117
|
lib/compass/commands/update_project.rb
|
|
115
118
|
lib/compass/commands/watch_project.rb
|
|
116
119
|
lib/compass/core_ext.rb
|
|
117
120
|
lib/compass/exec.rb
|
|
118
|
-
lib/compass/frameworks/blueprint.rb
|
|
119
|
-
lib/compass/frameworks/compass.rb
|
|
120
|
-
lib/compass/frameworks/yui.rb
|
|
121
121
|
lib/compass/frameworks.rb
|
|
122
122
|
lib/compass/merb.rb
|
|
123
123
|
lib/compass/test_case.rb
|
|
@@ -137,6 +137,7 @@ lib/sass_extensions.rb
|
|
|
137
137
|
Manifest
|
|
138
138
|
Rakefile
|
|
139
139
|
README.markdown
|
|
140
|
+
test/command_line_test.rb
|
|
140
141
|
test/compass_test.rb
|
|
141
142
|
test/fixtures/stylesheets/blueprint/css/typography.css
|
|
142
143
|
test/fixtures/stylesheets/blueprint/sass/ie.sass
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.3.
|
|
1
|
+
0.3.8
|
data/bin/compass
CHANGED
data/compass.gemspec
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
Gem::Specification.new do |s|
|
|
2
2
|
s.name = %q{compass}
|
|
3
|
-
s.version = "0.3.
|
|
3
|
+
s.version = "0.3.8"
|
|
4
4
|
|
|
5
5
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
|
6
6
|
s.authors = ["Chris Eppstein"]
|
|
7
|
-
s.date = %q{2009-01-
|
|
7
|
+
s.date = %q{2009-01-25}
|
|
8
8
|
s.default_executable = %q{compass}
|
|
9
9
|
s.description = %q{Sass-Based CSS Meta-Framework. Semantic, Maintainable CSS.}
|
|
10
10
|
s.email = %q{chris@eppsteins.net}
|
|
11
11
|
s.executables = ["compass"]
|
|
12
|
-
s.extra_rdoc_files = ["bin/compass", "lib/compass/commands/base.rb", "lib/compass/commands/create_project.rb", "lib/compass/commands/install_rails.rb", "lib/compass/commands/list_frameworks.rb", "lib/compass/commands/print_version.rb", "lib/compass/commands/
|
|
13
|
-
s.files = ["bin/compass", "
|
|
12
|
+
s.extra_rdoc_files = ["bin/compass", "lib/compass/commands/base.rb", "lib/compass/commands/create_project.rb", "lib/compass/commands/install_rails.rb", "lib/compass/commands/list_frameworks.rb", "lib/compass/commands/print_version.rb", "lib/compass/commands/project_base.rb", "lib/compass/commands/update_project.rb", "lib/compass/commands/watch_project.rb", "lib/compass/core_ext.rb", "lib/compass/exec.rb", "lib/compass/frameworks.rb", "lib/compass/merb.rb", "lib/compass/test_case.rb", "lib/compass/validate/COPYRIGHT.html", "lib/compass/validate/css-validator-javadoc.jar", "lib/compass/validate/css-validator.jar", "lib/compass/validate/jigsaw.jar", "lib/compass/validate/JIGSAW_COPYRIGHT", "lib/compass/validate/README.html", "lib/compass/validate/xerces.jar", "lib/compass/validate/XERCES_COPYING.txt", "lib/compass/validate.rb", "lib/compass/validator.rb", "lib/compass/version.rb", "lib/compass.rb", "lib/sass_extensions.rb", "README.markdown"]
|
|
13
|
+
s.files = ["bin/compass", "examples/blueprint_default/index.html", "examples/blueprint_default/parts/elements.html", "examples/blueprint_default/parts/forms.html", "examples/blueprint_default/parts/grid.html", "examples/blueprint_default/parts/test-small.jpg", "examples/blueprint_default/parts/test.jpg", "examples/blueprint_default/parts/valid.png", "examples/blueprint_default/stylesheets/ie.sass", "examples/blueprint_default/stylesheets/images/grid.png", "examples/blueprint_default/stylesheets/print.sass", "examples/blueprint_default/stylesheets/screen.sass", "examples/blueprint_plugins/index.html", "examples/blueprint_plugins/parts/fancy_type.html", "examples/blueprint_plugins/parts/test-small.jpg", "examples/blueprint_plugins/parts/test.jpg", "examples/blueprint_plugins/parts/valid.png", "examples/blueprint_plugins/stylesheets/ie.sass", "examples/blueprint_plugins/stylesheets/images/grid.png", "examples/blueprint_plugins/stylesheets/print.sass", "examples/blueprint_plugins/stylesheets/screen.sass", "examples/blueprint_scoped/stylesheets/ie.sass", "examples/blueprint_scoped/stylesheets/print.sass", "examples/blueprint_scoped/stylesheets/screen.sass", "examples/blueprint_scoped_form/stylesheets/ie.sass", "examples/blueprint_scoped_form/stylesheets/print.sass", "examples/blueprint_scoped_form/stylesheets/screen.sass", "examples/blueprint_semantic/index.html", "examples/blueprint_semantic/parts/fancy_type.html", "examples/blueprint_semantic/parts/liquid.html", "examples/blueprint_semantic/parts/test-small.jpg", "examples/blueprint_semantic/parts/test.jpg", "examples/blueprint_semantic/parts/valid.png", "examples/blueprint_semantic/stylesheets/ie.sass", "examples/blueprint_semantic/stylesheets/images/grid.png", "examples/blueprint_semantic/stylesheets/liquid.sass", "examples/blueprint_semantic/stylesheets/print.sass", "examples/blueprint_semantic/stylesheets/screen.sass", "examples/compass/compass.html", "examples/compass/sticky_footer.html.haml", "examples/compass/stylesheets/compass.sass", "examples/compass/stylesheets/images/blue_arrow.gif", "examples/compass/stylesheets/sticky_footer.sass", "examples/compass/stylesheets/utilities.sass", "examples/compass/utilities.html.haml", "examples/yui/divisions.html.haml", "examples/yui/index.html.haml", "examples/yui/stylesheets/screen.sass", "examples/yui/sub_divisions.html.haml", "examples/yui/templates.html.haml", "examples/yui/test.jpg", "examples/yui/typography.html.haml", "frameworks/blueprint/lib/blueprint/constants.rb", "frameworks/blueprint/lib/blueprint/grid_builder.rb", "frameworks/blueprint/stylesheets/_blueprint.sass", "frameworks/blueprint/stylesheets/blueprint/_ie.sass", "frameworks/blueprint/stylesheets/blueprint/_print.sass", "frameworks/blueprint/stylesheets/blueprint/_screen.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_colors.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_debug.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_fancy_type.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_form.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_grid.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_interaction.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_liquid.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_scaffolding.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_typography.sass", "frameworks/blueprint/stylesheets/blueprint/modules/_utilities.sass", "frameworks/blueprint/templates/project/grid.png", "frameworks/blueprint/templates/project/ie.sass", "frameworks/blueprint/templates/project/print.sass", "frameworks/blueprint/templates/project/screen.sass", "frameworks/blueprint.rb", "frameworks/compass/stylesheets/_compass.sass", "frameworks/compass/stylesheets/compass/_layout.sass", "frameworks/compass/stylesheets/compass/_reset.sass", "frameworks/compass/stylesheets/compass/_utilities.sass", "frameworks/compass/stylesheets/compass/layout/_sticky_footer.sass", "frameworks/compass/stylesheets/compass/utilities/_general.sass", "frameworks/compass/stylesheets/compass/utilities/_links.sass", "frameworks/compass/stylesheets/compass/utilities/_lists.sass", "frameworks/compass/stylesheets/compass/utilities/_print.sass", "frameworks/compass/stylesheets/compass/utilities/_tables.sass", "frameworks/compass/stylesheets/compass/utilities/_text.sass", "frameworks/compass/stylesheets/compass/utilities/general/_clearfix.sass", "frameworks/compass/stylesheets/compass/utilities/general/_inline_block.sass", "frameworks/compass/stylesheets/compass/utilities/general/_reset.sass", "frameworks/compass/stylesheets/compass/utilities/general/_tabs.sass", "frameworks/compass/stylesheets/compass/utilities/general/_tag_cloud.sass", "frameworks/compass/stylesheets/compass/utilities/links/_hover_link.sass", "frameworks/compass/stylesheets/compass/utilities/links/_link_colors.sass", "frameworks/compass/stylesheets/compass/utilities/links/_unstyled_link.sass", "frameworks/compass/stylesheets/compass/utilities/lists/_bullets.sass", "frameworks/compass/stylesheets/compass/utilities/lists/_horizontal_list.sass", "frameworks/compass/stylesheets/compass/utilities/lists/_inline_list.sass", "frameworks/compass/stylesheets/compass/utilities/tables/_alternating_rows_and_columns.sass", "frameworks/compass/stylesheets/compass/utilities/text/_nowrap.sass", "frameworks/compass/stylesheets/compass/utilities/text/_replacement.sass", "frameworks/compass/templates/project/grid.png", "frameworks/compass/templates/project/ie.sass", "frameworks/compass/templates/project/print.sass", "frameworks/compass/templates/project/screen.sass", "frameworks/compass.rb", "frameworks/yui/COPYRIGHT", "frameworks/yui/stylesheets/_yui.sass", "frameworks/yui/stylesheets/yui/modules/_base.sass", "frameworks/yui/stylesheets/yui/modules/_fonts.sass", "frameworks/yui/stylesheets/yui/modules/_grids.sass", "frameworks/yui/templates/project/screen.sass", "frameworks/yui.rb", "lib/compass/commands/base.rb", "lib/compass/commands/create_project.rb", "lib/compass/commands/install_rails.rb", "lib/compass/commands/list_frameworks.rb", "lib/compass/commands/print_version.rb", "lib/compass/commands/project_base.rb", "lib/compass/commands/update_project.rb", "lib/compass/commands/watch_project.rb", "lib/compass/core_ext.rb", "lib/compass/exec.rb", "lib/compass/frameworks.rb", "lib/compass/merb.rb", "lib/compass/test_case.rb", "lib/compass/validate/COPYRIGHT.html", "lib/compass/validate/css-validator-javadoc.jar", "lib/compass/validate/css-validator.jar", "lib/compass/validate/jigsaw.jar", "lib/compass/validate/JIGSAW_COPYRIGHT", "lib/compass/validate/README.html", "lib/compass/validate/xerces.jar", "lib/compass/validate/XERCES_COPYING.txt", "lib/compass/validate.rb", "lib/compass/validator.rb", "lib/compass/version.rb", "lib/compass.rb", "lib/sass_extensions.rb", "Manifest", "Rakefile", "README.markdown", "test/command_line_test.rb", "test/compass_test.rb", "test/fixtures/stylesheets/blueprint/css/typography.css", "test/fixtures/stylesheets/blueprint/sass/ie.sass", "test/fixtures/stylesheets/blueprint/sass/print.sass", "test/fixtures/stylesheets/blueprint/sass/screen.sass", "test/fixtures/stylesheets/blueprint/sass/typography.sass", "test/fixtures/stylesheets/compass/css/layout.css", "test/fixtures/stylesheets/compass/css/print.css", "test/fixtures/stylesheets/compass/css/reset.css", "test/fixtures/stylesheets/compass/css/utilities.css", "test/fixtures/stylesheets/compass/sass/layout.sass", "test/fixtures/stylesheets/compass/sass/print.sass", "test/fixtures/stylesheets/compass/sass/reset.sass", "test/fixtures/stylesheets/compass/sass/utilities.sass", "test/fixtures/stylesheets/yui/css/mixins.css", "test/fixtures/stylesheets/yui/sass/base.sass", "test/fixtures/stylesheets/yui/sass/fonts.sass", "test/fixtures/stylesheets/yui/sass/grids.sass", "test/fixtures/stylesheets/yui/sass/mixins.sass", "test/sass_extensions_test.rb", "test/test_helper.rb", "VERSION", "compass.gemspec"]
|
|
14
14
|
s.homepage = %q{http://github.com/chriseppstein/compass}
|
|
15
15
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Compass", "--main", "README.markdown"]
|
|
16
16
|
s.require_paths = ["lib"]
|
|
17
17
|
s.rubyforge_project = %q{compass}
|
|
18
18
|
s.rubygems_version = %q{1.2.0}
|
|
19
19
|
s.summary = %q{Sass-Based CSS Meta-Framework.}
|
|
20
|
-
s.test_files = ["test/compass_test.rb", "test/sass_extensions_test.rb", "test/test_helper.rb"]
|
|
20
|
+
s.test_files = ["test/command_line_test.rb", "test/compass_test.rb", "test/sass_extensions_test.rb", "test/test_helper.rb"]
|
|
21
21
|
|
|
22
22
|
if s.respond_to? :specification_version then
|
|
23
23
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
data/lib/compass.rb
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
require 'rubygems'
|
|
2
2
|
require 'sass'
|
|
3
|
+
|
|
4
|
+
def assert_sass_version(obj)
|
|
5
|
+
unless obj.respond_to?(:version) && obj.version[:major] == 2 && obj.version[:minor] >= 1
|
|
6
|
+
raise LoadError.new("Compass requires Haml version 2.1 or greater.")
|
|
7
|
+
end
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
begin
|
|
11
|
+
assert_sass_version(Sass)
|
|
12
|
+
rescue LoadError
|
|
13
|
+
require 'haml'
|
|
14
|
+
assert_sass_version(Haml)
|
|
15
|
+
end
|
|
16
|
+
|
|
3
17
|
require File.join(File.dirname(__FILE__), 'sass_extensions')
|
|
4
18
|
|
|
5
19
|
['core_ext', 'version'].each do |file|
|
|
@@ -12,19 +12,23 @@ module Compass
|
|
|
12
12
|
end
|
|
13
13
|
|
|
14
14
|
protected
|
|
15
|
-
|
|
16
|
-
def
|
|
17
|
-
|
|
15
|
+
|
|
16
|
+
def relativize(path)
|
|
17
|
+
if path.index(working_directory+File::SEPARATOR) == 0
|
|
18
|
+
path[(working_directory+File::SEPARATOR).length..-1]
|
|
19
|
+
else
|
|
20
|
+
path
|
|
21
|
+
end
|
|
18
22
|
end
|
|
23
|
+
|
|
19
24
|
# create a directory and all the directories necessary to reach it.
|
|
20
|
-
def directory(
|
|
25
|
+
def directory(dir, options = nil)
|
|
21
26
|
options ||= self.options
|
|
22
|
-
dir = subdir ? projectize(subdir) : project_directory
|
|
23
27
|
if File.exists?(dir) && File.directory?(dir) && options[:force]
|
|
24
28
|
print_action :exists, basename(dir) + File::SEPARATOR
|
|
25
29
|
elsif File.exists?(dir) && File.directory?(dir)
|
|
26
|
-
msg = "Directory #{basename(dir)} already exists. Run with --force to force
|
|
27
|
-
raise ::Compass::Exec::
|
|
30
|
+
msg = "Directory #{basename(dir)} already exists. Run with --force to force creation."
|
|
31
|
+
raise ::Compass::Exec::DirectoryExistsError.new(msg)
|
|
28
32
|
elsif File.exists?(dir)
|
|
29
33
|
msg = "#{basename(dir)} already exists and is not a directory."
|
|
30
34
|
raise ::Compass::Exec::ExecError.new(msg)
|
|
@@ -34,9 +38,13 @@ module Compass
|
|
|
34
38
|
end
|
|
35
39
|
end
|
|
36
40
|
|
|
41
|
+
def absolute_path?(path)
|
|
42
|
+
# This is only going to work on unix, gonna need a better implementation.
|
|
43
|
+
path.index(File::SEPARATOR) == 0
|
|
44
|
+
end
|
|
45
|
+
|
|
37
46
|
# copy/process a template in the compass template directory to the project directory.
|
|
38
47
|
def template(from, to, options)
|
|
39
|
-
to = projectize(to)
|
|
40
48
|
from = File.join(templates_directory, separate(from))
|
|
41
49
|
if File.exists?(to) && !options[:force]
|
|
42
50
|
#TODO: Detect differences & provide an overwrite prompt
|
|
@@ -75,9 +83,9 @@ module Compass
|
|
|
75
83
|
path.gsub(%r{/}, File::SEPARATOR)
|
|
76
84
|
end
|
|
77
85
|
|
|
78
|
-
def basename(file
|
|
79
|
-
if file.length >
|
|
80
|
-
file
|
|
86
|
+
def basename(file)
|
|
87
|
+
if file.length > working_directory.length
|
|
88
|
+
relativize(file)
|
|
81
89
|
else
|
|
82
90
|
File.basename(file)
|
|
83
91
|
end
|
|
@@ -4,33 +4,41 @@ require File.join(File.dirname(__FILE__), 'update_project')
|
|
|
4
4
|
|
|
5
5
|
module Compass
|
|
6
6
|
module Commands
|
|
7
|
-
class CreateProject <
|
|
7
|
+
class CreateProject < ProjectBase
|
|
8
8
|
|
|
9
|
-
attr_accessor :project_directory, :project_name
|
|
10
|
-
|
|
11
9
|
def initialize(working_directory, options)
|
|
12
10
|
super(working_directory, options)
|
|
13
|
-
self.project_name = options[:project_name]
|
|
14
|
-
self.project_directory = File.expand_path File.join(working_directory, project_name)
|
|
15
11
|
end
|
|
16
12
|
|
|
17
13
|
# all commands must implement perform
|
|
18
14
|
def perform
|
|
19
|
-
|
|
15
|
+
begin
|
|
16
|
+
directory nil, options
|
|
17
|
+
rescue Compass::Exec::DirectoryExistsError
|
|
18
|
+
msg = "Project directory already exists. Run with -u to update or --force to force creation."
|
|
19
|
+
raise ::Compass::Exec::DirectoryExistsError.new(msg)
|
|
20
|
+
end
|
|
20
21
|
src_dir = options[:src_dir] || "src"
|
|
21
22
|
css_dir = options[:css_dir] || "stylesheets"
|
|
22
23
|
directory src_dir, options.merge(:force => true)
|
|
23
24
|
directory css_dir, options.merge(:force => true)
|
|
24
|
-
|
|
25
|
-
templates = Dir.chdir(project_dir) do
|
|
26
|
-
Dir.glob("*")
|
|
27
|
-
end
|
|
28
|
-
templates.each do |t|
|
|
25
|
+
framework_templates.each do |t|
|
|
29
26
|
template "project/#{t}", "#{src_dir}/#{t}", options
|
|
30
27
|
end
|
|
31
28
|
UpdateProject.new(working_directory, options).perform
|
|
32
29
|
end
|
|
33
30
|
|
|
31
|
+
def framework_templates
|
|
32
|
+
framework_project_dir = File.join(templates_directory, "project")
|
|
33
|
+
Dir.chdir(framework_project_dir) do
|
|
34
|
+
Dir.glob("*")
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
def skip_project_directory_assertion?
|
|
39
|
+
true
|
|
40
|
+
end
|
|
41
|
+
|
|
34
42
|
end
|
|
35
43
|
end
|
|
36
44
|
end
|
|
@@ -2,41 +2,26 @@ require File.join(File.dirname(__FILE__), 'base')
|
|
|
2
2
|
|
|
3
3
|
module Compass
|
|
4
4
|
module Commands
|
|
5
|
-
class InstallRails <
|
|
6
|
-
def initialize(
|
|
7
|
-
super
|
|
5
|
+
class InstallRails < CreateProject
|
|
6
|
+
def initialize(*args)
|
|
7
|
+
super
|
|
8
8
|
end
|
|
9
|
+
|
|
9
10
|
def perform
|
|
10
11
|
set_install_location
|
|
11
12
|
set_output_location
|
|
12
13
|
directory options[:stylesheets_location]
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
write_file
|
|
14
|
+
framework_templates.each do |t|
|
|
15
|
+
template "project/#{t}", "#{options[:stylesheets_location]}/#{t}", options
|
|
16
|
+
end
|
|
17
|
+
write_file 'config/initializers/compass.rb', initializer_contents
|
|
17
18
|
if has_application_layout?
|
|
18
19
|
next_steps
|
|
19
20
|
else
|
|
20
|
-
write_file
|
|
21
|
+
write_file 'app/views/layouts/application.html.haml', application_layout_contents
|
|
21
22
|
end
|
|
22
23
|
end
|
|
23
24
|
|
|
24
|
-
def initializer
|
|
25
|
-
init_file =
|
|
26
|
-
if File.exists?(init_file) && !options[:force]
|
|
27
|
-
msg = "File #{basename(init_file)} already exists. Run with --force to force project creation."
|
|
28
|
-
raise ::Compass::Exec::ExecError.new(msg)
|
|
29
|
-
end
|
|
30
|
-
if File.exists?(init_file)
|
|
31
|
-
print_action :overwrite, basename(init_file)
|
|
32
|
-
else
|
|
33
|
-
print_action :create, basename(init_file)
|
|
34
|
-
end
|
|
35
|
-
output = open(init_file,'w')
|
|
36
|
-
output.write(initializer_contents)
|
|
37
|
-
output.close
|
|
38
|
-
end
|
|
39
|
-
|
|
40
25
|
def initializer_contents
|
|
41
26
|
%Q{require 'compass'
|
|
42
27
|
# If you have any compass plugins, require them here.
|
|
@@ -96,10 +81,6 @@ NEXTSTEPS
|
|
|
96
81
|
end
|
|
97
82
|
end
|
|
98
83
|
|
|
99
|
-
def project_directory
|
|
100
|
-
working_directory
|
|
101
|
-
end
|
|
102
|
-
|
|
103
84
|
def set_install_location
|
|
104
85
|
print "Compass recommends that you keep your stylesheets in app/stylesheets/ instead of the Sass default location of public/stylesheets/sass/.\nIs this OK? (Y/n) "
|
|
105
86
|
answer = gets
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
require 'rubygems'
|
|
2
|
+
require 'sass'
|
|
3
|
+
require 'fileutils'
|
|
4
|
+
require 'pathname'
|
|
5
|
+
require File.join(File.dirname(__FILE__), 'base')
|
|
6
|
+
|
|
7
|
+
module Compass
|
|
8
|
+
module Commands
|
|
9
|
+
class ProjectBase < Base
|
|
10
|
+
attr_accessor :project_directory, :project_name, :options, :project_src_subdirectory, :project_css_subdirectory
|
|
11
|
+
|
|
12
|
+
def initialize(working_directory, options = {})
|
|
13
|
+
super(working_directory, options)
|
|
14
|
+
self.project_name = determine_project_name(working_directory, options)
|
|
15
|
+
self.project_directory = determine_project_directory(working_directory, options)
|
|
16
|
+
assert_project_directory_exists!
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
protected
|
|
20
|
+
|
|
21
|
+
def directory(subdir, options = nil)
|
|
22
|
+
subdir ||= project_directory
|
|
23
|
+
subdir = projectize(subdir) unless absolute_path?(subdir)
|
|
24
|
+
super(subdir, options)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def template(from, to, options)
|
|
28
|
+
to = projectize(to) unless absolute_path?(to)
|
|
29
|
+
super(from, to, options)
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def write_file(path, contents)
|
|
33
|
+
path = projectize(path) unless absolute_path?(path)
|
|
34
|
+
super(path, contents)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def projectize(path)
|
|
38
|
+
File.join(project_directory, separate(path))
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
# Read the configuration file for this project
|
|
42
|
+
def read_project_configuration
|
|
43
|
+
config_file = projectize('src/config.rb')
|
|
44
|
+
if File.exists?(config_file)
|
|
45
|
+
contents = open(config_file) {|f| f.read}
|
|
46
|
+
eval(contents, nil, config_file)
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
private
|
|
51
|
+
|
|
52
|
+
def determine_project_name(working_directory, options)
|
|
53
|
+
if options[:project_name]
|
|
54
|
+
File.basename(strip_trailing_separator(options[:project_name]))
|
|
55
|
+
else
|
|
56
|
+
File.basename(working_directory)
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def determine_project_directory(working_directory, options)
|
|
61
|
+
if options[:project_name]
|
|
62
|
+
if absolute_path?(options[:project_name])
|
|
63
|
+
options[:project_name]
|
|
64
|
+
else
|
|
65
|
+
File.join(working_directory, options[:project_name])
|
|
66
|
+
end
|
|
67
|
+
else
|
|
68
|
+
working_directory
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def assert_project_directory_exists!
|
|
73
|
+
if File.exists?(project_directory) && !File.directory?(project_directory)
|
|
74
|
+
raise Compass::Exec::ExecError.new("#{project_directory} is not a directory.")
|
|
75
|
+
elsif !File.directory?(project_directory) && !skip_project_directory_assertion?
|
|
76
|
+
raise ::Compass::Exec::ExecError.new("#{project_directory} does not exist.")
|
|
77
|
+
end
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
def skip_project_directory_assertion?
|
|
81
|
+
options[:force] || options[:dry_run]
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
def strip_trailing_separator(path)
|
|
85
|
+
(path[-1..-1] == File::SEPARATOR) ? path[0..-2] : path
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
@@ -1,40 +1,12 @@
|
|
|
1
|
-
require '
|
|
2
|
-
require 'sass'
|
|
3
|
-
require 'fileutils'
|
|
4
|
-
require 'pathname'
|
|
5
|
-
require File.join(File.dirname(__FILE__), 'base')
|
|
1
|
+
require File.join(File.dirname(__FILE__), 'project_base')
|
|
6
2
|
|
|
7
3
|
module Compass
|
|
8
4
|
module Commands
|
|
9
|
-
class UpdateProject <
|
|
5
|
+
class UpdateProject < ProjectBase
|
|
10
6
|
|
|
11
7
|
Base::ACTIONS << :compile
|
|
12
8
|
Base::ACTIONS << :overwrite
|
|
13
9
|
|
|
14
|
-
attr_accessor :project_directory, :project_name, :options, :project_src_subdirectory, :project_css_subdirectory
|
|
15
|
-
|
|
16
|
-
def initialize(working_directory, options = {})
|
|
17
|
-
super(working_directory, options)
|
|
18
|
-
if options[:project_name]
|
|
19
|
-
options[:project_name] = options[:project_name][0..-2] if options[:project_name][-1..-1] == File::SEPARATOR
|
|
20
|
-
self.project_name = File.basename(options[:project_name])
|
|
21
|
-
if options[:project_name][0] == File::SEPARATOR
|
|
22
|
-
self.project_directory = options[:project_name]
|
|
23
|
-
elsif File.directory?(File.join(working_directory, options[:project_name]))
|
|
24
|
-
self.project_directory = File.expand_path(File.join(working_directory, options[:project_name]))
|
|
25
|
-
else
|
|
26
|
-
if File.exists?(options[:project_name]) or File.exists?(File.join(working_directory, options[:project_name]))
|
|
27
|
-
raise ::Compass::Exec::ExecError.new("#{options[:project_name]} is not a directory.")
|
|
28
|
-
elsif !(options[:force] || options[:dry_run])
|
|
29
|
-
raise ::Compass::Exec::ExecError.new("#{options[:project_name]} does not exist.")
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
else
|
|
33
|
-
self.project_name = File.basename(working_directory)
|
|
34
|
-
self.project_directory = working_directory
|
|
35
|
-
end
|
|
36
|
-
end
|
|
37
|
-
|
|
38
10
|
def perform
|
|
39
11
|
read_project_configuration
|
|
40
12
|
Dir.glob(separate("#{project_src_directory}/**/[^_]*.sass")).each do |sass_file|
|
|
@@ -77,15 +49,6 @@ module Compass
|
|
|
77
49
|
end
|
|
78
50
|
end
|
|
79
51
|
|
|
80
|
-
# Read the configuration file for this project
|
|
81
|
-
def read_project_configuration
|
|
82
|
-
config_file = projectize('config.rb')
|
|
83
|
-
if File.exists?(config_file)
|
|
84
|
-
contents = open(config_file) {|f| f.read}
|
|
85
|
-
eval(contents, nil, config_file)
|
|
86
|
-
end
|
|
87
|
-
end
|
|
88
|
-
|
|
89
52
|
# where to load sass files from
|
|
90
53
|
def sass_load_paths
|
|
91
54
|
@sass_load_paths ||= [project_src_directory] + Compass::Frameworks::ALL.map{|f| f.stylesheets_directory}
|
|
@@ -10,15 +10,22 @@ module Compass
|
|
|
10
10
|
class WatchProject < UpdateProject
|
|
11
11
|
attr_accessor :last_update_time
|
|
12
12
|
def perform
|
|
13
|
+
puts ">>> Compiling all stylesheets."
|
|
13
14
|
super
|
|
14
15
|
self.last_update_time = most_recent_update_time
|
|
16
|
+
puts ">>> Compass is now watching for changes. Press Ctrl-C to Stop."
|
|
15
17
|
loop do
|
|
16
18
|
# TODO: Make this efficient by using filesystem monitoring.
|
|
17
|
-
|
|
19
|
+
begin
|
|
20
|
+
sleep 1
|
|
21
|
+
rescue Interrupt
|
|
22
|
+
puts ""
|
|
23
|
+
exit 0
|
|
24
|
+
end
|
|
18
25
|
file, t = should_update?
|
|
19
26
|
if t
|
|
20
27
|
begin
|
|
21
|
-
puts ">>> Change detected to #{file}
|
|
28
|
+
puts ">>> Change detected to: #{file}"
|
|
22
29
|
super
|
|
23
30
|
rescue StandardError => e
|
|
24
31
|
::Compass::Exec.report_error(e, options)
|
data/lib/compass/exec.rb
CHANGED
|
@@ -7,6 +7,9 @@ module Compass
|
|
|
7
7
|
class ExecError < StandardError
|
|
8
8
|
end
|
|
9
9
|
|
|
10
|
+
class DirectoryExistsError < ExecError
|
|
11
|
+
end
|
|
12
|
+
|
|
10
13
|
|
|
11
14
|
def report_error(e, options)
|
|
12
15
|
$stderr.puts "#{e.class} on line #{get_line e} of #{get_file e}: #{e.message}"
|
|
@@ -37,11 +40,11 @@ module Compass
|
|
|
37
40
|
def initialize(args)
|
|
38
41
|
self.args = args
|
|
39
42
|
self.options = {}
|
|
43
|
+
parse!
|
|
40
44
|
end
|
|
41
45
|
|
|
42
46
|
def run!
|
|
43
47
|
begin
|
|
44
|
-
parse!
|
|
45
48
|
perform!
|
|
46
49
|
rescue Exception => e
|
|
47
50
|
raise e if e.is_a? SystemExit
|
|
@@ -50,9 +53,9 @@ module Compass
|
|
|
50
53
|
else
|
|
51
54
|
::Compass::Exec.report_error(e, @options)
|
|
52
55
|
end
|
|
53
|
-
|
|
56
|
+
return 1
|
|
54
57
|
end
|
|
55
|
-
|
|
58
|
+
return 0
|
|
56
59
|
end
|
|
57
60
|
|
|
58
61
|
protected
|
|
@@ -68,14 +71,18 @@ module Compass
|
|
|
68
71
|
def parse!
|
|
69
72
|
self.opts = OptionParser.new(&method(:set_opts))
|
|
70
73
|
self.opts.parse!(self.args)
|
|
71
|
-
if
|
|
72
|
-
self.options[:project_name] =
|
|
74
|
+
if self.args.size > 0
|
|
75
|
+
self.options[:project_name] = trim_trailing_separator(self.args.shift)
|
|
73
76
|
end
|
|
74
77
|
self.options[:command] ||= self.options[:project_name] ? :create_project : :update_project
|
|
75
78
|
self.options[:environment] ||= :production
|
|
76
79
|
self.options[:framework] ||= :compass
|
|
77
80
|
end
|
|
78
|
-
|
|
81
|
+
|
|
82
|
+
def trim_trailing_separator(path)
|
|
83
|
+
path[-1..-1] == File::SEPARATOR ? path[0..-2] : path
|
|
84
|
+
end
|
|
85
|
+
|
|
79
86
|
def set_opts(opts)
|
|
80
87
|
opts.banner = <<END
|
|
81
88
|
Usage: compass [options] [project]
|
|
@@ -161,7 +168,6 @@ END
|
|
|
161
168
|
end
|
|
162
169
|
|
|
163
170
|
def do_command(command)
|
|
164
|
-
require File.join(File.dirname(__FILE__), 'commands', command.to_s)
|
|
165
171
|
command_class_name = command.to_s.split(/_/).map{|p| p.capitalize}.join('')
|
|
166
172
|
command_class = eval("::Compass::Commands::#{command_class_name}")
|
|
167
173
|
command_class.new(Dir.getwd, options).perform
|
|
@@ -170,3 +176,7 @@ END
|
|
|
170
176
|
end
|
|
171
177
|
end
|
|
172
178
|
end
|
|
179
|
+
|
|
180
|
+
Dir.glob(File.join(File.dirname(__FILE__), 'commands', "*.rb")).each do |file|
|
|
181
|
+
require file
|
|
182
|
+
end
|
data/lib/compass/frameworks.rb
CHANGED
|
@@ -16,12 +16,14 @@ module Compass
|
|
|
16
16
|
ALL << Framework.new(name, *arguments)
|
|
17
17
|
end
|
|
18
18
|
def [](name)
|
|
19
|
-
ALL.detect{|f| f.name == name}
|
|
19
|
+
ALL.detect{|f| f.name.to_s == name.to_s}
|
|
20
20
|
end
|
|
21
21
|
module_function :register, :[]
|
|
22
22
|
end
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
# Import all of the default frameworks.
|
|
26
|
+
default_frameworks_directory = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'frameworks'))
|
|
27
|
+
Dir.glob(File.join(default_frameworks_directory, "*.rb")).each do |framework|
|
|
28
|
+
require framework
|
|
29
|
+
end
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
require File.dirname(__FILE__)+'/test_helper'
|
|
2
|
+
require 'fileutils'
|
|
3
|
+
require 'compass'
|
|
4
|
+
require 'compass/exec'
|
|
5
|
+
require 'timeout'
|
|
6
|
+
|
|
7
|
+
class CommandLineTest < Test::Unit::TestCase
|
|
8
|
+
include Compass::TestCaseHelper
|
|
9
|
+
def test_basic_install
|
|
10
|
+
within_tmp_directory do
|
|
11
|
+
compass "basic"
|
|
12
|
+
assert File.exists?("basic/src/screen.sass")
|
|
13
|
+
assert File.exists?("basic/stylesheets/screen.css")
|
|
14
|
+
assert_action_performed :directory, "basic/"
|
|
15
|
+
assert_action_performed :create, "basic/src/screen.sass"
|
|
16
|
+
assert_action_performed :compile, "basic/src/screen.sass"
|
|
17
|
+
assert_action_performed :create, "basic/stylesheets/screen.css"
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def test_framework_installs
|
|
22
|
+
Compass::Frameworks::ALL.each do |framework|
|
|
23
|
+
within_tmp_directory do
|
|
24
|
+
compass *%W(--framework #{framework.name} #{framework.name}_project)
|
|
25
|
+
assert File.exists?("#{framework.name}_project/src/screen.sass")
|
|
26
|
+
assert File.exists?("#{framework.name}_project/stylesheets/screen.css")
|
|
27
|
+
assert_action_performed :directory, "#{framework.name}_project/"
|
|
28
|
+
assert_action_performed :create, "#{framework.name}_project/src/screen.sass"
|
|
29
|
+
assert_action_performed :compile, "#{framework.name}_project/src/screen.sass"
|
|
30
|
+
assert_action_performed :create, "#{framework.name}_project/stylesheets/screen.css"
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def test_basic_update
|
|
36
|
+
within_tmp_directory do
|
|
37
|
+
compass "basic"
|
|
38
|
+
Dir.chdir "basic" do
|
|
39
|
+
compass
|
|
40
|
+
assert_action_performed :compile, "src/screen.sass"
|
|
41
|
+
assert_action_performed :overwrite, "stylesheets/screen.css"
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def test_rails_install
|
|
47
|
+
within_tmp_directory do
|
|
48
|
+
generate_rails_app("compass_rails")
|
|
49
|
+
Dir.chdir "compass_rails" do
|
|
50
|
+
compass "--rails" do |responder|
|
|
51
|
+
responder.respond_to "Is this OK? (Y/n) ", :with => "Y"
|
|
52
|
+
responder.respond_to "Emit compiled stylesheets to public/stylesheets/compiled? (Y/n) ", :with => "Y"
|
|
53
|
+
end
|
|
54
|
+
# puts @last_result
|
|
55
|
+
assert_action_performed :create, "app/stylesheets/screen.sass"
|
|
56
|
+
assert_action_performed :create, "config/initializers/compass.rb"
|
|
57
|
+
assert_action_performed :create, "app/views/layouts/application.html.haml"
|
|
58
|
+
assert_action_performed :create, "config/initializers/compass.rb"
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
rescue LoadError
|
|
62
|
+
puts "Skipping rails test. Couldn't Load rails"
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
protected
|
|
66
|
+
def compass(*arguments)
|
|
67
|
+
if block_given?
|
|
68
|
+
responder = Responder.new
|
|
69
|
+
yield responder
|
|
70
|
+
IO.popen("-", "w+") do |io|
|
|
71
|
+
if io
|
|
72
|
+
#parent process
|
|
73
|
+
output = ""
|
|
74
|
+
while !io.eof?
|
|
75
|
+
timeout(1) do
|
|
76
|
+
output << io.readpartial(512)
|
|
77
|
+
end
|
|
78
|
+
prompt = output.split("\n").last
|
|
79
|
+
if response = responder.response_for(prompt)
|
|
80
|
+
io.puts response
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
@last_result = output
|
|
84
|
+
else
|
|
85
|
+
#child process
|
|
86
|
+
execute *arguments
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
else
|
|
90
|
+
@last_result = capture_output do
|
|
91
|
+
execute *arguments
|
|
92
|
+
end
|
|
93
|
+
end
|
|
94
|
+
rescue Timeout::Error
|
|
95
|
+
fail "Read from child process timed out"
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
class Responder
|
|
99
|
+
def initialize
|
|
100
|
+
@responses = []
|
|
101
|
+
end
|
|
102
|
+
def respond_to(prompt, options = {})
|
|
103
|
+
@responses << [prompt, options[:with]]
|
|
104
|
+
end
|
|
105
|
+
def response_for(prompt)
|
|
106
|
+
pair = @responses.detect{|r| r.first == prompt}
|
|
107
|
+
pair.last if pair
|
|
108
|
+
end
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
def assert_action_performed(action, path)
|
|
112
|
+
@last_result.split("\n").each do |line|
|
|
113
|
+
line = line.split
|
|
114
|
+
return if line.first == action.to_s && line.last == path
|
|
115
|
+
end
|
|
116
|
+
fail "Action #{action.inspect} was not performed on: #{path}"
|
|
117
|
+
end
|
|
118
|
+
|
|
119
|
+
def within_tmp_directory(dir = "tmp")
|
|
120
|
+
d = absolutize(dir)
|
|
121
|
+
FileUtils.mkdir_p(d)
|
|
122
|
+
Dir.chdir(d) do
|
|
123
|
+
yield
|
|
124
|
+
end
|
|
125
|
+
ensure
|
|
126
|
+
FileUtils.rm_r(d)
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
def capture_output
|
|
130
|
+
real_stdout, $stdout = $stdout, StringIO.new
|
|
131
|
+
yield
|
|
132
|
+
$stdout.string
|
|
133
|
+
ensure
|
|
134
|
+
$stdout = real_stdout
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
def execute(*arguments)
|
|
138
|
+
Compass::Exec::Compass.new(arguments).run!
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
def generate_rails_app(name)
|
|
142
|
+
`rails #{name}`
|
|
143
|
+
end
|
|
144
|
+
end
|
data/test/compass_test.rb
CHANGED
|
@@ -3,6 +3,7 @@ require 'fileutils'
|
|
|
3
3
|
require 'compass'
|
|
4
4
|
|
|
5
5
|
class CompassTest < Test::Unit::TestCase
|
|
6
|
+
include Compass::TestCaseHelper
|
|
6
7
|
def setup
|
|
7
8
|
setup_fixtures :blueprint, :yui, :empty
|
|
8
9
|
@original_options = Sass::Plugin.options
|
|
@@ -82,7 +83,11 @@ class CompassTest < Test::Unit::TestCase
|
|
|
82
83
|
end
|
|
83
84
|
def with_templates(folder)
|
|
84
85
|
old_template_loc = Sass::Plugin.options[:template_location]
|
|
85
|
-
Sass::Plugin.options[:template_location] = old_template_loc.
|
|
86
|
+
Sass::Plugin.options[:template_location] = if old_template_loc.is_a?(Hash)
|
|
87
|
+
old_template_loc.dup
|
|
88
|
+
else
|
|
89
|
+
Hash.new
|
|
90
|
+
end
|
|
86
91
|
@current_template_folder = folder
|
|
87
92
|
begin
|
|
88
93
|
Sass::Plugin.options[:template_location][template_loc(folder)] = tempfile_loc(folder)
|
|
@@ -140,13 +145,4 @@ class CompassTest < Test::Unit::TestCase
|
|
|
140
145
|
"#{stylesheet_fixtures(folder)}/saved"
|
|
141
146
|
end
|
|
142
147
|
|
|
143
|
-
def absolutize(path)
|
|
144
|
-
if path.blank?
|
|
145
|
-
File.dirname(__FILE__)
|
|
146
|
-
elsif path[0] == ?/
|
|
147
|
-
"#{File.dirname(__FILE__)}#{path}"
|
|
148
|
-
else
|
|
149
|
-
"#{File.dirname(__FILE__)}/#{path}"
|
|
150
|
-
end
|
|
151
|
-
end
|
|
152
148
|
end
|
data/test/test_helper.rb
CHANGED
|
@@ -32,6 +32,16 @@ require 'sass/plugin'
|
|
|
32
32
|
|
|
33
33
|
require 'test/unit'
|
|
34
34
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
35
|
+
module Compass
|
|
36
|
+
module TestCaseHelper
|
|
37
|
+
def absolutize(path)
|
|
38
|
+
if path.blank?
|
|
39
|
+
File.dirname(__FILE__)
|
|
40
|
+
elsif path[0] == ?/
|
|
41
|
+
"#{File.dirname(__FILE__)}#{path}"
|
|
42
|
+
else
|
|
43
|
+
"#{File.dirname(__FILE__)}/#{path}"
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: chriseppstein-compass
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.8
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Chris Eppstein
|
|
@@ -9,7 +9,7 @@ autorequire:
|
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
11
|
|
|
12
|
-
date: 2009-01-
|
|
12
|
+
date: 2009-01-25 00:00:00 -08:00
|
|
13
13
|
default_executable: compass
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
@@ -43,13 +43,11 @@ extra_rdoc_files:
|
|
|
43
43
|
- lib/compass/commands/install_rails.rb
|
|
44
44
|
- lib/compass/commands/list_frameworks.rb
|
|
45
45
|
- lib/compass/commands/print_version.rb
|
|
46
|
+
- lib/compass/commands/project_base.rb
|
|
46
47
|
- lib/compass/commands/update_project.rb
|
|
47
48
|
- lib/compass/commands/watch_project.rb
|
|
48
49
|
- lib/compass/core_ext.rb
|
|
49
50
|
- lib/compass/exec.rb
|
|
50
|
-
- lib/compass/frameworks/blueprint.rb
|
|
51
|
-
- lib/compass/frameworks/compass.rb
|
|
52
|
-
- lib/compass/frameworks/yui.rb
|
|
53
51
|
- lib/compass/frameworks.rb
|
|
54
52
|
- lib/compass/merb.rb
|
|
55
53
|
- lib/compass/test_case.rb
|
|
@@ -69,7 +67,6 @@ extra_rdoc_files:
|
|
|
69
67
|
- README.markdown
|
|
70
68
|
files:
|
|
71
69
|
- bin/compass
|
|
72
|
-
- compass.gemspec
|
|
73
70
|
- examples/blueprint_default/index.html
|
|
74
71
|
- examples/blueprint_default/parts/elements.html
|
|
75
72
|
- examples/blueprint_default/parts/forms.html
|
|
@@ -141,6 +138,7 @@ files:
|
|
|
141
138
|
- frameworks/blueprint/templates/project/ie.sass
|
|
142
139
|
- frameworks/blueprint/templates/project/print.sass
|
|
143
140
|
- frameworks/blueprint/templates/project/screen.sass
|
|
141
|
+
- frameworks/blueprint.rb
|
|
144
142
|
- frameworks/compass/stylesheets/_compass.sass
|
|
145
143
|
- frameworks/compass/stylesheets/compass/_layout.sass
|
|
146
144
|
- frameworks/compass/stylesheets/compass/_reset.sass
|
|
@@ -170,24 +168,24 @@ files:
|
|
|
170
168
|
- frameworks/compass/templates/project/ie.sass
|
|
171
169
|
- frameworks/compass/templates/project/print.sass
|
|
172
170
|
- frameworks/compass/templates/project/screen.sass
|
|
171
|
+
- frameworks/compass.rb
|
|
173
172
|
- frameworks/yui/COPYRIGHT
|
|
174
173
|
- frameworks/yui/stylesheets/_yui.sass
|
|
175
174
|
- frameworks/yui/stylesheets/yui/modules/_base.sass
|
|
176
175
|
- frameworks/yui/stylesheets/yui/modules/_fonts.sass
|
|
177
176
|
- frameworks/yui/stylesheets/yui/modules/_grids.sass
|
|
178
177
|
- frameworks/yui/templates/project/screen.sass
|
|
178
|
+
- frameworks/yui.rb
|
|
179
179
|
- lib/compass/commands/base.rb
|
|
180
180
|
- lib/compass/commands/create_project.rb
|
|
181
181
|
- lib/compass/commands/install_rails.rb
|
|
182
182
|
- lib/compass/commands/list_frameworks.rb
|
|
183
183
|
- lib/compass/commands/print_version.rb
|
|
184
|
+
- lib/compass/commands/project_base.rb
|
|
184
185
|
- lib/compass/commands/update_project.rb
|
|
185
186
|
- lib/compass/commands/watch_project.rb
|
|
186
187
|
- lib/compass/core_ext.rb
|
|
187
188
|
- lib/compass/exec.rb
|
|
188
|
-
- lib/compass/frameworks/blueprint.rb
|
|
189
|
-
- lib/compass/frameworks/compass.rb
|
|
190
|
-
- lib/compass/frameworks/yui.rb
|
|
191
189
|
- lib/compass/frameworks.rb
|
|
192
190
|
- lib/compass/merb.rb
|
|
193
191
|
- lib/compass/test_case.rb
|
|
@@ -207,6 +205,7 @@ files:
|
|
|
207
205
|
- Manifest
|
|
208
206
|
- Rakefile
|
|
209
207
|
- README.markdown
|
|
208
|
+
- test/command_line_test.rb
|
|
210
209
|
- test/compass_test.rb
|
|
211
210
|
- test/fixtures/stylesheets/blueprint/css/typography.css
|
|
212
211
|
- test/fixtures/stylesheets/blueprint/sass/ie.sass
|
|
@@ -229,6 +228,7 @@ files:
|
|
|
229
228
|
- test/sass_extensions_test.rb
|
|
230
229
|
- test/test_helper.rb
|
|
231
230
|
- VERSION
|
|
231
|
+
- compass.gemspec
|
|
232
232
|
has_rdoc: false
|
|
233
233
|
homepage: http://github.com/chriseppstein/compass
|
|
234
234
|
post_install_message:
|
|
@@ -261,6 +261,7 @@ signing_key:
|
|
|
261
261
|
specification_version: 2
|
|
262
262
|
summary: Sass-Based CSS Meta-Framework.
|
|
263
263
|
test_files:
|
|
264
|
+
- test/command_line_test.rb
|
|
264
265
|
- test/compass_test.rb
|
|
265
266
|
- test/sass_extensions_test.rb
|
|
266
267
|
- test/test_helper.rb
|