1 #!/usr/bin/env ruby
2 require 'json'
3
4 #maketxt.rb myemoj.json > myemoji.txt
5
6 # Prints out a text file containing only the Emoji characters
7 # listed in the input JSON file.
8 # The purpose of this was to provide a list of characters to
9 # make a subset of a web font to display just these characters.
10 #
11 # (Also contains commented-out code to find ranges for specifying the
12 # unicode-range to use in the CSS @font-face rule.)
13 #
14 # For more, see
15 # https://ratfactor.com/cards/make-a-webfont-subset
16
17 fin = ARGV[0]
18
19 json = File.read(fin)
20 list = JSON.parse(json)
21
22 weelist = list.map do |e|
23 e['emoji']
24 end
25
26 #puts JSON.generate(weelist)
27
28 outstr = weelist.join('');
29
30 puts outstr
31
32 # BAD CODE ALERT!
33 # really low-effort and "low-resolution" range finding
34 #last = 0
35 #outstr.codepoints.sort.each do |c|
36 # if c - last > 500
37 # puts last.to_s(16)
38 # puts "#{c.to_s(16)}..."
39 # end
40 # last = c
41 #end
42 #puts last.to_s(16)