uniscribe 1.2.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8096cc48e9f77948af932867820edd8d784d0801f80cd273b9e081187b69418a
4
- data.tar.gz: da3c055793633763120945db5f9bc23fcba804ca1093360099558a9ee6b97f66
3
+ metadata.gz: 21d5fda223dd1ff600506f07e4f3a319edc3a1ba44276894e4ce766eff8e9987
4
+ data.tar.gz: 2474d5b026b2275492a95429b33b8252975448102f8a8fc3180b5c04d9ee410a
5
5
  SHA512:
6
- metadata.gz: 3f6d97a20030ac99f93c26231bfc5080cb758b8f85dfffcbd66c21f932fe3b43d85b182a090641bc50de4874fe38d216e7fbc01838ac7951c117c8855217d03e
7
- data.tar.gz: 12f646a896aac0be56d8b2f15f03f6009f8a7bca9c276049aff0571b37d134656c1fcfc27d233202403dba16ae50d4c610acb17dc74d1fdc002039a7263e15d7
6
+ metadata.gz: 3d64904f2b1054353d8b4f1e24f810febb447076f0421cbc0d107b7e06917f0f6a32df240678933cba756739d296d2067da8ff18d93f016a84398573408ef8ab
7
+ data.tar.gz: 1b1178ef307ae60b1d31d1ca049d407cff5b48a508d974252eb67b89058e91031d6782f6d5fd54576bccf55979627f8a553b14a38f615b0336d77066ac6a4734
@@ -1,5 +1,28 @@
1
1
  ## CHANGELOG
2
2
 
