compass-fontcustom 1.2.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cb0812751debead28ea3d4591379fee7e0583fbc
4
- data.tar.gz: 029b22c2336088adab8a978424fc3010ea114544
3
+ metadata.gz: ea8fcaf8c9cf900531ee2cac60cc449e8a00ede5
4
+ data.tar.gz: fbaa31bc881a18dd35e367311ffc77abe4d66e33
5
5
  SHA512:
6
- metadata.gz: 2902fae6a25bde6f8943acecdb39e2ea5dc7d85e4f2a1724c23bc2517cb1ff04b60901ad8f585ef5907e67ef09ff45aab27c47f20eb1f241827dc5008257b406
7
- data.tar.gz: 985c8f266cd4c3833e54cedd7c01259893977627a4564c801dc635f74e45274b5baa991459051736c9bc4f69a81719d032fabecdfdfca1255fa16bfb4b136041
6
+ metadata.gz: 4e1095302fad3596b4b5d8c5ed102888f3188375730fa93fc604f17f94412f09e58f6fb939071149a236ac64fd1a5a16f432ff245f170d0bff4b1477577ac868
7
+ data.tar.gz: 45ac78f054e80a76419ea92665a25141ce58f5669b0eae8a79e1446bb004b1d58de243697b7d018798095484ced1b13d1accaa299fe723125360f656c5cb50b2
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ **1.3.0** Major release
4
+
5
+ - Bundles Fontcustom 1.3.0 -- #10
6
+ - Fixes an issue where fonts are not regenerated -- #11
7
+ - Adds Compass configuration option `fontcustom_input_paths` -- #12
8
+ - Adds Compass configuration option `fontcustom_fonts_path` -- #13
9
+ - Officially supporting Compass 1.0
10
+
3
11
  **1.2.0** Major release
4
12
 
5
13
  - Bundles Fontcustom 1.2.0
data/Gemfile CHANGED
@@ -7,5 +7,5 @@ gem 'coveralls', :require => false
7
7
  group :development do
8
8
  gem 'autotest-standalone'
9
9
  gem 'autotest-growl' if RUBY_PLATFORM =~ /darwin/
10
- gem 'autotest-fsevent'
10
+ gem 'autotest-fsevent', '>= 0.2.9'
11
11
  end
