csso-rails 0.3.2 → 0.3.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/Gemfile.lock +1 -1
- data/Rakefile +9 -3
- data/bin/ruby_csso +2 -21
- data/lib/csso/cli.rb +44 -0
- data/lib/csso/version.rb +1 -1
- data/vendor/csso/csso.js +6 -6
- metadata +14 -27
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: f348466dbf9fcc505bfac786253c5015f5b75e41
|
4
|
+
data.tar.gz: e6429cbdbe44a344e4913aee08b545eb8139bbc7
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: fc6c958f36d17d9e59894d9db0a2d987e0c7fd7a645a6edae72261412da36e6eb4f5420dac23fa59864f10ec9aeb3c5e51b6623cab7a03e28c9467cfd1dc31b2
|
7
|
+
data.tar.gz: 80b063cba7ed2f87b66575c98d33e6920f4756cea73d7aa7391aed09286ddf365f293370d8d013c2cc3f39f5bd7448f922ced6cbb9d9a013f6479cad10c7af09
|
data/Gemfile.lock
CHANGED
data/Rakefile
CHANGED
@@ -25,7 +25,8 @@ file 'csso' do
|
|
25
25
|
}
|
26
26
|
end
|
27
27
|
|
28
|
-
|
28
|
+
desc "updates csso repo"
|
29
|
+
task :update_csso_repo => :csso do
|
29
30
|
#??
|
30
31
|
Dir.chdir('csso'){
|
31
32
|
puts 'Updating csso...'
|
@@ -41,8 +42,10 @@ file Csso::CSSO_JS_LIB => [lib_template, 'csso', 'vendor/csso', 'csso/.git/HEAD'
|
|
41
42
|
`erb #{lib_template} > #{Csso::CSSO_JS_LIB}`
|
42
43
|
end
|
43
44
|
|
44
|
-
|
45
|
+
desc "Generate bundled csso from repo"
|
46
|
+
task :generate_files => [:csso, Csso::CSSO_JS_LIB]
|
45
47
|
|
48
|
+
desc "Clean generated files"
|
46
49
|
task :rm_generated do
|
47
50
|
puts "Removing #{Csso::CSSO_JS_LIB}"
|
48
51
|
`rm #{Csso::CSSO_JS_LIB}`
|
@@ -50,4 +53,7 @@ end
|
|
50
53
|
|
51
54
|
task :regenerate => [:rm_generated, :generate_files]
|
52
55
|
|
53
|
-
|
56
|
+
desc "Update CSSO"
|
57
|
+
task :update_csso => [:rm_generated, :update_csso_repo, :generate_files]
|
58
|
+
|
59
|
+
task :build => :generate_files
|
data/bin/ruby_csso
CHANGED
@@ -1,25 +1,6 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
3
|
require 'csso-rails'
|
4
|
+
require 'csso/cli'
|
4
5
|
|
5
|
-
|
6
|
-
puts <<-HLP
|
7
|
-
csso- CSS Optimizer (ruby bindings by vasfed)
|
8
|
-
Usage:
|
9
|
-
$ ruby_csso < style.css - read stdin and output to stdout
|
10
|
-
$ ruby_csso file1.css [file2.css [...]] - read all files and output to stdout (concatenating, no optimization between files yet)
|
11
|
-
--help - print this help
|
12
|
-
--maniac - enable maniac mode (optimize file multiple times until optimization stops to give any results)
|
13
|
-
HLP
|
14
|
-
end
|
15
|
-
|
16
|
-
maniac = ARGV.delete('--maniac') && true || false
|
17
|
-
|
18
|
-
if ($stdin.tty? && ARGV.empty?) || ARGV.delete('-h') || ARGV.delete('--help')
|
19
|
-
help
|
20
|
-
else
|
21
|
-
# Well, lets read those files
|
22
|
-
css = ARGF.read
|
23
|
-
|
24
|
-
puts Csso.optimize(css, maniac)
|
25
|
-
end
|
6
|
+
Csso::CLI.run!
|
data/lib/csso/cli.rb
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
#encofing: utf-8
|
2
|
+
|
3
|
+
require 'optparse'
|
4
|
+
|
5
|
+
module Csso
|
6
|
+
module CLI
|
7
|
+
def self.run!(argv=ARGV)
|
8
|
+
maniac = false
|
9
|
+
opts = OptionParser.new do |opts|
|
10
|
+
opts.version = Csso::VERSION
|
11
|
+
opts.banner = "CSS Optimizer (ruby bindings by vasfed) version #{opts.version}"
|
12
|
+
opts.separator ""
|
13
|
+
opts.separator "Usage:"
|
14
|
+
opts.separator " #{opts.program_name} [options] FILE [FILE2 [FILE3 [...]]"
|
15
|
+
opts.separator " #{opts.program_name} [options] < some_file.css"
|
16
|
+
opts.separator ""
|
17
|
+
opts.separator "All input files are concatenated and fed to stdout after processing."
|
18
|
+
opts.separator ""
|
19
|
+
|
20
|
+
opts.separator "Options:"
|
21
|
+
opts.on("-m", "--[no-]maniac", "\"Maniac mode\" optimizes input multiple times until optimization stops to give any results.") do |v|
|
22
|
+
maniac = v
|
23
|
+
end
|
24
|
+
|
25
|
+
opts.on_tail("-v", "--version", "Print version information") do
|
26
|
+
return puts opts.ver
|
27
|
+
end
|
28
|
+
opts.on_tail("-h", "--help", "Show this message") do
|
29
|
+
return puts opts.help
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
opts.parse!(argv)
|
34
|
+
|
35
|
+
if $stdin.tty? && argv.empty?
|
36
|
+
return puts opts.help
|
37
|
+
end
|
38
|
+
|
39
|
+
ARGV.replace(argv)
|
40
|
+
css = ARGF.read
|
41
|
+
puts Csso.optimize(css, maniac)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
data/lib/csso/version.rb
CHANGED
data/vendor/csso/csso.js
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
THIS FILE IS AUTOGENERATED! DO NOT EDIT!
|
3
3
|
See lib/csso/csso.js.erb instead.
|
4
4
|
|
5
|
-
Based on CSSO 1.3.
|
5
|
+
Based on CSSO 1.3.10 revision ed443db03803fb9e04918e1c6307053c2a731160
|
6
6
|
*/
|
7
7
|
|
8
8
|
console = {
|
@@ -162,7 +162,7 @@ function getTokens(s) {
|
|
162
162
|
if (c === '/' && cn === '*') {
|
163
163
|
parseMLComment(s);
|
164
164
|
} else if (!urlMode && c === '/' && cn === '/') {
|
165
|
-
if (blockMode > 0) parseIdentifier(s);
|
165
|
+
if (blockMode > 0) parseIdentifier(s);
|
166
166
|
else parseSLComment(s);
|
167
167
|
} else if (c === '"' || c === "'") {
|
168
168
|
parseString(s, c);
|
@@ -593,8 +593,8 @@ function getCSSPAST(_tokens, rule, _needInfo) {
|
|
593
593
|
}
|
594
594
|
|
595
595
|
function getAttrib() {
|
596
|
-
if (checkAttrib1(pos)) return getAttrib1();
|
597
|
-
if (checkAttrib2(pos)) return getAttrib2();
|
596
|
+
if (checkAttrib1(pos)) return getAttrib1();
|
597
|
+
if (checkAttrib2(pos)) return getAttrib2();
|
598
598
|
}
|
599
599
|
|
600
600
|
//attrselector = (seq('=') | seq('~=') | seq('^=') | seq('$=') | seq('*=') | seq('|=')):x -> [#attrselector, x]
|
@@ -1330,7 +1330,7 @@ function getCSSPAST(_tokens, rule, _needInfo) {
|
|
1330
1330
|
(tokens[_i].type !== TokenType.DecimalNumber || !wasIdent)
|
1331
1331
|
) break;
|
1332
1332
|
else wasIdent = true;
|
1333
|
-
}
|
1333
|
+
}
|
1334
1334
|
}
|
1335
1335
|
|
1336
1336
|
if (!wasIdent && tokens[start].type !== TokenType.Asterisk) return fail(tokens[_i]);
|
@@ -3477,7 +3477,7 @@ CSSOCompressor.prototype.getVendorFromString = function(string) {
|
|
3477
3477
|
var vendor = string.charAt(0), i;
|
3478
3478
|
if (vendor === '-') {
|
3479
3479
|
if ((i = string.indexOf('-', 2)) !== -1) return string.substr(0, i + 1);
|
3480
|
-
}
|
3480
|
+
}
|
3481
3481
|
return '';
|
3482
3482
|
};
|
3483
3483
|
|
metadata
CHANGED
@@ -1,62 +1,55 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: csso-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
5
|
-
prerelease:
|
4
|
+
version: 0.3.3
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Vasily Fedoseyev
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-
|
11
|
+
date: 2013-12-27 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: execjs
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '1'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '1'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rake
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - '>='
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - '>='
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: minitest
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - '>='
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - '>='
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '0'
|
62
55
|
description: Invoke the CSSO from Ruby
|
@@ -77,6 +70,7 @@ files:
|
|
77
70
|
- csso-rails.gemspec
|
78
71
|
- lib/csso-rails.rb
|
79
72
|
- lib/csso.rb
|
73
|
+
- lib/csso/cli.rb
|
80
74
|
- lib/csso/compressor.rb
|
81
75
|
- lib/csso/csso.js.erb
|
82
76
|
- lib/csso/js_lib.rb
|
@@ -87,33 +81,26 @@ files:
|
|
87
81
|
homepage: https://github.com/Vasfed/csso-rails
|
88
82
|
licenses:
|
89
83
|
- MIT
|
84
|
+
metadata: {}
|
90
85
|
post_install_message:
|
91
86
|
rdoc_options: []
|
92
87
|
require_paths:
|
93
88
|
- lib
|
94
89
|
required_ruby_version: !ruby/object:Gem::Requirement
|
95
|
-
none: false
|
96
90
|
requirements:
|
97
|
-
- -
|
91
|
+
- - '>='
|
98
92
|
- !ruby/object:Gem::Version
|
99
93
|
version: '0'
|
100
|
-
segments:
|
101
|
-
- 0
|
102
|
-
hash: -4417280419298130483
|
103
94
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
104
|
-
none: false
|
105
95
|
requirements:
|
106
|
-
- -
|
96
|
+
- - '>='
|
107
97
|
- !ruby/object:Gem::Version
|
108
98
|
version: '0'
|
109
|
-
segments:
|
110
|
-
- 0
|
111
|
-
hash: -4417280419298130483
|
112
99
|
requirements: []
|
113
100
|
rubyforge_project: csso-rails
|
114
|
-
rubygems_version:
|
101
|
+
rubygems_version: 2.0.14
|
115
102
|
signing_key:
|
116
|
-
specification_version:
|
103
|
+
specification_version: 4
|
117
104
|
summary: CSS Stylesheet optimizer/compressor for Rails
|
118
105
|
test_files:
|
119
106
|
- spec/csso/csso_spec.rb
|