3
+ ### 1.6.0
4
+
5
+ - Update Unicode data to 13.0 (except for grapheme detection, which depends on Ruby's version)
6
+ - Update Emoji data to 13.1
7
+
8
+ ### 1.5.1
9
+
10
+ - Move unicode-version from version.rb to uniscribe.rb to fix gemspec loading
11
+
12
+ ### 1.5.0
13
+
14
+ - Update Emoji data to 13.0
15
+ - Use unicode-version gem for Ruby / Unicode mapping
16
+ - Fix Object#=~ deprecation warning
17
+
18
+ ### 1.4.0
19
+
20
+ - Update Unicode (and Emoji) data to 12.1 (except for grapheme detection)
21
+
22
+ ### 1.3.0
23
+
24
+ - Update Unicode data to 12.0 (except for grapheme detection)
25
+
3
26
  ### 1.2.0
4
27
 
5
28
  - Update Unicode data to 11.0 (except for grapheme detection)
data/Gemfile CHANGED
@@ -1,6 +1,7 @@
1
- source 'https://rubygems.org'
1
+ source "https://rubygems.org"
2
2
 
3
3
  gemspec
4
4
 
5
- gem 'minitest'
6
- gem 'rake'
5
+ gem "minitest"
6
+ gem "rake"
7
+ gem "irb" unless RUBY_ENGINE == "jruby"
@@ -1,4 +1,4 @@
1
- Copyright (c) 2017-2018 Jan Lelis, mail@janlelis.de
1
+ Copyright (c) 2017-2020 Jan Lelis, https://janlelis.com
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # uniscribe | Describe the Unicode [![[version]](https://badge.fury.io/rb/uniscribe.svg)](http://badge.fury.io/rb/uniscribe) [![[travis]](https://travis-ci.org/janlelis/uniscribe.svg)](https://travis-ci.org/janlelis/uniscribe)
1
+ # uniscribe | Describe the Unicode [![[version]](https://badge.fury.io/rb/uniscribe.svg)](https://badge.fury.io/rb/uniscribe) [![[ci]](https://github.com/janlelis/uniscribe/workflows/Test/badge.svg)](https://github.com/janlelis/uniscribe/actions?query=workflow%3ATest)
2
2
 
3
3
  Describes Unicode characters with their name and shows compositions.
4
4
 
@@ -101,22 +101,18 @@ uniscribe "test strı̈ng"
101
101
 
102
102
  ## Notes
103
103
 
104
- The proper detection of compositions / graphemes / combined characters depends on your Ruby version:
104
+ Although the gem is generally up to date with Unicode 12.1, the proper detection of compositions / graphemes / combined characters [depends on your Ruby version](https://idiosyncratic-ruby.com/73-unicode-version-mapping.html):
105
105
 
106
- Ruby | Unicode Version
107
- -----|----------------
108
- 2.5 | 10.0.0
109
- 2.4 | 9.0.0
110
- 2.3 | 8.0.0
111
- 2.2 | 7.0.0
112
- 2.1 | 6.1.0
106
+ You can run `uniscribe -v` to check for the Unicode level of your uniscribe version.
113
107
 
114
108
  Also see
115
109
 
116
- - [unibits](https://github.com/janlelis/unibits) - visualizes Unicode encodings
117
- - [symbolify](https://github.com/janlelis/symbolify) - used for safely printing individual codepoints
118
- - [characteristics](https://github.com/janlelis/characteristics) - used for detecting blanks and similar
119
- - [unicopy](https://github.com/janlelis/unicopy) - copy codepoints to clipboard
120
- - [Unicode® Standard Annex #29: Unicode Text Segmentation](http://unicode.org/reports/tr29/)
110
+ - CLI: [unibits](https://github.com/janlelis/unibits) - visualizes Unicode encodings
111
+ - CLI: [unicopy](https://github.com/janlelis/unicopy) - copy codepoints to clipboard
112
+ - Website: [character.construction](https://character.construction) - lists notable codepoints
113
+ - Ruby Library: [symbolify](https://github.com/janlelis/symbolify) - used for safely printing individual codepoints
114
+ - Ruby Library: [characteristics](https://github.com/janlelis/characteristics) - used for detecting blanks and similar
115
+ - Unicode® Standard Annex #29: [Unicode Text Segmentation](https://unicode.org/reports/tr29/)
116
+ - Talk: [Ten Unicode Characters You Should Know About as a Programmer](https://www.youtube.com/watch?v=hlryzsdGtZo)
121
117
 
122
- Copyright (C) 2017-2018 Jan Lelis <http://janlelis.com>. Released under the MIT license.
118
+ Copyright (C) 2017-2020 Jan Lelis <https://janlelis.com>. Released under the MIT license.
data/Rakefile CHANGED
@@ -32,7 +32,11 @@ end
32
32
 
33
33
  desc "#{gemspec.name} | Spec"
34
34
  task :spec do
35
- sh "for file in spec/*_spec.rb; do ruby $file; done"
35
+ if RbConfig::CONFIG['host_os'] =~ /mswin|mingw/
36
+ sh "for %f in (spec/\*.rb) do ruby spec/%f"
37
+ else
38
+ sh "for file in spec/*.rb; do ruby $file; done"
39
+ end
36
40
  end
37
41
  task default: :spec
38
42
 
@@ -21,6 +21,7 @@ argv = Rationalist.parse(
21
21
  if argv[:version]
22
22
  puts "uniscribe #{Uniscribe::VERSION} by #{Paint["J-_-L", :bold]} <https://github.com/janlelis/uniscribe>"
23
23
  puts "Unicode version is #{Uniscribe::UNICODE_VERSION} (glyph detection #{Uniscribe::UNICODE_VERSION_GLYPH_DETECTION || "[not supported]"})"
24
+ puts "Emoji version is #{Uniscribe::EMOJI_VERSION}"
24
25
  exit(0)
25
26
  end
26
27
 
@@ -9,8 +9,12 @@ require "characteristics"
9
9
  require "paint"
10
10
  require "unicode/display_width"
11
11
  require "unicode/emoji"
12
+ require "unicode/version"
12
13
 
13
14
  module Uniscribe
15
+ UNICODE_VERSION_GLYPH_DETECTION = RUBY_ENGINE == "ruby" &&
16
+ Unicode::Version.unicode_version
17
+
14
18
  SUPPORTED_ENCODINGS = Encoding.name_list.grep(
15
19
  Regexp.union(
16
20
  /^UTF-8$/,
@@ -1,18 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Uniscribe
4
- VERSION = "1.2.0"
5
- UNICODE_VERSION = "11.0.0"
4
+ VERSION = "1.6.0"
6
5
 
7
- RUBY_UNICODE_VERSIONS = {
8
- 2.6 => "11.0.0",
9
- 2.5 => "10.0.0",
10
- 2.4 => "9.0.0",
11
- 2.3 => "8.0.0",
12
- 2.2 => "7.0.0",
13
- 2.1 => "6.1.0",
14
- }.freeze
15
-
16
- UNICODE_VERSION_GLYPH_DETECTION = RUBY_ENGINE == "ruby" && RUBY_UNICODE_VERSIONS[RUBY_VERSION.to_f]
6
+ UNICODE_VERSION = "13.0.0"
7
+ EMOJI_VERSION = "13.1"
17
8
  end
18
-
@@ -5,10 +5,10 @@ require File.dirname(__FILE__) + "/lib/uniscribe/version"
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = "uniscribe"
7
7
  gem.version = Uniscribe::VERSION
8
- gem.summary = "Describes Unicode characters."
9
- gem.description = "Describes Unicode characters with their name and shows compositions."
8
+ gem.summary = "Describes Unicode characters"
9
+ gem.description = "Explains Unicode characters/code points: Displays their name, category, and shows compositions"
10
10
  gem.authors = ["Jan Lelis"]
11
- gem.email = ["mail@janlelis.de"]
11
+ gem.email = ["hi@ruby.consulting"]
12
12
  gem.homepage = "https://github.com/janlelis/uniscribe"
13
13
  gem.license = "MIT"
14
14
 
@@ -17,13 +17,14 @@ Gem::Specification.new do |gem|
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
18
  gem.require_paths = ["lib"]
19
19
 
20
- gem.required_ruby_version = "~> 2.1"
21
- gem.add_dependency "unicode-name", "~> 1.6"
22
- gem.add_dependency "unicode-sequence_name", "~> 1.2"
23
- gem.add_dependency "unicode-display_width", "~> 1.4"
24
- gem.add_dependency "unicode-emoji", "~> 1.1"
25
- gem.add_dependency "symbolify", "~> 1.3"
26
- gem.add_dependency "characteristics", ">= 0.8", "< 2.0"
20
+ gem.required_ruby_version = ">= 2.1"
21
+ gem.add_dependency "unicode-name", "~> 1.9"
22
+ gem.add_dependency "unicode-sequence_name", "~> 1.9"
23
+ gem.add_dependency "unicode-display_width", "~> 2.0"
24
+ gem.add_dependency "unicode-emoji", "~> 2.7"
25
+ gem.add_dependency "unicode-version", "~> 1.1"
26
+ gem.add_dependency "symbolify", "~> 1.4"
27
+ gem.add_dependency "characteristics", "~> 1.3"
27
28
  gem.add_dependency "paint", ">= 0.9", "< 3.0"
28
- gem.add_dependency "rationalist", "~> 2.0"
29
+ gem.add_dependency "rationalist", "~> 2.0", ">= 2.0.1"
29
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uniscribe
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Lelis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-05 00:00:00.000000000 Z
11
+ date: 2020-12-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: unicode-name
@@ -16,44 +16,58 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.6'
19
+ version: '1.9'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.6'
26
+ version: '1.9'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: unicode-sequence_name
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.2'
33
+ version: '1.9'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.2'
40
+ version: '1.9'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: unicode-display_width
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '1.4'
47
+ version: '2.0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '1.4'
54
+ version: '2.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: unicode-emoji
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.7'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.7'
69
+ - !ruby/object:Gem::Dependency
70
+ name: unicode-version
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - "~>"
@@ -72,34 +86,28 @@ dependencies:
72
86
  requirements:
73
87
  - - "~>"
74
88
  - !ruby/object:Gem::Version
75
- version: '1.3'
89
+ version: '1.4'
76
90
  type: :runtime
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
94
  - - "~>"
81
95
  - !ruby/object:Gem::Version
82
- version: '1.3'
96
+ version: '1.4'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: characteristics
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0.8'
90
- - - "<"
101
+ - - "~>"
91
102
  - !ruby/object:Gem::Version
92
- version: '2.0'
103
+ version: '1.3'
93
104
  type: :runtime
94
105
  prerelease: false
95
106
  version_requirements: !ruby/object:Gem::Requirement
96
107
  requirements:
97
- - - ">="
98
- - !ruby/object:Gem::Version
99
- version: '0.8'
100
- - - "<"
108
+ - - "~>"
101
109
  - !ruby/object:Gem::Version
102
- version: '2.0'
110
+ version: '1.3'
103
111
  - !ruby/object:Gem::Dependency
104
112
  name: paint
105
113
  requirement: !ruby/object:Gem::Requirement
@@ -127,6 +135,9 @@ dependencies:
127
135
  - - "~>"
128
136
  - !ruby/object:Gem::Version
129
137
  version: '2.0'
138
+ - - ">="
139
+ - !ruby/object:Gem::Version
140
+ version: 2.0.1
130
141
  type: :runtime
131
142
  prerelease: false
132
143
  version_requirements: !ruby/object:Gem::Requirement
@@ -134,16 +145,19 @@ dependencies:
134
145
  - - "~>"
135
146
  - !ruby/object:Gem::Version
136
147
  version: '2.0'
137
- description: Describes Unicode characters with their name and shows compositions.
148
+ - - ">="
149
+ - !ruby/object:Gem::Version
150
+ version: 2.0.1
151
+ description: 'Explains Unicode characters/code points: Displays their name, category,
152
+ and shows compositions'
138
153
  email:
139
- - mail@janlelis.de
154
+ - hi@ruby.consulting
140
155
  executables:
141
156
  - uniscribe
142
157
  extensions: []
143
158
  extra_rdoc_files: []
144
159
  files:
145
160
  - ".gitignore"
146
- - ".travis.yml"
147
161
  - CHANGELOG.md
148
162
  - CODE_OF_CONDUCT.md
149
163
  - Gemfile
@@ -167,7 +181,7 @@ require_paths:
167
181
  - lib
168
182
  required_ruby_version: !ruby/object:Gem::Requirement
169
183
  requirements:
170
- - - "~>"
184
+ - - ">="
171
185
  - !ruby/object:Gem::Version
172
186
  version: '2.1'
173
187
  required_rubygems_version: !ruby/object:Gem::Requirement
@@ -176,10 +190,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
176
190
  - !ruby/object:Gem::Version
177
191
  version: '0'
178
192
  requirements: []
179
- rubyforge_project:
180
- rubygems_version: 2.7.6
193
+ rubygems_version: 3.2.3
181
194
  signing_key:
182
195
  specification_version: 4
183
- summary: Describes Unicode characters.
196
+ summary: Describes Unicode characters
184
197
  test_files:
185
198
  - spec/uniscribe_spec.rb
@@ -1,22 +0,0 @@
1
- sudo: false
2
- language: ruby
3
-
4
- rvm:
5
- - ruby-head
6
- - 2.5.0
7
- - 2.4.3
8
- - 2.3.6
9
- - 2.2
10
- - 2.1
11
- - 2.0
12
- - jruby-head
13
- - jruby-9.1.15.0
14
-
15
- matrix:
16
- allow_failures:
17
- - rvm: ruby-head
18
- - rvm: 2.1
19
- - rvm: 2.0
20
- - rvm: jruby-head
21
- - rvm: jruby-9.1.15.0
22
- # fast_finish: true