data/README.md CHANGED
@@ -3,13 +3,14 @@
3
3
  [![Build Status](https://travis-ci.org/glaszig/compass-fontcustom.png?branch=master)](https://travis-ci.org/glaszig/compass-fontcustom)
4
4
  [![Gem Version](https://badge.fury.io/rb/compass-fontcustom.png)](http://badge.fury.io/rb/compass-fontcustom)
5
5
  [![Test Coverage](https://coveralls.io/repos/glaszig/compass-fontcustom/badge.png?branch=master)](https://coveralls.io/r/glaszig/compass-fontcustom)
6
+ [![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/glaszig/compass-fontcustom/trend.png)](https://bitdeli.com/free "Bitdeli Badge")
6
7
  [![endorse](https://api.coderwall.com/glaszig/endorsecount.png)](https://coderwall.com/glaszig)
7
8
 
8
9
  This is my attempt of integrating [Font Custom](http://fontcustom.com) with [Compass](http://compass-style.org).
9
10
 
10
11
  ## Requirements
11
12
 
12
- Made for ruby 1.9+. Tested on 1.9.3 and 2.0.0.
13
+ Made for ruby 1.9+. Tested on 1.9.3, 2.0.0 and 2.1.3.
13
14
  You'll need to have fontforge and the [WOFF font toolset](http://people.mozilla.com/~jkew/woff) installed as outlined in the Font Custom [installation instructions](http://fontcustom.com/#installation).
14
15
 
15
16
  ## Installation
@@ -26,6 +27,18 @@ And then execute:
26
27
 
27
28
  $ bundle
28
29
 
30
+ ## Configuration
31
+
32
+ Compass::Fontcustom adds the following configuration options to Compass.
33
+ Just add these to your project's `config/compass.rb`.
34
+
35
+ - `fontcustom_hash`
36
+ Enables/disables Fontcustom file name hashing.
37
+ - `fontcustom_input_paths`
38
+ Array of paths where to search for SVG files to build custom fonts from.
39
+ - `fontcustom_fonts_path`
40
+ Path to put generated font files in.
41
+
29
42
  ## Usage
30
43
 
31
44
  Syntactically it works like Compass' sprites feature.
@@ -63,19 +76,6 @@ which will result into CSS along the lines of:
63
76
  > Generated CSS class names will be normalized and reserved characters removed.
64
77
  > That means if you have a glyph file name of `a_R3ally-eXotic f1Le+Name.svg` the generated class name will be `.icon-myfont-a_R3ally-eXotic-f1Le-Name`.
65
78
 
66
- ## Configuration options
67
-
68
- ### Filename hashing
69
-
70
- You can choose to disable file name hashes if you're already using an asset pipeline which handles this for you:
71
- Use the `fontcustom_hash` option in `config.rb`
72
-
73
- ```ruby
74
- compass_config do |config|
75
- config.fontcustom_hash = false
76
- end
77
- ```
78
-
79
79
  ## Contributing
80
80
 
81
81
  1. Fork it
@@ -89,3 +89,6 @@ end
89
89
  [MIT](https://raw.github.com/glaszig/compass-fontcustom/master/LICENSE)
90
90
 
91
91
  [![githalytics.com alpha](https://cruel-carlota.pagodabox.com/233dd6a31787ce3672d5e92e97a76965 "githalytics.com")](http://githalytics.com/glaszig/compass-fontcustom)
92
+
93
+
94
+
@@ -20,8 +20,8 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.required_ruby_version = '>= 1.9.3'
22
22
 
23
- spec.add_dependency "compass"
24
- spec.add_dependency "fontcustom", "~> 1.2.0"
23
+ spec.add_dependency "compass", "~> 1.0.1"
24
+ spec.add_dependency "fontcustom", "~> 1.3.3"
25
25
 
26
26
  spec.add_development_dependency "bundler", "~> 1.3"
27
27
  spec.add_development_dependency "rake"
@@ -1,5 +1,6 @@
1
1
  require "compass"
2
2
  require "compass/fontcustom/version"
3
+ require "compass/fontcustom/compass"
3
4
  require "compass/fontcustom/sass_extensions"
4
5
  require "compass/fontcustom/glyph_map"
5
6
  require "compass/fontcustom/font_importer"
@@ -15,8 +16,18 @@ module Compass
15
16
  true
16
17
  end
17
18
 
19
+ Compass::Configuration.add_configuration_property(:fontcustom_input_paths, "Array of paths where to search for SVG files to build custom fonts from") do
20
+ if defined? Rails
21
+ Rails.application.config.assets.paths
22
+ else
23
+ [Compass.configuration.images_path.to_s]
24
+ end
25
+ end
26
+
27
+ Compass::Configuration.add_configuration_property(:fontcustom_fonts_path, "Path to put generated font files in") do
28
+ Compass.configuration.fonts_path.to_s
29
+ end
30
+
18
31
  Sass.load_paths << FontImporter.new
19
32
  end
20
- end
21
-
22
- require "compass/fontcustom/rails" if defined?(Rails)
33
+ end
@@ -0,0 +1,11 @@
1
+ require 'compass/configuration'
2
+
3
+ # https://github.com/Compass/compass/issues/802
4
+
5
+ module Compass
6
+ module Configuration
7
+ def self.strip_trailing_separator(*args)
8
+ Data.strip_trailing_separator(*args)
9
+ end
10
+ end
11
+ end
@@ -2,7 +2,7 @@ require 'erb'
2
2
  require 'tempfile'
3
3
  require 'fontcustom/error'
4
4
  require 'fontcustom/options'
5
- require 'fontcustom/util'
5
+ require 'fontcustom/utility'
6
6
  require 'fontcustom/generator/font'
7
7
 
8
8
  module Compass
@@ -55,21 +55,20 @@ module Compass
55
55
  end
56
56
 
57
57
  def search_paths
58
- [Compass.configuration.images_path.to_s]
58
+ Compass.configuration.fontcustom_input_paths.to_a
59
59
  end
60
60
 
61
61
  # Returns all glyph names inside the folder at `uri`.
62
62
  # @param uri [String] the uri to glob files from
63
63
  # @return [Array]
64
64
  def glyph_names(uri)
65
- files = []
66
- search_paths.each { |p| files.concat Dir[File.join(p, uri)] }
65
+ images = files(uri).sort
67
66
 
68
- if files.empty?
67
+ if images.empty?
69
68
  raise Compass::SpriteException, %Q{No glyph images were found matching "#{uri}" in the images path. Your current images path is: #{folder}}
70
69
  end
71
70
 
72
- files.map { |f| File.basename(f)[0..-5] }
71
+ images.map { |f| File.basename(f)[0..-5] }
73
72
  end
74
73
 
75
74
  # Returns `Sass::Engine` options with defaults
@@ -118,8 +117,9 @@ module Compass
118
117
  # @param uri [String] the uri to glob files from
119
118
  # @return [Array]
120
119
  def files(uri)
121
- [].tap do |files|
122
- search_paths.each { |p| files.concat Dir[File.join p, uri] }
120
+ [].tap do |ary|
121
+ ary.concat Dir[uri]
122
+ search_paths.each { |p| ary.concat Dir[File.join p, uri] }
123
123
  end
124
124
  end
125
125
 
@@ -1,5 +1,6 @@
1
1
  require 'fontcustom'
2
2
  require 'compass/fontcustom/configurable'
3
+ require 'thor'
3
4
 
4
5
  module Compass
5
6
  module Fontcustom
@@ -38,17 +39,16 @@ module Compass
38
39
 
39
40
  # Starts the Fontcustom font generator to write font files to disk.
40
41
  def generate
41
- unless exists?
42
- args = self.class.config.generator_options || {}
43
- args.merge!(
44
- :input => path,
45
- :output => output_dir,
46
- :font_name => @name,
47
- :no_hash => !Compass.configuration.fontcustom_hash,
48
- :quiet => true
49
- )
50
- ::Fontcustom::Generator::Font.start [::Fontcustom::Options.new(args)]
51
- end
42
+ args = self.class.config.generator_options || {}
43
+ args.merge!(
44
+ :input => path,
45
+ :output => output_dir,
46
+ :font_name => @name,
47
+ :no_hash => !Compass.configuration.fontcustom_hash,
48
+ :quiet => true,
49
+ :fonts => []
50
+ )
51
+ ::Fontcustom::Base.new(args).compile
52
52
  end
53
53
 
54
54
  def filename
@@ -56,12 +56,8 @@ module Compass
56
56
  File.basename file, File.extname(file)
57
57
  end
58
58
 
59
- def exists?
60
- not glob.empty?
61
- end
62
-
63
59
  def output_dir
64
- Compass.configuration.fonts_path.to_s
60
+ Compass.configuration.fontcustom_fonts_path
65
61
  end
66
62
 
67
63
  def to_s
@@ -1,5 +1,5 @@
1
1
  module Compass
2
2
  module Fontcustom
3
- VERSION = "1.2.0"
3
+ VERSION = "1.3.0"
4
4
  end
5
5
  end
@@ -26,6 +26,7 @@ class FontImporterTest < Test::Unit::TestCase
26
26
  def teardown
27
27
  Compass.reset_configuration!
28
28
  FileUtils.rm_r @output_path
29
+ FileUtils.rm_r '.fontcustom-manifest.json'
29
30
  end
30
31
 
31
32
  def render(scss)
metadata CHANGED
@@ -1,83 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: compass-fontcustom
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - glaszig
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-10 00:00:00.000000000 Z
11
+ date: 2014-09-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: compass
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>='
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 1.0.1
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: '0'
26
+ version: 1.0.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: fontcustom
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.2.0
33
+ version: 1.3.3
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.2.0
40
+ version: 1.3.3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '1.3'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.3'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: pry
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  description: Fontcustom for Compass
@@ -94,10 +94,10 @@ files:
94
94
  - Rakefile
95
95
  - compass-fontcustom.gemspec
96
96
  - lib/compass/fontcustom.rb
97
+ - lib/compass/fontcustom/compass.rb
97
98
  - lib/compass/fontcustom/configurable.rb
98
99
  - lib/compass/fontcustom/font_importer.rb
99
100
  - lib/compass/fontcustom/glyph_map.rb
100
- - lib/compass/fontcustom/rails.rb
101
101
  - lib/compass/fontcustom/sass_extensions.rb
102
102
  - lib/compass/fontcustom/templates/stylesheet.scss.erb
103
103
  - lib/compass/fontcustom/version.rb
@@ -119,17 +119,17 @@ require_paths:
119
119
  - lib
120
120
  required_ruby_version: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - '>='
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: 1.9.3
125
125
  required_rubygems_version: !ruby/object:Gem::Requirement
126
126
  requirements:
127
- - - '>='
127
+ - - ">="
128
128
  - !ruby/object:Gem::Version
129
129
  version: '0'
130
130
  requirements: []
131
131
  rubyforge_project:
132
- rubygems_version: 2.0.3
132
+ rubygems_version: 2.2.2
133
133
  signing_key:
134
134
  specification_version: 4
135
135
  summary: Integrates Fontcustom with Compass
@@ -1,11 +0,0 @@
1
- module Compass
2
- module Fontcustom
3
-
4
- class FontImporter
5
- def self.search_paths
6
- Rails.application.config.assets.paths
7
- end
8
- end
9
-
10
- end
11
- end