b0VIM 8.0]48zdanok2~dan/dev/gems/unicode-emoji/lib/unicode/emoji.rb 3210#"! UtpQyR3adaQiW7b6  | D C i x 0 q 8  ECBOYe$VhgD8ia ] emoji_presentation + pack[TEXT_VARIATION_SELECTOR] pack_and_join[TEXT_PRESENTATION]+ "(?!" + join[emoji_modifier, pack[EMOJI_VARIATION_SELECTOR]] + ")" + pack[TEXT_VARIATION_SELECTOR] + "?", join[ text_presentation_sequence = \ "(?!" + emoji_component + ")" + emoji_presentation_sequence non_component_emoji_presentation_sequence = \ ] emoji_presentation + "(?!" + pack[TEXT_VARIATION_SELECTOR] + ")" + pack[EMOJI_VARIATION_SELECTOR] + "?", pack_and_join[TEXT_PRESENTATION] + pack[EMOJI_VARIATION_SELECTOR], join[ emoji_presentation_sequence = \ end picto_no_emoji = pack_and_join[EXTENDED_PICTOGRAPHIC_NO_EMOJI] picto = pack_and_join[EXTENDED_PICTOGRAPHIC] emoji_presentation = pack_and_join[EMOJI_PRESENTATION] emoji_component = pack_and_join[EMOJI_COMPONENT] emoji_modifier_base = pack_and_join[EMOJI_MODIFIER_BASES] emoji_modifier = pack_and_join[EMOJI_MODIFIERS] emoji_character = pack_and_join[EMOJI_CHAR] else picto_no_emoji = "\\p{Extended Pictographic}(?(ords){ join[*ords.map{ |ord| pack[ord] }] } join = -> (*strings){ "(?:" + strings.join("|") + ")" } pack = ->(ord){ Regexp.escape(Array(ord).pack("U*")) } ] "Smileys & People", LIST_REMOVED_KEYS = [ LIST = INDEX[:LIST].freeze.each_value(&:freeze) RECOMMENDED_ZWJ_SEQUENCES = INDEX[:ZWJ].freeze RECOMMENDED_SUBDIVISION_FLAGS = INDEX[:TAGS].freeze VALID_SUBDIVISIONS = INDEX[:SD].freeze VALID_REGION_FLAGS = INDEX[:FLAGS].freeze EMOJI_KEYCAPS = INDEX[:KEYCAPS].freeze EXTENDED_PICTOGRAPHIC_NO_EMOJI= INDEX[:PROPERTIES].select{ |ord, props| props.include?(:X) && !props.include?(:E) }.keys.freeze EXTENDED_PICTOGRAPHIC = INDEX[:PROPERTIES].select{ |ord, props| props.include?(:X) }.keys.freeze EMOJI_MODIFIERS = INDEX[:PROPERTIES].select{ |ord, props| props.include?(:M) }.keys.freeze EMOJI_MODIFIER_BASES = INDEX[:PROPERTIES].select{ |ord, props| props.include?(:B) }.keys.freeze EMOJI_COMPONENT = INDEX[:PROPERTIES].select{ |ord, props| props.include?(:C) }.keys.freeze TEXT_PRESENTATION = INDEX[:PROPERTIES].select{ |ord, props| props.include?(:E) && !props.include?(:P) }.keys.freeze EMOJI_PRESENTATION = INDEX[:PROPERTIES].select{ |ord, props| props.include?(:P) }.keys.freeze EMOJI_CHAR = INDEX[:PROPERTIES].select{ |ord, props| props.include?(:E) }.keys.freeze REGIONAL_INDICATORS = [*0x1F1E6..0x1F1FF] ZWJ = 0x200D EMOJI_KEYCAP_SUFFIX = 0x20E3 TAGS = [*0xE0020..0xE007E] CANCEL_TAG = 0xE007F EMOJI_TAG_BASE_FLAG = 0x1F3F4 TEXT_VARIATION_SELECTOR = 0xFE0E EMOJI_VARIATION_SELECTOR = 0xFE0F } X: "Extended_Pictographic", P: "Emoji_Presentation", C: "Emoji_Component", M: "Emoji_Modifier", B: "Emoji_Modifier_Base", E: "Emoji", PROPERTY_NAMES = { module Emojimodule Unicoderequire_relative "emoji/index"require_relative "emoji/constants"# frozen_string_literal: truead 3f@ }U, m ] \ > ' } r &     end end end private :get_codepoint_value class << self end end raise(ArgumentError, "Unicode::Emoji must be given a valid string") else ord if ord end end rescue ArgumentError ord = char.unpack("U*")[0] begin elsif char.encoding.name == "UTF-8" ord = char.ord if char.valid_encoding? ord = nil def self.get_codepoint_value(char) end LIST.dig(*[key, sub_key].compact) end $stderr.puts "Warning(unicode-emoji): The category of #{key} does not exist anymore" if LIST_REMOVED_KEYS.include?(key) return LIST unless key || sub_key def self.list(key = nil, sub_key = nil) end end # nothing else props.map{ |prop| PROPERTY_NAMES[prop] } if props props = INDEX[:PROPERTIES][ord] ord = get_codepoint_value(char) def self.properties(char) ) picto_no_emoji REGEX_PICTO_NO_EMOJI = Regexp.compile( ) picto REGEX_PICTO = Regexp.compile(