├── .rspec ├── .travis.yml ├── lib ├── emot │ ├── version.rb │ ├── symbol_ext.rb │ ├── cli.rb │ └── map.rb └── emot.rb ├── bin └── emot ├── spec ├── spec_helper.rb ├── emot_spec.rb └── cli_spec.rb ├── Gemfile ├── Rakefile ├── .gitignore ├── emot.gemspec ├── LICENSE.txt └── README.md /.rspec: -------------------------------------------------------------------------------- 1 | --format documentation 2 | --color 3 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: ruby 2 | rvm: 3 | - 2.1.1 4 | -------------------------------------------------------------------------------- /lib/emot/version.rb: -------------------------------------------------------------------------------- 1 | module Emot 2 | VERSION = "0.0.4" 3 | end 4 | -------------------------------------------------------------------------------- /bin/emot: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env ruby 2 | 3 | require 'emot' 4 | 5 | Emot::CLI.start(ARGV) 6 | -------------------------------------------------------------------------------- /spec/spec_helper.rb: -------------------------------------------------------------------------------- 1 | $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__) 2 | require 'emot' 3 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | # Specify your gem's dependencies in emot.gemspec 4 | gemspec 5 | -------------------------------------------------------------------------------- /Rakefile: -------------------------------------------------------------------------------- 1 | require "bundler/gem_tasks" 2 | require "rspec/core/rake_task" 3 | 4 | RSpec::Core::RakeTask.new(:spec) 5 | 6 | task :default => :spec 7 | 8 | -------------------------------------------------------------------------------- /lib/emot/symbol_ext.rb: -------------------------------------------------------------------------------- 1 | module Emot 2 | module SymbolExt 3 | def ~ 4 | to_s.split 5 | .map { |word| Emot.icon(word) || word.sub(/^\./, '') } 6 | .join(" ") 7 | end 8 | end 9 | end 10 | 11 | Symbol.send(:include, Emot::SymbolExt) 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.gem 2 | *.rbc 3 | .bundle 4 | .config 5 | .yardoc 6 | Gemfile.lock 7 | InstalledFiles 8 | _yardoc 9 | coverage 10 | doc/ 11 | lib/bundler/man 12 | pkg 13 | rdoc 14 | spec/reports 15 | test/tmp 16 | test/version_tmp 17 | tmp 18 | *.bundle 19 | *.so 20 | *.o 21 | *.a 22 | mkmf.log 23 | -------------------------------------------------------------------------------- /lib/emot.rb: -------------------------------------------------------------------------------- 1 | require "emot/version" 2 | require "emot/map" 3 | require "emot/symbol_ext" 4 | require "emot/cli" 5 | 6 | module Emot 7 | def icon(name) 8 | build_icon( MAP[name.intern] ) 9 | end 10 | alias :emoji :icon 11 | 12 | def unicode(name) 13 | build_unicode( MAP[name.intern] ) 14 | end 15 | 16 | def list 17 | Hash[ 18 | MAP.map do |name, codes| 19 | [name, [build_icon(codes), build_unicode(codes)]] 20 | end.sort_by(&:last) 21 | ] 22 | end 23 | 24 | private 25 | def build_icon(codes) 26 | codes.pack("U*") if codes 27 | end 28 | 29 | def build_unicode(codes) 30 | codes.map { |code| "U+#{code.to_s(16).upcase}" }.join(" ") if codes 31 | end 32 | 33 | extend self 34 | end 35 | -------------------------------------------------------------------------------- /emot.gemspec: -------------------------------------------------------------------------------- 1 | # coding: utf-8 2 | lib = File.expand_path('../lib', __FILE__) 3 | $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) 4 | require 'emot/version' 5 | 6 | Gem::Specification.new do |spec| 7 | spec.name = "emot" 8 | spec.version = Emot::VERSION 9 | spec.authors = ["kyoendo"] 10 | spec.email = ["postagie@gmail.com"] 11 | spec.summary = %q{Yet another emoji handler.} 12 | spec.description = %q{Yet another emoji handler.} 13 | spec.homepage = "https://github.com/melborne/emot" 14 | spec.license = "MIT" 15 | 16 | spec.files = `git ls-files -z`.split("\x0") 17 | spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) } 18 | spec.test_files = spec.files.grep(%r{^(test|spec|features)/}) 19 | spec.require_paths = ["lib"] 20 | 21 | spec.required_ruby_version = '>=2.0.0' 22 | spec.add_dependency "thor" 23 | spec.add_development_dependency "bundler", "~> 1.6" 24 | spec.add_development_dependency "rake" 25 | spec.add_development_dependency "rspec" 26 | end 27 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 kyoendo 2 | 3 | MIT License 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining 6 | a copy of this software and associated documentation files (the 7 | "Software"), to deal in the Software without restriction, including 8 | without limitation the rights to use, copy, modify, merge, publish, 9 | distribute, sublicense, and/or sell copies of the Software, and to 10 | permit persons to whom the Software is furnished to do so, subject to 11 | the following conditions: 12 | 13 | The above copyright notice and this permission notice shall be 14 | included in all copies or substantial portions of the Software. 15 | 16 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 17 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 19 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 20 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 21 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 22 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | -------------------------------------------------------------------------------- /spec/emot_spec.rb: -------------------------------------------------------------------------------- 1 | require 'spec_helper' 2 | 3 | describe Emot do 4 | it 'has a version number' do 5 | expect(Emot::VERSION).not_to be nil 6 | end 7 | 8 | describe ".icon" do 9 | it "returns icon for given name" do 10 | expect(Emot.icon :apple).to eq "\u{1F34E}" 11 | expect(Emot.icon 'airplane').to eq "\u{2708}\u{FE0F}" 12 | expect(Emot.icon :hello_world).to be_nil 13 | end 14 | end 15 | 16 | describe ".unicode" do 17 | it "returns unicode in string" do 18 | expect(Emot.unicode 'apple').to eq "U+1F34E" 19 | expect(Emot.unicode :airplane).to eq "U+2708 U+FE0F" 20 | expect(Emot.unicode :hello_world).to be_nil 21 | end 22 | end 23 | 24 | describe ".list" do 25 | it "returns emoji list" do 26 | list = Emot.list 27 | expect(list[:"+1"]).to eq ["\u{1F44D}", "U+1F44D"] 28 | expect(list[:airplane]).to eq ["\u{2708}\u{FE0F}", "U+2708 U+FE0F"] 29 | expect(list.first).to eq [:hash, ["\u{23}\u{FE0F}\u{20E3}", "U+23 U+FE0F U+20E3"]] 30 | end 31 | end 32 | end 33 | 34 | describe Symbol do 35 | describe "#~" do 36 | it "returns emoji string" do 37 | expect(~:smile).to eq "\u{1F604}" 38 | expect(~:jack_o_lantern).to eq "\u{1F383}" 39 | end 40 | 41 | it "returns emoji mixed string" do 42 | expect(~:'dango is better than sunflower').to eq "\u{1F361} is better than \u{1F33B}" 43 | expect(~:'fish + hocho => sushi').to eq "\u{1F41F} + \u{1F52A} => \u{1F363}" 44 | end 45 | 46 | it "escape emojiaze with prefix '.'" do 47 | expect(~:'jp + .us + .fr').to eq "\u{1F1EF}\u{1F1F5} + us + fr" 48 | end 49 | end 50 | end 51 | -------------------------------------------------------------------------------- /spec/cli_spec.rb: -------------------------------------------------------------------------------- 1 | require 'spec_helper' 2 | 3 | describe Emot::CLI do 4 | before do 5 | $stdout, $stderr = StringIO.new, StringIO.new 6 | end 7 | 8 | after() do 9 | $stdout, $stderr = STDOUT, STDERR 10 | end 11 | 12 | describe "#show" do 13 | context "with emoji name" do 14 | it "outputs icon with its unicode" do 15 | Emot::CLI.start(['show', 'sunflower']) 16 | expect($stdout.string).to eq "\u{1F33B} \e[32msunflower\e[0m (U+1F33B)\n" 17 | end 18 | 19 | it "outputs no emoji message" do 20 | Emot::CLI.start(['show', 'hello']) 21 | expect($stdout.string).to eq "No emoji for 'hello'\n" 22 | end 23 | end 24 | 25 | context "without emoji name" do 26 | it "outputs all emoji with name and unicode" do 27 | Emot::CLI.start(['show']) 28 | expect($stdout.string).to match /hash.*sunflower.*1F618.*bathtub/m 29 | end 30 | 31 | it "outputs all emoji with name" do 32 | Emot::CLI.start(['show', '--only', 'name']) 33 | expect($stdout.string).to match /hash.*sunflower.*bathtub/m 34 | expect($stdout.string).not_to match /1F618/ 35 | end 36 | end 37 | end 38 | 39 | describe "#icons" do 40 | it "outputs all emoji icons" do 41 | Emot::CLI.start(['icons']) 42 | expect($stdout.string).to match /\u{1F33B}/ 43 | expect($stdout.string).not_to match /sunflower/ 44 | expect($stdout.string).not_to match /1F33B/ 45 | end 46 | end 47 | 48 | describe "#names" do 49 | it "outputs all available names for emojis" do 50 | Emot::CLI.start(['names']) 51 | expect($stdout.string).to match /hash.*sunflower.*bathtub/m 52 | expect($stdout.string).not_to match /\u{1F33B}/ 53 | expect($stdout.string).not_to match /1F33B/ 54 | end 55 | end 56 | end 57 | -------------------------------------------------------------------------------- /lib/emot/cli.rb: -------------------------------------------------------------------------------- 1 | require "thor" 2 | 3 | module Emot 4 | class CLI < Thor 5 | desc "show [NAME]", "show emoji icon and unicode for NAME" 6 | option :only, aliases:'-o', desc:"set 'name', 'code' or 'icon'" 7 | option :inline, aliases:'-i', default:false, type: :boolean 8 | def show(name=nil) 9 | case name 10 | when nil, 'all' 11 | list = 12 | Emot.list.map do |name, (icon, code)| 13 | case options[:only] 14 | when 'name' 15 | "%s %s" % [icon, c(name)] 16 | when 'code', 'unicode' 17 | "%s %s" % [icon, code] 18 | when 'emoji', 'icon' 19 | "%s" % [icon] 20 | when 'nameonly' 21 | "%s" % [c(name)] 22 | else 23 | "%s %s (%s)" % [icon ,c(name), code] 24 | end 25 | end 26 | puts (options[:inline] ? list.join(" ") : list) 27 | puts "\e[33m#{list.size}\e[0m #{c('emojis')}" 28 | else 29 | icon, code = Emot.list[name.intern] 30 | if icon 31 | print "%s %s (%s)\n" % [icon, c(name), code] 32 | else 33 | puts "No emoji for '#{name}'" 34 | end 35 | end 36 | end 37 | 38 | desc "icons", "show all emoji icons" 39 | option :inline, aliases:'-i', default:true, type: :boolean 40 | def icons 41 | CLI.start(['show', '--only', 'emoji', '--inline', options[:inline].to_s]) 42 | end 43 | 44 | desc "names", "show all available names for emoji" 45 | option :inline, aliases:'-i', default:false, type: :boolean 46 | def names 47 | CLI.start(['show', '--only', 'nameonly', '--inline', options[:inline].to_s]) 48 | end 49 | 50 | desc "version", "Show Emot version" 51 | def version 52 | puts "Emot #{Emot::VERSION} (c) 2014 kyoendo" 53 | end 54 | map "-v" => :version 55 | 56 | no_tasks do 57 | def c(str, color=32) 58 | "\e[#{color}m#{str}\e[0m" 59 | end 60 | end 61 | end 62 | end 63 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Emot 2 | 3 | Yet another emoji handler. It contains 870 emojis with its name and codepoint(but not contains emoji fonts or images). All names of emojis are from [Emoji cheat sheet for Campfire and GitHub](http://www.emoji-cheat-sheet.com/ "Emoji cheat sheet for Campfire and GitHub"). 4 | 5 | ## Installation 6 | 7 | Add this line to your application's Gemfile: 8 | 9 | gem 'emot' 10 | 11 | And then execute: 12 | 13 | $ bundle 14 | 15 | Or install it yourself as: 16 | 17 | $ gem install emot 18 | 19 | ## Usage 20 | 21 | With Mac Terminal, `emot` command works as follows; 22 | 23 | % emot show sunflower # display the emoji with its codepoint. 24 | 25 | % emot show # display all named emojis with its names and codepoints. 26 | 27 | % emot icons # display all emoji icons. 28 | 29 | % emot names # display available names for emojis. 30 | 31 | See `emot help` for more info. 32 | 33 | With Ruby, 34 | 35 | ```ruby 36 | require 'emot' 37 | 38 | Emot.icon(:sunflower) # => 🌻 39 | 40 | Emot.unicode(:sunflower) # => "U+1F33B" 41 | ``` 42 | 43 | Also, you can get Symbol#~ for emoji output. 44 | 45 | ```ruby 46 | require "emot" 47 | 48 | puts ~:smile 49 | puts ~:beginner 50 | puts ~:shit 51 | puts ~:jack_o_lantern 52 | puts ~:'+1' 53 | puts ~:"I broken_heart you!" 54 | puts ~:"The pencil is mightier than gun" 55 | puts ~:"dango is better than sunflower" 56 | puts ~:"疲れたら beer を飲もう!" 57 | puts ~:"fish + hocho => sushi" 58 | puts ~:".fish + .hocho => sushi" # escape emoji with prefix dot. 59 | 60 | # >> 😄 61 | # >> 🔰 62 | # >> 💩 63 | # >> 🎃 64 | # >> 👍 65 | # >> I 💔 you! 66 | # >> The 📝 is mightier than 🔫 67 | # >> 🍡 is better than 🌻 68 | # >> 疲れたら 🍺 を飲もう! 69 | # >> 🐟 + 🔪 => 🍣 70 | # >> fish + hocho => 🍣 71 | ``` 72 | 73 | ## Thank you 74 | 75 | [jugyo/named_emoji](https://github.com/jugyo/named_emoji "jugyo/named_emoji") inspired me to create emot. 76 | 77 | I built the mapping table of emoji name and unicode using [github/gemoji](https://github.com/github/gemoji "github/gemoji"). 78 | 79 | Thank you! 80 | 81 | ## Contributing 82 | 83 | 1. Fork it ( https://github.com/[my-github-username]/emot/fork ) 84 | 2. Create your feature branch (`git checkout -b my-new-feature`) 85 | 3. Commit your changes (`git commit -am 'Add some feature'`) 86 | 4. Push to the branch (`git push origin my-new-feature`) 87 | 5. Create a new Pull Request 88 | -------------------------------------------------------------------------------- /lib/emot/map.rb: -------------------------------------------------------------------------------- 1 | module Emot 2 | MAP = { 3 | :"+1" => [0x1F44D], 4 | :"-1" => [0x1F44E], 5 | :"100" => [0x1F4AF], 6 | :"-100" => [0x1F4AF], 7 | :"1234" => [0x1F522], 8 | :"-1234" => [0x1F522], 9 | :"8ball" => [0x1F3B1], 10 | :"a" => [0x1F170], 11 | :"ab" => [0x1F18E], 12 | :"abc" => [0x1F524], 13 | :"abcd" => [0x1F521], 14 | :"accept" => [0x1F251], 15 | :"aerial_tramway" => [0x1F6A1], 16 | :"airplane" => [0x2708, 0xFE0F], 17 | :"alarm_clock" => [0x23F0], 18 | :"alien" => [0x1F47D], 19 | :"ambulance" => [0x1F691], 20 | :"anchor" => [0x2693, 0xFE0F], 21 | :"angel" => [0x1F47C], 22 | :"anger" => [0x1F4A2], 23 | :"angry" => [0x1F620], 24 | :"anguished" => [0x1F627], 25 | :"ant" => [0x1F41C], 26 | :"apple" => [0x1F34E], 27 | :"aquarius" => [0x2652, 0xFE0F], 28 | :"aries" => [0x2648, 0xFE0F], 29 | :"arrow_backward" => [0x25C0, 0xFE0F], 30 | :"arrow_double_down" => [0x23EC], 31 | :"arrow_double_up" => [0x23EB], 32 | :"arrow_down" => [0x2B07, 0xFE0F], 33 | :"arrow_down_small" => [0x1F53D], 34 | :"arrow_forward" => [0x25B6, 0xFE0F], 35 | :"arrow_heading_down" => [0x2935, 0xFE0F], 36 | :"arrow_heading_up" => [0x2934, 0xFE0F], 37 | :"arrow_left" => [0x2B05, 0xFE0F], 38 | :"arrow_lower_left" => [0x2199, 0xFE0F], 39 | :"arrow_lower_right" => [0x2198, 0xFE0F], 40 | :"arrow_right" => [0x27A1, 0xFE0F], 41 | :"arrow_right_hook" => [0x21AA, 0xFE0F], 42 | :"arrow_up" => [0x2B06, 0xFE0F], 43 | :"arrow_up_down" => [0x2195, 0xFE0F], 44 | :"arrow_up_small" => [0x1F53C], 45 | :"arrow_upper_left" => [0x2196, 0xFE0F], 46 | :"arrow_upper_right" => [0x2197, 0xFE0F], 47 | :"arrows_clockwise" => [0x1F503], 48 | :"arrows_counterclockwise" => [0x1F504], 49 | :"art" => [0x1F3A8], 50 | :"articulated_lorry" => [0x1F69B], 51 | :"astonished" => [0x1F632], 52 | :"athletic_shoe" => [0x1F45F], 53 | :"atm" => [0x1F3E7], 54 | :"b" => [0x1F171], 55 | :"baby" => [0x1F476], 56 | :"baby_bottle" => [0x1F37C], 57 | :"baby_chick" => [0x1F424], 58 | :"baby_symbol" => [0x1F6BC], 59 | :"back" => [0x1F519], 60 | :"baggage_claim" => [0x1F6C4], 61 | :"balloon" => [0x1F388], 62 | :"ballot_box_with_check" => [0x2611, 0xFE0F], 63 | :"bamboo" => [0x1F38D], 64 | :"banana" => [0x1F34C], 65 | :"bangbang" => [0x203C, 0xFE0F], 66 | :"bank" => [0x1F3E6], 67 | :"bar_chart" => [0x1F4CA], 68 | :"barber" => [0x1F488], 69 | :"baseball" => [0x26BE, 0xFE0F], 70 | :"basketball" => [0x1F3C0], 71 | :"bath" => [0x1F6C0], 72 | :"bathtub" => [0x1F6C1], 73 | :"battery" => [0x1F50B], 74 | :"bear" => [0x1F43B], 75 | :"bee" => [0x1F41D], 76 | :"beer" => [0x1F37A], 77 | :"beers" => [0x1F37B], 78 | :"beetle" => [0x1F41E], 79 | :"beginner" => [0x1F530], 80 | :"bell" => [0x1F514], 81 | :"bento" => [0x1F371], 82 | :"bicyclist" => [0x1F6B4], 83 | :"bike" => [0x1F6B2], 84 | :"bikini" => [0x1F459], 85 | :"bird" => [0x1F426], 86 | :"birthday" => [0x1F382], 87 | :"black_circle" => [0x26AB, 0xFE0F], 88 | :"black_joker" => [0x1F0CF], 89 | :"black_large_square" => [0x2B1B, 0xFE0F], 90 | :"black_medium_small_square" => [0x25FE, 0xFE0F], 91 | :"black_medium_square" => [0x25FC, 0xFE0F], 92 | :"black_nib" => [0x2712, 0xFE0F], 93 | :"black_small_square" => [0x25AA, 0xFE0F], 94 | :"black_square_button" => [0x1F532], 95 | :"blossom" => [0x1F33C], 96 | :"blowfish" => [0x1F421], 97 | :"blue_book" => [0x1F4D8], 98 | :"blue_car" => [0x1F699], 99 | :"blue_heart" => [0x1F499], 100 | :"blush" => [0x1F60A], 101 | :"boar" => [0x1F417], 102 | :"boat" => [0x26F5, 0xFE0F], 103 | :"bomb" => [0x1F4A3], 104 | :"book" => [0x1F4D6], 105 | :"bookmark" => [0x1F516], 106 | :"bookmark_tabs" => [0x1F4D1], 107 | :"books" => [0x1F4DA], 108 | :"boom" => [0x1F4A5], 109 | :"boot" => [0x1F462], 110 | :"bouquet" => [0x1F490], 111 | :"bow" => [0x1F647], 112 | :"bowling" => [0x1F3B3], 113 | # "bowtie" => nil, 114 | :"boy" => [0x1F466], 115 | :"bread" => [0x1F35E], 116 | :"bride_with_veil" => [0x1F470], 117 | :"bridge_at_night" => [0x1F309], 118 | :"briefcase" => [0x1F4BC], 119 | :"broken_heart" => [0x1F494], 120 | :"bug" => [0x1F41B], 121 | :"bulb" => [0x1F4A1], 122 | :"bullettrain_front" => [0x1F685], 123 | :"bullettrain_side" => [0x1F684], 124 | :"bus" => [0x1F68C], 125 | :"busstop" => [0x1F68F], 126 | :"bust_in_silhouette" => [0x1F464], 127 | :"busts_in_silhouette" => [0x1F465], 128 | :"cactus" => [0x1F335], 129 | :"cake" => [0x1F370], 130 | :"calendar" => [0x1F4C6], 131 | :"calling" => [0x1F4F2], 132 | :"camel" => [0x1F42B], 133 | :"camera" => [0x1F4F7], 134 | :"cancer" => [0x264B, 0xFE0F], 135 | :"candy" => [0x1F36C], 136 | :"capital_abcd" => [0x1F520], 137 | :"capricorn" => [0x2651, 0xFE0F], 138 | :"car" => [0x1F697], 139 | :"card_index" => [0x1F4C7], 140 | :"carousel_horse" => [0x1F3A0], 141 | :"cat" => [0x1F431], 142 | :"cat2" => [0x1F408], 143 | :"cd" => [0x1F4BF], 144 | :"chart" => [0x1F4B9], 145 | :"chart_with_downwards_trend" => [0x1F4C9], 146 | :"chart_with_upwards_trend" => [0x1F4C8], 147 | :"checkered_flag" => [0x1F3C1], 148 | :"cherries" => [0x1F352], 149 | :"cherry_blossom" => [0x1F338], 150 | :"chestnut" => [0x1F330], 151 | :"chicken" => [0x1F414], 152 | :"children_crossing" => [0x1F6B8], 153 | :"chocolate_bar" => [0x1F36B], 154 | :"christmas_tree" => [0x1F384], 155 | :"church" => [0x26EA, 0xFE0F], 156 | :"cinema" => [0x1F3A6], 157 | :"circus_tent" => [0x1F3AA], 158 | :"city_sunrise" => [0x1F307], 159 | :"city_sunset" => [0x1F306], 160 | :"cl" => [0x1F191], 161 | :"clap" => [0x1F44F], 162 | :"clapper" => [0x1F3AC], 163 | :"clipboard" => [0x1F4CB], 164 | :"clock1" => [0x1F550], 165 | :"clock10" => [0x1F559], 166 | :"clock1030" => [0x1F565], 167 | :"clock11" => [0x1F55A], 168 | :"clock1130" => [0x1F566], 169 | :"clock12" => [0x1F55B], 170 | :"clock1230" => [0x1F567], 171 | :"clock130" => [0x1F55C], 172 | :"clock2" => [0x1F551], 173 | :"clock230" => [0x1F55D], 174 | :"clock3" => [0x1F552], 175 | :"clock330" => [0x1F55E], 176 | :"clock4" => [0x1F553], 177 | :"clock430" => [0x1F55F], 178 | :"clock5" => [0x1F554], 179 | :"clock530" => [0x1F560], 180 | :"clock6" => [0x1F555], 181 | :"clock630" => [0x1F561], 182 | :"clock7" => [0x1F556], 183 | :"clock730" => [0x1F562], 184 | :"clock8" => [0x1F557], 185 | :"clock830" => [0x1F563], 186 | :"clock9" => [0x1F558], 187 | :"clock930" => [0x1F564], 188 | :"closed_book" => [0x1F4D5], 189 | :"closed_lock_with_key" => [0x1F510], 190 | :"closed_umbrella" => [0x1F302], 191 | :"cloud" => [0x2601, 0xFE0F], 192 | :"clubs" => [0x2663, 0xFE0F], 193 | :"cn" => [0x1F1E8, 0x1F1F3], 194 | :"cocktail" => [0x1F378], 195 | :"coffee" => [0x2615, 0xFE0F], 196 | :"cold_sweat" => [0x1F630], 197 | :"collision" => [0x1F4A5], 198 | :"computer" => [0x1F4BB], 199 | :"confetti_ball" => [0x1F38A], 200 | :"confounded" => [0x1F616], 201 | :"confused" => [0x1F615], 202 | :"congratulations" => [0x3297, 0xFE0F], 203 | :"construction" => [0x1F6A7], 204 | :"construction_worker" => [0x1F477], 205 | :"convenience_store" => [0x1F3EA], 206 | :"cookie" => [0x1F36A], 207 | :"cool" => [0x1F192], 208 | :"cop" => [0x1F46E], 209 | :"copyright" => [0xA9], 210 | :"corn" => [0x1F33D], 211 | :"couple" => [0x1F46B], 212 | :"couple_with_heart" => [0x1F491], 213 | :"couplekiss" => [0x1F48F], 214 | :"cow" => [0x1F42E], 215 | :"cow2" => [0x1F404], 216 | :"credit_card" => [0x1F4B3], 217 | :"crescent_moon" => [0x1F319], 218 | :"crocodile" => [0x1F40A], 219 | :"crossed_flags" => [0x1F38C], 220 | :"crown" => [0x1F451], 221 | :"cry" => [0x1F622], 222 | :"crying_cat_face" => [0x1F63F], 223 | :"crystal_ball" => [0x1F52E], 224 | :"cupid" => [0x1F498], 225 | :"curly_loop" => [0x27B0], 226 | :"currency_exchange" => [0x1F4B1], 227 | :"curry" => [0x1F35B], 228 | :"custard" => [0x1F36E], 229 | :"customs" => [0x1F6C3], 230 | :"cyclone" => [0x1F300], 231 | :"dancer" => [0x1F483], 232 | :"dancers" => [0x1F46F], 233 | :"dango" => [0x1F361], 234 | :"dart" => [0x1F3AF], 235 | :"dash" => [0x1F4A8], 236 | :"date" => [0x1F4C5], 237 | :"de" => [0x1F1E9, 0x1F1EA], 238 | :"deciduous_tree" => [0x1F333], 239 | :"department_store" => [0x1F3EC], 240 | :"diamond_shape_with_a_dot_inside" => [0x1F4A0], 241 | :"diamonds" => [0x2666, 0xFE0F], 242 | :"disappointed" => [0x1F61E], 243 | :"disappointed_relieved" => [0x1F625], 244 | :"dizzy" => [0x1F4AB], 245 | :"dizzy_face" => [0x1F635], 246 | :"do_not_litter" => [0x1F6AF], 247 | :"dog" => [0x1F436], 248 | :"dog2" => [0x1F415], 249 | :"dollar" => [0x1F4B5], 250 | :"dolls" => [0x1F38E], 251 | :"dolphin" => [0x1F42C], 252 | :"door" => [0x1F6AA], 253 | :"doughnut" => [0x1F369], 254 | :"dragon" => [0x1F409], 255 | :"dragon_face" => [0x1F432], 256 | :"dress" => [0x1F457], 257 | :"dromedary_camel" => [0x1F42A], 258 | :"droplet" => [0x1F4A7], 259 | :"dvd" => [0x1F4C0], 260 | :"e-mail" => [0x1F4E7], 261 | :"ear" => [0x1F442], 262 | :"ear_of_rice" => [0x1F33E], 263 | :"earth_africa" => [0x1F30D], 264 | :"earth_americas" => [0x1F30E], 265 | :"earth_asia" => [0x1F30F], 266 | :"egg" => [0x1F373], 267 | :"eggplant" => [0x1F346], 268 | :"eight" => [0x38, 0xFE0F, 0x20E3], 269 | :"eight_pointed_black_star" => [0x2734, 0xFE0F], 270 | :"eight_spoked_asterisk" => [0x2733, 0xFE0F], 271 | :"electric_plug" => [0x1F50C], 272 | :"elephant" => [0x1F418], 273 | :"email" => [0x2709, 0xFE0F], 274 | :"end" => [0x1F51A], 275 | :"envelope" => [0x2709, 0xFE0F], 276 | :"envelope_with_arrow" => [0x1F4E9], 277 | :"es" => [0x1F1EA, 0x1F1F8], 278 | :"euro" => [0x1F4B6], 279 | :"european_castle" => [0x1F3F0], 280 | :"european_post_office" => [0x1F3E4], 281 | :"evergreen_tree" => [0x1F332], 282 | :"exclamation" => [0x2757, 0xFE0F], 283 | :"expressionless" => [0x1F611], 284 | :"eyeglasses" => [0x1F453], 285 | :"eyes" => [0x1F440], 286 | :"facepunch" => [0x1F44A], 287 | :"factory" => [0x1F3ED], 288 | :"fallen_leaf" => [0x1F342], 289 | :"family" => [0x1F46A], 290 | :"fast_forward" => [0x23E9], 291 | :"fax" => [0x1F4E0], 292 | :"fearful" => [0x1F628], 293 | # "feelsgood" => nil, 294 | :"feet" => [0x1F43E], 295 | :"ferris_wheel" => [0x1F3A1], 296 | :"file_folder" => [0x1F4C1], 297 | # "finnadie" => nil, 298 | :"fire" => [0x1F525], 299 | :"fire_engine" => [0x1F692], 300 | :"fireworks" => [0x1F386], 301 | :"first_quarter_moon" => [0x1F313], 302 | :"first_quarter_moon_with_face" => [0x1F31B], 303 | :"fish" => [0x1F41F], 304 | :"fish_cake" => [0x1F365], 305 | :"fishing_pole_and_fish" => [0x1F3A3], 306 | :"fist" => [0x270A], 307 | :"five" => [0x35, 0xFE0F, 0x20E3], 308 | :"flags" => [0x1F38F], 309 | :"flashlight" => [0x1F526], 310 | :"flipper" => [0x1F42C], 311 | :"floppy_disk" => [0x1F4BE], 312 | :"flower_playing_cards" => [0x1F3B4], 313 | :"flushed" => [0x1F633], 314 | :"foggy" => [0x1F301], 315 | :"football" => [0x1F3C8], 316 | :"footprints" => [0x1F463], 317 | :"fork_and_knife" => [0x1F374], 318 | :"fountain" => [0x26F2, 0xFE0F], 319 | :"four" => [0x34, 0xFE0F, 0x20E3], 320 | :"four_leaf_clover" => [0x1F340], 321 | :"fr" => [0x1F1EB, 0x1F1F7], 322 | :"free" => [0x1F193], 323 | :"fried_shrimp" => [0x1F364], 324 | :"fries" => [0x1F35F], 325 | :"frog" => [0x1F438], 326 | :"frowning" => [0x1F626], 327 | # "fu" => nil, 328 | :"fuelpump" => [0x26FD, 0xFE0F], 329 | :"full_moon" => [0x1F315], 330 | :"full_moon_with_face" => [0x1F31D], 331 | :"game_die" => [0x1F3B2], 332 | :"gb" => [0x1F1EC, 0x1F1E7], 333 | :"gem" => [0x1F48E], 334 | :"gemini" => [0x264A, 0xFE0F], 335 | :"ghost" => [0x1F47B], 336 | :"gift" => [0x1F381], 337 | :"gift_heart" => [0x1F49D], 338 | :"girl" => [0x1F467], 339 | :"globe_with_meridians" => [0x1F310], 340 | :"goat" => [0x1F410], 341 | # "goberserk" => nil, 342 | # "godmode" => nil, 343 | :"golf" => [0x26F3, 0xFE0F], 344 | :"grapes" => [0x1F347], 345 | :"green_apple" => [0x1F34F], 346 | :"green_book" => [0x1F4D7], 347 | :"green_heart" => [0x1F49A], 348 | :"grey_exclamation" => [0x2755], 349 | :"grey_question" => [0x2754], 350 | :"grimacing" => [0x1F62C], 351 | :"grin" => [0x1F601], 352 | :"grinning" => [0x1F600], 353 | :"guardsman" => [0x1F482], 354 | :"guitar" => [0x1F3B8], 355 | :"gun" => [0x1F52B], 356 | :"haircut" => [0x1F487], 357 | :"hamburger" => [0x1F354], 358 | :"hammer" => [0x1F528], 359 | :"hamster" => [0x1F439], 360 | :"hand" => [0x270B], 361 | :"handbag" => [0x1F45C], 362 | :"hankey" => [0x1F4A9], 363 | :"hash" => [0x23, 0xFE0F, 0x20E3], 364 | :"hatched_chick" => [0x1F425], 365 | :"hatching_chick" => [0x1F423], 366 | :"headphones" => [0x1F3A7], 367 | :"hear_no_evil" => [0x1F649], 368 | :"heart" => [0x2764, 0xFE0F], 369 | :"heart_decoration" => [0x1F49F], 370 | :"heart_eyes" => [0x1F60D], 371 | :"heart_eyes_cat" => [0x1F63B], 372 | :"heartbeat" => [0x1F493], 373 | :"heartpulse" => [0x1F497], 374 | :"hearts" => [0x2665, 0xFE0F], 375 | :"heavy_check_mark" => [0x2714, 0xFE0F], 376 | :"heavy_division_sign" => [0x2797], 377 | :"heavy_dollar_sign" => [0x1F4B2], 378 | :"heavy_exclamation_mark" => [0x2757, 0xFE0F], 379 | :"heavy_minus_sign" => [0x2796], 380 | :"heavy_multiplication_x" => [0x2716, 0xFE0F], 381 | :"heavy_plus_sign" => [0x2795], 382 | :"helicopter" => [0x1F681], 383 | :"herb" => [0x1F33F], 384 | :"hibiscus" => [0x1F33A], 385 | :"high_brightness" => [0x1F506], 386 | :"high_heel" => [0x1F460], 387 | :"hocho" => [0x1F52A], 388 | :"honey_pot" => [0x1F36F], 389 | :"honeybee" => [0x1F41D], 390 | :"horse" => [0x1F434], 391 | :"horse_racing" => [0x1F3C7], 392 | :"hospital" => [0x1F3E5], 393 | :"hotel" => [0x1F3E8], 394 | :"hotsprings" => [0x2668, 0xFE0F], 395 | :"hourglass" => [0x231B, 0xFE0F], 396 | :"hourglass_flowing_sand" => [0x23F3], 397 | :"house" => [0x1F3E0], 398 | :"house_with_garden" => [0x1F3E1], 399 | # "hurtrealbad" => nil, 400 | :"hushed" => [0x1F62F], 401 | :"ice_cream" => [0x1F368], 402 | :"icecream" => [0x1F366], 403 | :"id" => [0x1F194], 404 | :"ideograph_advantage" => [0x1F250], 405 | :"imp" => [0x1F47F], 406 | :"inbox_tray" => [0x1F4E5], 407 | :"incoming_envelope" => [0x1F4E8], 408 | :"information_desk_person" => [0x1F481], 409 | :"information_source" => [0x2139, 0xFE0F], 410 | :"innocent" => [0x1F607], 411 | :"interrobang" => [0x2049, 0xFE0F], 412 | :"iphone" => [0x1F4F1], 413 | :"it" => [0x1F1EE, 0x1F1F9], 414 | :"izakaya_lantern" => [0x1F3EE], 415 | :"jack_o_lantern" => [0x1F383], 416 | :"japan" => [0x1F5FE], 417 | :"japanese_castle" => [0x1F3EF], 418 | :"japanese_goblin" => [0x1F47A], 419 | :"japanese_ogre" => [0x1F479], 420 | :"jeans" => [0x1F456], 421 | :"joy" => [0x1F602], 422 | :"joy_cat" => [0x1F639], 423 | :"jp" => [0x1F1EF, 0x1F1F5], 424 | :"key" => [0x1F511], 425 | :"keycap_ten" => [0x1F51F], 426 | :"kimono" => [0x1F458], 427 | :"kiss" => [0x1F48B], 428 | :"kissing" => [0x1F617], 429 | :"kissing_cat" => [0x1F63D], 430 | :"kissing_closed_eyes" => [0x1F61A], 431 | :"kissing_heart" => [0x1F618], 432 | :"kissing_smiling_eyes" => [0x1F619], 433 | :"knife" => [0x1F52A], 434 | :"koala" => [0x1F428], 435 | :"koko" => [0x1F201], 436 | :"kr" => [0x1F1F0, 0x1F1F7], 437 | :"lantern" => [0x1F3EE], 438 | :"large_blue_circle" => [0x1F535], 439 | :"large_blue_diamond" => [0x1F537], 440 | :"large_orange_diamond" => [0x1F536], 441 | :"last_quarter_moon" => [0x1F317], 442 | :"last_quarter_moon_with_face" => [0x1F31C], 443 | :"laughing" => [0x1F606], 444 | :"leaves" => [0x1F343], 445 | :"ledger" => [0x1F4D2], 446 | :"left_luggage" => [0x1F6C5], 447 | :"left_right_arrow" => [0x2194, 0xFE0F], 448 | :"leftwards_arrow_with_hook" => [0x21A9, 0xFE0F], 449 | :"lemon" => [0x1F34B], 450 | :"leo" => [0x264C, 0xFE0F], 451 | :"leopard" => [0x1F406], 452 | :"libra" => [0x264E, 0xFE0F], 453 | :"light_rail" => [0x1F688], 454 | :"link" => [0x1F517], 455 | :"lips" => [0x1F444], 456 | :"lipstick" => [0x1F484], 457 | :"lock" => [0x1F512], 458 | :"lock_with_ink_pen" => [0x1F50F], 459 | :"lollipop" => [0x1F36D], 460 | :"loop" => [0x27BF], 461 | :"loud_sound" => [0x1F50A], 462 | :"loudspeaker" => [0x1F4E2], 463 | :"love_hotel" => [0x1F3E9], 464 | :"love_letter" => [0x1F48C], 465 | :"low_brightness" => [0x1F505], 466 | :"m" => [0x24C2, 0xFE0F], 467 | :"mag" => [0x1F50D], 468 | :"mag_right" => [0x1F50E], 469 | :"mahjong" => [0x1F004, 0xFE0F], 470 | :"mailbox" => [0x1F4EB], 471 | :"mailbox_closed" => [0x1F4EA], 472 | :"mailbox_with_mail" => [0x1F4EC], 473 | :"mailbox_with_no_mail" => [0x1F4ED], 474 | :"man" => [0x1F468], 475 | :"man_with_gua_pi_mao" => [0x1F472], 476 | :"man_with_turban" => [0x1F473], 477 | :"mans_shoe" => [0x1F45E], 478 | :"maple_leaf" => [0x1F341], 479 | :"mask" => [0x1F637], 480 | :"massage" => [0x1F486], 481 | :"meat_on_bone" => [0x1F356], 482 | :"mega" => [0x1F4E3], 483 | :"melon" => [0x1F348], 484 | :"memo" => [0x1F4DD], 485 | :"mens" => [0x1F6B9], 486 | # "metal" => nil, 487 | :"metro" => [0x1F687], 488 | :"microphone" => [0x1F3A4], 489 | :"microscope" => [0x1F52C], 490 | :"milky_way" => [0x1F30C], 491 | :"minibus" => [0x1F690], 492 | :"minidisc" => [0x1F4BD], 493 | :"mobile_phone_off" => [0x1F4F4], 494 | :"money_with_wings" => [0x1F4B8], 495 | :"moneybag" => [0x1F4B0], 496 | :"monkey" => [0x1F412], 497 | :"monkey_face" => [0x1F435], 498 | :"monorail" => [0x1F69D], 499 | :"moon" => [0x1F314], 500 | :"mortar_board" => [0x1F393], 501 | :"mount_fuji" => [0x1F5FB], 502 | :"mountain_bicyclist" => [0x1F6B5], 503 | :"mountain_cableway" => [0x1F6A0], 504 | :"mountain_railway" => [0x1F69E], 505 | :"mouse" => [0x1F42D], 506 | :"mouse2" => [0x1F401], 507 | :"movie_camera" => [0x1F3A5], 508 | :"moyai" => [0x1F5FF], 509 | :"muscle" => [0x1F4AA], 510 | :"mushroom" => [0x1F344], 511 | :"musical_keyboard" => [0x1F3B9], 512 | :"musical_note" => [0x1F3B5], 513 | :"musical_score" => [0x1F3BC], 514 | :"mute" => [0x1F507], 515 | :"nail_care" => [0x1F485], 516 | :"name_badge" => [0x1F4DB], 517 | # "neckbeard" => nil, 518 | :"necktie" => [0x1F454], 519 | :"negative_squared_cross_mark" => [0x274E], 520 | :"neutral_face" => [0x1F610], 521 | :"new" => [0x1F195], 522 | :"new_moon" => [0x1F311], 523 | :"new_moon_with_face" => [0x1F31A], 524 | :"newspaper" => [0x1F4F0], 525 | :"ng" => [0x1F196], 526 | :"night_with_stars" => [0x1F303], 527 | :"nine" => [0x39, 0xFE0F, 0x20E3], 528 | :"no_bell" => [0x1F515], 529 | :"no_bicycles" => [0x1F6B3], 530 | :"no_entry" => [0x26D4, 0xFE0F], 531 | :"no_entry_sign" => [0x1F6AB], 532 | :"no_good" => [0x1F645], 533 | :"no_mobile_phones" => [0x1F4F5], 534 | :"no_mouth" => [0x1F636], 535 | :"no_pedestrians" => [0x1F6B7], 536 | :"no_smoking" => [0x1F6AD], 537 | :"non-potable_water" => [0x1F6B1], 538 | :"nose" => [0x1F443], 539 | :"notebook" => [0x1F4D3], 540 | :"notebook_with_decorative_cover" => [0x1F4D4], 541 | :"notes" => [0x1F3B6], 542 | :"nut_and_bolt" => [0x1F529], 543 | :"o" => [0x2B55, 0xFE0F], 544 | :"o2" => [0x1F17E], 545 | :"ocean" => [0x1F30A], 546 | # "octocat" => nil, 547 | :"octopus" => [0x1F419], 548 | :"oden" => [0x1F362], 549 | :"office" => [0x1F3E2], 550 | :"ok" => [0x1F197], 551 | :"ok_hand" => [0x1F44C], 552 | :"ok_woman" => [0x1F646], 553 | :"older_man" => [0x1F474], 554 | :"older_woman" => [0x1F475], 555 | :"on" => [0x1F51B], 556 | :"oncoming_automobile" => [0x1F698], 557 | :"oncoming_bus" => [0x1F68D], 558 | :"oncoming_police_car" => [0x1F694], 559 | :"oncoming_taxi" => [0x1F696], 560 | :"one" => [0x31, 0xFE0F, 0x20E3], 561 | :"open_book" => [0x1F4D6], 562 | :"open_file_folder" => [0x1F4C2], 563 | :"open_hands" => [0x1F450], 564 | :"open_mouth" => [0x1F62E], 565 | :"ophiuchus" => [0x26CE], 566 | :"orange_book" => [0x1F4D9], 567 | :"outbox_tray" => [0x1F4E4], 568 | :"ox" => [0x1F402], 569 | :"package" => [0x1F4E6], 570 | :"page_facing_up" => [0x1F4C4], 571 | :"page_with_curl" => [0x1F4C3], 572 | :"pager" => [0x1F4DF], 573 | :"palm_tree" => [0x1F334], 574 | :"panda_face" => [0x1F43C], 575 | :"paperclip" => [0x1F4CE], 576 | :"parking" => [0x1F17F, 0xFE0F], 577 | :"part_alternation_mark" => [0x303D, 0xFE0F], 578 | :"partly_sunny" => [0x26C5, 0xFE0F], 579 | :"passport_control" => [0x1F6C2], 580 | :"paw_prints" => [0x1F43E], 581 | :"peach" => [0x1F351], 582 | :"pear" => [0x1F350], 583 | :"pencil" => [0x1F4DD], 584 | :"pencil2" => [0x270F, 0xFE0F], 585 | :"penguin" => [0x1F427], 586 | :"pensive" => [0x1F614], 587 | :"performing_arts" => [0x1F3AD], 588 | :"persevere" => [0x1F623], 589 | :"person_frowning" => [0x1F64D], 590 | :"person_with_blond_hair" => [0x1F471], 591 | :"person_with_pouting_face" => [0x1F64E], 592 | :"phone" => [0x260E, 0xFE0F], 593 | :"pig" => [0x1F437], 594 | :"pig2" => [0x1F416], 595 | :"pig_nose" => [0x1F43D], 596 | :"pill" => [0x1F48A], 597 | :"pineapple" => [0x1F34D], 598 | :"pisces" => [0x2653, 0xFE0F], 599 | :"pizza" => [0x1F355], 600 | :"point_down" => [0x1F447], 601 | :"point_left" => [0x1F448], 602 | :"point_right" => [0x1F449], 603 | :"point_up" => [0x261D, 0xFE0F], 604 | :"point_up_2" => [0x1F446], 605 | :"police_car" => [0x1F693], 606 | :"poodle" => [0x1F429], 607 | :"poop" => [0x1F4A9], 608 | :"post_office" => [0x1F3E3], 609 | :"postal_horn" => [0x1F4EF], 610 | :"postbox" => [0x1F4EE], 611 | :"potable_water" => [0x1F6B0], 612 | :"pouch" => [0x1F45D], 613 | :"poultry_leg" => [0x1F357], 614 | :"pound" => [0x1F4B7], 615 | :"pouting_cat" => [0x1F63E], 616 | :"pray" => [0x1F64F], 617 | :"princess" => [0x1F478], 618 | :"punch" => [0x1F44A], 619 | :"purple_heart" => [0x1F49C], 620 | :"purse" => [0x1F45B], 621 | :"pushpin" => [0x1F4CC], 622 | :"put_litter_in_its_place" => [0x1F6AE], 623 | :"question" => [0x2753], 624 | :"rabbit" => [0x1F430], 625 | :"rabbit2" => [0x1F407], 626 | :"racehorse" => [0x1F40E], 627 | :"radio" => [0x1F4FB], 628 | :"radio_button" => [0x1F518], 629 | :"rage" => [0x1F621], 630 | # "rage1" => nil, 631 | # "rage2" => nil, 632 | # "rage3" => nil, 633 | # "rage4" => nil, 634 | :"railway_car" => [0x1F683], 635 | :"rainbow" => [0x1F308], 636 | :"raised_hand" => [0x270B], 637 | :"raised_hands" => [0x1F64C], 638 | :"raising_hand" => [0x1F64B], 639 | :"ram" => [0x1F40F], 640 | :"ramen" => [0x1F35C], 641 | :"rat" => [0x1F400], 642 | :"recycle" => [0x267B, 0xFE0F], 643 | :"red_car" => [0x1F697], 644 | :"red_circle" => [0x1F534], 645 | :"registered" => [0xAE], 646 | :"relaxed" => [0x263A, 0xFE0F], 647 | :"relieved" => [0x1F60C], 648 | :"repeat" => [0x1F501], 649 | :"repeat_one" => [0x1F502], 650 | :"restroom" => [0x1F6BB], 651 | :"revolving_hearts" => [0x1F49E], 652 | :"rewind" => [0x23EA], 653 | :"ribbon" => [0x1F380], 654 | :"rice" => [0x1F35A], 655 | :"rice_ball" => [0x1F359], 656 | :"rice_cracker" => [0x1F358], 657 | :"rice_scene" => [0x1F391], 658 | :"ring" => [0x1F48D], 659 | :"rocket" => [0x1F680], 660 | :"roller_coaster" => [0x1F3A2], 661 | :"rooster" => [0x1F413], 662 | :"rose" => [0x1F339], 663 | :"rotating_light" => [0x1F6A8], 664 | :"round_pushpin" => [0x1F4CD], 665 | :"rowboat" => [0x1F6A3], 666 | :"ru" => [0x1F1F7, 0x1F1FA], 667 | :"rugby_football" => [0x1F3C9], 668 | :"runner" => [0x1F3C3], 669 | :"running" => [0x1F3C3], 670 | :"running_shirt_with_sash" => [0x1F3BD], 671 | :"sa" => [0x1F202], 672 | :"sagittarius" => [0x2650, 0xFE0F], 673 | :"sailboat" => [0x26F5, 0xFE0F], 674 | :"sake" => [0x1F376], 675 | :"sandal" => [0x1F461], 676 | :"santa" => [0x1F385], 677 | :"satellite" => [0x1F4E1], 678 | :"satisfied" => [0x1F606], 679 | :"saxophone" => [0x1F3B7], 680 | :"school" => [0x1F3EB], 681 | :"school_satchel" => [0x1F392], 682 | :"scissors" => [0x2702, 0xFE0F], 683 | :"scorpius" => [0x264F, 0xFE0F], 684 | :"scream" => [0x1F631], 685 | :"scream_cat" => [0x1F640], 686 | :"scroll" => [0x1F4DC], 687 | :"seat" => [0x1F4BA], 688 | :"secret" => [0x3299, 0xFE0F], 689 | :"see_no_evil" => [0x1F648], 690 | :"seedling" => [0x1F331], 691 | :"seven" => [0x37, 0xFE0F, 0x20E3], 692 | :"shaved_ice" => [0x1F367], 693 | :"sheep" => [0x1F411], 694 | :"shell" => [0x1F41A], 695 | :"ship" => [0x1F6A2], 696 | # "shipit" => nil, 697 | :"shirt" => [0x1F455], 698 | :"shit" => [0x1F4A9], 699 | :"shoe" => [0x1F45E], 700 | :"shower" => [0x1F6BF], 701 | :"signal_strength" => [0x1F4F6], 702 | :"six" => [0x36, 0xFE0F, 0x20E3], 703 | :"six_pointed_star" => [0x1F52F], 704 | :"ski" => [0x1F3BF], 705 | :"skull" => [0x1F480], 706 | :"sleeping" => [0x1F634], 707 | :"sleepy" => [0x1F62A], 708 | :"slot_machine" => [0x1F3B0], 709 | :"small_blue_diamond" => [0x1F539], 710 | :"small_orange_diamond" => [0x1F538], 711 | :"small_red_triangle" => [0x1F53A], 712 | :"small_red_triangle_down" => [0x1F53B], 713 | :"smile" => [0x1F604], 714 | :"smile_cat" => [0x1F638], 715 | :"smiley" => [0x1F603], 716 | :"smiley_cat" => [0x1F63A], 717 | :"smiling_imp" => [0x1F608], 718 | :"smirk" => [0x1F60F], 719 | :"smirk_cat" => [0x1F63C], 720 | :"smoking" => [0x1F6AC], 721 | :"snail" => [0x1F40C], 722 | :"snake" => [0x1F40D], 723 | :"snowboarder" => [0x1F3C2], 724 | :"snowflake" => [0x2744, 0xFE0F], 725 | :"snowman" => [0x26C4, 0xFE0F], 726 | :"sob" => [0x1F62D], 727 | :"soccer" => [0x26BD, 0xFE0F], 728 | :"soon" => [0x1F51C], 729 | :"sos" => [0x1F198], 730 | :"sound" => [0x1F509], 731 | :"space_invader" => [0x1F47E], 732 | :"spades" => [0x2660, 0xFE0F], 733 | :"spaghetti" => [0x1F35D], 734 | :"sparkle" => [0x2747, 0xFE0F], 735 | :"sparkler" => [0x1F387], 736 | :"sparkles" => [0x2728], 737 | :"sparkling_heart" => [0x1F496], 738 | :"speak_no_evil" => [0x1F64A], 739 | :"speaker" => [0x1F508], 740 | :"speech_balloon" => [0x1F4AC], 741 | :"speedboat" => [0x1F6A4], 742 | # "squirrel" => nil, 743 | :"star" => [0x2B50, 0xFE0F], 744 | :"star2" => [0x1F31F], 745 | :"stars" => [0x1F320], 746 | :"station" => [0x1F689], 747 | :"statue_of_liberty" => [0x1F5FD], 748 | :"steam_locomotive" => [0x1F682], 749 | :"stew" => [0x1F372], 750 | :"straight_ruler" => [0x1F4CF], 751 | :"strawberry" => [0x1F353], 752 | :"stuck_out_tongue" => [0x1F61B], 753 | :"stuck_out_tongue_closed_eyes" => [0x1F61D], 754 | :"stuck_out_tongue_winking_eye" => [0x1F61C], 755 | :"sun_with_face" => [0x1F31E], 756 | :"sunflower" => [0x1F33B], 757 | :"sunglasses" => [0x1F60E], 758 | :"sunny" => [0x2600, 0xFE0F], 759 | :"sunrise" => [0x1F305], 760 | :"sunrise_over_mountains" => [0x1F304], 761 | :"surfer" => [0x1F3C4], 762 | :"sushi" => [0x1F363], 763 | # "suspect" => nil, 764 | :"suspension_railway" => [0x1F69F], 765 | :"sweat" => [0x1F613], 766 | :"sweat_drops" => [0x1F4A6], 767 | :"sweat_smile" => [0x1F605], 768 | :"sweet_potato" => [0x1F360], 769 | :"swimmer" => [0x1F3CA], 770 | :"symbols" => [0x1F523], 771 | :"syringe" => [0x1F489], 772 | :"tada" => [0x1F389], 773 | :"tanabata_tree" => [0x1F38B], 774 | :"tangerine" => [0x1F34A], 775 | :"taurus" => [0x2649, 0xFE0F], 776 | :"taxi" => [0x1F695], 777 | :"tea" => [0x1F375], 778 | :"telephone" => [0x260E, 0xFE0F], 779 | :"telephone_receiver" => [0x1F4DE], 780 | :"telescope" => [0x1F52D], 781 | :"tennis" => [0x1F3BE], 782 | :"tent" => [0x26FA, 0xFE0F], 783 | :"thought_balloon" => [0x1F4AD], 784 | :"three" => [0x33, 0xFE0F, 0x20E3], 785 | :"thumbsdown" => [0x1F44E], 786 | :"thumbsup" => [0x1F44D], 787 | :"ticket" => [0x1F3AB], 788 | :"tiger" => [0x1F42F], 789 | :"tiger2" => [0x1F405], 790 | :"tired_face" => [0x1F62B], 791 | :"tm" => [0x2122], 792 | :"toilet" => [0x1F6BD], 793 | :"tokyo_tower" => [0x1F5FC], 794 | :"tomato" => [0x1F345], 795 | :"tongue" => [0x1F445], 796 | :"top" => [0x1F51D], 797 | :"tophat" => [0x1F3A9], 798 | :"tractor" => [0x1F69C], 799 | :"traffic_light" => [0x1F6A5], 800 | :"train" => [0x1F68B], 801 | :"train2" => [0x1F686], 802 | :"tram" => [0x1F68A], 803 | :"triangular_flag_on_post" => [0x1F6A9], 804 | :"triangular_ruler" => [0x1F4D0], 805 | :"trident" => [0x1F531], 806 | :"triumph" => [0x1F624], 807 | :"trolleybus" => [0x1F68E], 808 | # "trollface" => nil, 809 | :"trophy" => [0x1F3C6], 810 | :"tropical_drink" => [0x1F379], 811 | :"tropical_fish" => [0x1F420], 812 | :"truck" => [0x1F69A], 813 | :"trumpet" => [0x1F3BA], 814 | :"tshirt" => [0x1F455], 815 | :"tulip" => [0x1F337], 816 | :"turtle" => [0x1F422], 817 | :"tv" => [0x1F4FA], 818 | :"twisted_rightwards_arrows" => [0x1F500], 819 | :"two" => [0x32, 0xFE0F, 0x20E3], 820 | :"two_hearts" => [0x1F495], 821 | :"two_men_holding_hands" => [0x1F46C], 822 | :"two_women_holding_hands" => [0x1F46D], 823 | :"u5272" => [0x1F239], 824 | :"u5408" => [0x1F234], 825 | :"u55b6" => [0x1F23A], 826 | :"u6307" => [0x1F22F, 0xFE0F], 827 | :"u6708" => [0x1F237], 828 | :"u6709" => [0x1F236], 829 | :"u6e80" => [0x1F235], 830 | :"u7121" => [0x1F21A, 0xFE0F], 831 | :"u7533" => [0x1F238], 832 | :"u7981" => [0x1F232], 833 | :"u7a7a" => [0x1F233], 834 | :"uk" => [0x1F1EC, 0x1F1E7], 835 | :"umbrella" => [0x2614, 0xFE0F], 836 | :"unamused" => [0x1F612], 837 | :"underage" => [0x1F51E], 838 | :"unlock" => [0x1F513], 839 | :"up" => [0x1F199], 840 | :"us" => [0x1F1FA, 0x1F1F8], 841 | :"v" => [0x270C, 0xFE0F], 842 | :"vertical_traffic_light" => [0x1F6A6], 843 | :"vhs" => [0x1F4FC], 844 | :"vibration_mode" => [0x1F4F3], 845 | :"video_camera" => [0x1F4F9], 846 | :"video_game" => [0x1F3AE], 847 | :"violin" => [0x1F3BB], 848 | :"virgo" => [0x264D, 0xFE0F], 849 | :"volcano" => [0x1F30B], 850 | :"vs" => [0x1F19A], 851 | :"walking" => [0x1F6B6], 852 | :"waning_crescent_moon" => [0x1F318], 853 | :"waning_gibbous_moon" => [0x1F316], 854 | :"warning" => [0x26A0, 0xFE0F], 855 | :"watch" => [0x231A, 0xFE0F], 856 | :"water_buffalo" => [0x1F403], 857 | :"watermelon" => [0x1F349], 858 | :"wave" => [0x1F44B], 859 | :"wavy_dash" => [0x3030], 860 | :"waxing_crescent_moon" => [0x1F312], 861 | :"waxing_gibbous_moon" => [0x1F314], 862 | :"wc" => [0x1F6BE], 863 | :"weary" => [0x1F629], 864 | :"wedding" => [0x1F492], 865 | :"whale" => [0x1F433], 866 | :"whale2" => [0x1F40B], 867 | :"wheelchair" => [0x267F, 0xFE0F], 868 | :"white_check_mark" => [0x2705], 869 | :"white_circle" => [0x26AA, 0xFE0F], 870 | :"white_flower" => [0x1F4AE], 871 | :"white_large_square" => [0x2B1C, 0xFE0F], 872 | :"white_medium_small_square" => [0x25FD, 0xFE0F], 873 | :"white_medium_square" => [0x25FB, 0xFE0F], 874 | :"white_small_square" => [0x25AB, 0xFE0F], 875 | :"white_square_button" => [0x1F533], 876 | :"wind_chime" => [0x1F390], 877 | :"wine_glass" => [0x1F377], 878 | :"wink" => [0x1F609], 879 | :"wolf" => [0x1F43A], 880 | :"woman" => [0x1F469], 881 | :"womans_clothes" => [0x1F45A], 882 | :"womans_hat" => [0x1F452], 883 | :"womens" => [0x1F6BA], 884 | :"worried" => [0x1F61F], 885 | :"wrench" => [0x1F527], 886 | :"x" => [0x274C], 887 | :"yellow_heart" => [0x1F49B], 888 | :"yen" => [0x1F4B4], 889 | :"yum" => [0x1F60B], 890 | :"zap" => [0x26A1, 0xFE0F], 891 | :"zero" => [0x30, 0xFE0F, 0x20E3], 892 | :"zzz" => [0x1F4A4] 893 | }.freeze 894 | end 895 | --------------------------------------------------------------------------------