emoticons_helper 0.2.2 → 0.2.3

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/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.2
1
+ 0.2.3
@@ -4,14 +4,14 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{emoticons_helper}
8
- s.version = "0.2.2"
7
+ s.name = "emoticons_helper"
8
+ s.version = "0.2.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["gravindra"]
12
- s.date = %q{2013-04-27}
13
- s.description = %q{Gives face to your text.}
14
- s.email = %q{ravighare26@gmail.com}
12
+ s.date = "2013-08-31"
13
+ s.description = "Gives face to your text."
14
+ s.email = "ravighare26@gmail.com"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
17
  "README.rdoc"
@@ -27,6 +27,7 @@ Gem::Specification.new do |s|
27
27
  "emoticons_helper.gemspec",
28
28
  "lib/emoticons_helper.rb",
29
29
  "lib/generators/smile_generator.rb",
30
+ "lib/generators/templates/smileys.rb",
30
31
  "lib/generators/templates/smilies.css",
31
32
  "lib/generators/templates/smilies.yml",
32
33
  "lib/generators/templates/smilies/angry.gif",
@@ -48,17 +49,16 @@ Gem::Specification.new do |s|
48
49
  "test/helper.rb",
49
50
  "test/test_emoticons_helper.rb"
50
51
  ]
51
- s.homepage = %q{http://github.com/gravindra/emoticons_helper}
52
+ s.homepage = "http://github.com/gravindra/emoticons_helper"
52
53
  s.licenses = ["MIT"]
53
54
  s.require_paths = ["lib"]
54
- s.rubygems_version = %q{1.3.6}
55
- s.summary = %q{This Gem Rocks ...}
55
+ s.rubygems_version = "1.8.25"
56
+ s.summary = "This Gem Rocks ..."
56
57
 
57
58
  if s.respond_to? :specification_version then
58
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
59
59
  s.specification_version = 3
60
60
 
61
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
61
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
62
62
  s.add_development_dependency(%q<shoulda>, [">= 0"])
63
63
  s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
64
64
  s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
@@ -2,24 +2,6 @@ class SmileGenerator < Rails::Generators::Base
2
2
  source_root File.expand_path('../templates', __FILE__)
3
3
 
4
4
  def create_initializer_file
5
- str = %!#This file loads simileys
6
- module SmileyHelpers
7
- def replace_smilies(str, animate=false)
8
- smilies = YAML.load_file("\#{Rails.root}/config/smilies.yml")
9
- smilies.each_pair do |k, v|
10
- if animate
11
- new_str = "<span class=\'smilies animate"+k+"\'>&nbsp;</span>"
12
- else
13
- new_str = "<span class=\'smilies "+k+"\'>&nbsp;</span>"
14
- end
15
- v.each{|val| str = str.gsub(val, new_str)}
16
- end
17
- str.html_safe
18
- end
19
- end
20
- ActionView::Base.send :include, SmileyHelpers
21
- !
22
-
23
5
  copy_file "smilies.yml", "#{Rails.root}/config/smilies.yml"
24
6
 
25
7
  if Dir.exists?("#{Rails.root}/app/assets/")
@@ -34,6 +16,6 @@ ActionView::Base.send :include, SmileyHelpers
34
16
  copy_file "smilies.css", "#{Rails.root}/public/stylesheets/smilies.css"
35
17
  end
36
18
 
37
- create_file "config/initializers/smileys.rb", str
19
+ template "smileys.rb", "config/initializers/smileys.rb"
38
20
  end
39
21
  end
@@ -0,0 +1,43 @@
1
+ #This file loads simileys
2
+ module SmileyHelpers
3
+ def self.regex
4
+ return @regex if defined?(@regex)
5
+
6
+ before_and_after = "[.,;:!\\?\\(\\[\\{\\)\\]\\}\\-]|\\s"
7
+ @regex = Regexp.compile("(^|#{before_and_after})(" +
8
+ smilies.keys.map { |token| Regexp.escape(token) }.join("|") +
9
+ ")($|#{before_and_after})", Regexp::MULTILINE)
10
+ end
11
+
12
+ def self.smilies
13
+ return @smilies unless @smilies.nil?
14
+
15
+ @smilies = {}
16
+
17
+ YAML.load_file("#{Rails.root}/config/smilies.yml").each do |smiley_name, symbols|
18
+ symbols.each{|s| @smilies[s] = smiley_name }
19
+ end
20
+
21
+ @smilies
22
+ end
23
+
24
+ def self.replace_smilies(str, animate=false)
25
+ str = str.to_str
26
+ str = str.gsub(self.regex) do
27
+ if animate
28
+ %(#{$1}<span class="smilies animate#{self.smilies[$2]}" title="#{$2}">&nbsp;</span>#{$3})
29
+ else
30
+ %(#{$1}<span class="smilies #{self.smilies[$2]}" title="#{$2}">&nbsp;</span>#{$3})
31
+ end
32
+ end
33
+
34
+ str.respond_to?(:html_safe) ? str.html_safe : str
35
+ end
36
+
37
+ def replace_smilies(str, animate=false)
38
+ # Just call class method.
39
+ SmileyHelpers.replace_smilies(str, animate)
40
+ end
41
+ end
42
+
43
+ ActionView::Base.send :include, SmileyHelpers
metadata CHANGED
@@ -1,12 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: emoticons_helper
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 17
5
+ prerelease:
5
6
  segments:
6
7
  - 0
7
8
  - 2
8
- - 2
9
- version: 0.2.2
9
+ - 3
10
+ version: 0.2.3
10
11
  platform: ruby
11
12
  authors:
12
13
  - gravindra
@@ -14,59 +15,66 @@ autorequire:
14
15
  bindir: bin
15
16
  cert_chain: []
16
17
 
17
- date: 2013-04-27 00:00:00 +05:30
18
- default_executable:
18
+ date: 2013-08-31 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
- requirement: &id001 !ruby/object:Gem::Requirement
21
+ type: :development
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
23
+ none: false
22
24
  requirements:
23
25
  - - ">="
24
26
  - !ruby/object:Gem::Version
27
+ hash: 3
25
28
  segments:
26
29
  - 0
27
30
  version: "0"
31
+ requirement: *id001
28
32
  prerelease: false
29
- type: :development
30
- version_requirements: *id001
31
33
  name: shoulda
32
34
  - !ruby/object:Gem::Dependency
33
- requirement: &id002 !ruby/object:Gem::Requirement
35
+ type: :development
36
+ version_requirements: &id002 !ruby/object:Gem::Requirement
37
+ none: false
34
38
  requirements:
35
39
  - - ~>
36
40
  - !ruby/object:Gem::Version
41
+ hash: 31
37
42
  segments:
38
43
  - 3
39
44
  - 12
40
45
  version: "3.12"
46
+ requirement: *id002
41
47
  prerelease: false
42
- type: :development
43
- version_requirements: *id002
44
48
  name: rdoc
45
49
  - !ruby/object:Gem::Dependency
46
- requirement: &id003 !ruby/object:Gem::Requirement
50
+ type: :development
51
+ version_requirements: &id003 !ruby/object:Gem::Requirement
52
+ none: false
47
53
  requirements:
48
54
  - - ~>
49
55
  - !ruby/object:Gem::Version
56
+ hash: 63
50
57
  segments:
51
58
  - 1
52
59
  - 8
53
60
  - 4
54
61
  version: 1.8.4
62
+ requirement: *id003
55
63
  prerelease: false
56
- type: :development
57
- version_requirements: *id003
58
64
  name: jeweler
59
65
  - !ruby/object:Gem::Dependency
60
- requirement: &id004 !ruby/object:Gem::Requirement
66
+ type: :development
67
+ version_requirements: &id004 !ruby/object:Gem::Requirement
68
+ none: false
61
69
  requirements:
62
70
  - - ">="
63
71
  - !ruby/object:Gem::Version
72
+ hash: 3
64
73
  segments:
65
74
  - 0
66
75
  version: "0"
76
+ requirement: *id004
67
77
  prerelease: false
68
- type: :development
69
- version_requirements: *id004
70
78
  name: rcov
71
79
  description: Gives face to your text.
72
80
  email: ravighare26@gmail.com
@@ -88,6 +96,7 @@ files:
88
96
  - emoticons_helper.gemspec
89
97
  - lib/emoticons_helper.rb
90
98
  - lib/generators/smile_generator.rb
99
+ - lib/generators/templates/smileys.rb
91
100
  - lib/generators/templates/smilies.css
92
101
  - lib/generators/templates/smilies.yml
93
102
  - lib/generators/templates/smilies/angry.gif
@@ -108,7 +117,6 @@ files:
108
117
  - lib/generators/templates/smilies/yes.gif
109
118
  - test/helper.rb
110
119
  - test/test_emoticons_helper.rb
111
- has_rdoc: true
112
120
  homepage: http://github.com/gravindra/emoticons_helper
113
121
  licenses:
114
122
  - MIT
@@ -118,23 +126,27 @@ rdoc_options: []
118
126
  require_paths:
119
127
  - lib
120
128
  required_ruby_version: !ruby/object:Gem::Requirement
129
+ none: false
121
130
  requirements:
122
131
  - - ">="
123
132
  - !ruby/object:Gem::Version
133
+ hash: 3
124
134
  segments:
125
135
  - 0
126
136
  version: "0"
127
137
  required_rubygems_version: !ruby/object:Gem::Requirement
138
+ none: false
128
139
  requirements:
129
140
  - - ">="
130
141
  - !ruby/object:Gem::Version
142
+ hash: 3
131
143
  segments:
132
144
  - 0
133
145
  version: "0"
134
146
  requirements: []
135
147
 
136
148
  rubyforge_project:
137
- rubygems_version: 1.3.6
149
+ rubygems_version: 1.8.25
138
150
  signing_key:
139
151
  specification_version: 3
140
152
  summary: This Gem Rocks ...