Module: Ucode::Glyphs::RealFonts::Unicode17Blocks
- Defined in:
- lib/ucode/glyphs/real_fonts/unicode_17_blocks.rb
Constant Summary collapse
- ALL =
[ # Sidetic — U+10940..U+1095F, 26 assigned (verified via # Lentariso: covers U+10940..U+10959 exactly). Block.new(name: "Sidetic", first_cp: 0x10940, last_cp: 0x1095F, assigned_ranges: [0x10940..0x10959]), # Sharada Supplement — U+11B60..U+11B7F, 8 assigned. Block.new(name: "Sharada Supplement", first_cp: 0x11B60, last_cp: 0x11B7F, assigned_ranges: [0x11B60..0x11B67]), # Tolong Siki — U+11DB0..U+11DEF, 54 assigned (letters + # digits; ranges approximate). Block.new(name: "Tolong Siki", first_cp: 0x11DB0, last_cp: 0x11DEF, assigned_ranges: [0x11DB0..0x11DE5]), # Beria Erfe — U+16EA0..U+16EDF, 50 assigned across two runs # (U+16EB9-U+16EBA reserved — verified via Kedebideri). Block.new(name: "Beria Erfe", first_cp: 0x16EA0, last_cp: 0x16EDF, assigned_ranges: [0x16EA0..0x16EB8, 0x16EBB..0x16ED3]), # Tai Yo — full block range; published as 52 codepoints in # the UCD 17.0 block list. Block.new(name: "Tai Yo", first_cp: 0x1E6C0, last_cp: 0x1E6F3, assigned_ranges: [0x1E6C0..0x1E6F3]), # Symbols for Legacy Computing Supplement — 9 assigned # (approximate; U+1CC00..U+1CC08). Block.new(name: "Symbols for Legacy Computing Supplement", first_cp: 0x1CC00, last_cp: 0x1CCFF, assigned_ranges: [0x1CC00..0x1CC08]), # Supplemental Arrows-C — 9 assigned (U+1CF00..U+1CF08). Block.new(name: "Supplemental Arrows-C", first_cp: 0x1CF00, last_cp: 0x1CFCF, assigned_ranges: [0x1CF00..0x1CF08]), # Alchemical Symbols — 4 new in Unicode 17. Block.new(name: "Alchemical Symbols", first_cp: 0x1F740, last_cp: 0x1F77F, assigned_ranges: [0x1F740..0x1F743]), # Miscellaneous Symbols Supplement — published as 34 # assigned in Unicode 17; ranges approximate. Block.new(name: "Miscellaneous Symbols Supplement", first_cp: 0x1FA70, last_cp: 0x1FAFF, assigned_ranges: [0x1FA70..0x1FA91]), # Musical Symbols Supplement (Znamenny Notation additions) # — U+1D200..U+1D24F, additions in Unicode 17. Range # approximate. Block.new(name: "Musical Symbols Supplement", first_cp: 0x1D200, last_cp: 0x1D24F, assigned_ranges: [0x1D200..0x1D245]), # CJK Unified Ideographs Extension J — U+31350..U+323AF, # 4,293 assigned per UCD 17.0. Audit uses the published # block range; the assigned set may extend slightly past # U+323AF in some distributions. Block.new(name: "CJK Unified Ideographs Extension J", first_cp: 0x31350, last_cp: 0x323AF, assigned_ranges: [0x31350..0x323AF]), ].freeze
Class Method Summary collapse
Class Method Details
.each ⇒ Object
94 95 96 |
# File 'lib/ucode/glyphs/real_fonts/unicode_17_blocks.rb', line 94 def self.each(&) ALL.each(&) end |
.for_codepoint(codepoint) ⇒ Object
98 99 100 |
# File 'lib/ucode/glyphs/real_fonts/unicode_17_blocks.rb', line 98 def self.for_codepoint(codepoint) ALL.find { |b| codepoint >= b.first_cp && codepoint <= b.last_cp } end |