Module: Emoninja
- Defined in:
- lib/emoninja.rb,
lib/emoninja/data.rb,
lib/emoninja/i18n.rb,
lib/emoninja/grabber.rb,
lib/emoninja/version.rb,
lib/emoninja/porter_stemmer.rb
Defined Under Namespace
Modules: Data, Grabber, I18n, Stemmable
Constant Summary collapse
- STOPWORD_MIN_LENGTH =
3
- VERSION =
'0.2.42'.freeze
Class Method Summary collapse
- .emojify(text) ⇒ Object
- .emoninja(text) ⇒ Object (also: yay)
-
.аватар(text) ⇒ Object
rubocop:disable Style/MethodName rubocop:disable Style/OpMethod.
-
.аватарки(text) ⇒ Object
(also: йо)
NB this won’t work with cased words, since ‘Regexp` is currently failing to match it.
Class Method Details
.emojify(text) ⇒ Object
12 13 14 15 16 17 |
# File 'lib/emoninja.rb', line 12 def emojify text text.tap do |t| Data.vocabulary.each { |k, v| t.gsub!(/\b#{k}\b/i, v) } Data.argo.each { |k, v| t.gsub!(/\b#{k}\b/i, v.sample) if v.sample } end end |
.emoninja(text) ⇒ Object Also known as: yay
19 20 21 22 23 24 25 26 27 |
# File 'lib/emoninja.rb', line 19 def emoninja text emojify(text).gsub(/\w+/) do |m| case when Data.stopword?(m) then m when (result = Data.keywords(m.stem).sample) then result.glyph else m end end end |