tenji 0.1.1 → 0.1.2

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: 4770ec47c4343e0400a6a4aac54ee7af575d0dcbf7f48c64bfd64d3142ea9031
4
- data.tar.gz: 193f45ad9b5028e2cbc0c62fe65174a26d4f86595844249f8563338847fc1691
3
+ metadata.gz: 161999f7b7d6959029d061aba088685e23910a4644896a8d48fa197a11c24967
4
+ data.tar.gz: c2de6e18ba98f6295be492ec5518873bae8a267ef927835c4754ae93bb274214
5
5
  SHA512:
6
- metadata.gz: e694f6400f352854de714508bbf23de83ec2138092bb25794ae2aefa286fb46cc5923c7b7e9fa944ab359aa44ad156bd854ad91b1f4262ec99d4604c059c9da1
7
- data.tar.gz: a656852022e43f2a3da8bcc254f877e9a4d3c3b900607f1b25d706f84db131a58b934760d10ec6d9e76a5415ca15b3b4bea36fd19bbaedb0988307341ff36f40
6
+ metadata.gz: '09d3343ebde62caea3de3032090200e625de9290a57e933e4b9f2a2cf891f7c5c3bafd8d5ff5ced7fd305bce60b6e36c5e1a9f97e68f0a9177ff6f5216e4e36a'
7
+ data.tar.gz: c8de17b807c167ec5b20cb047da47fd7e214a4d21c5364714c8611367613d0872a32e54e10c2a99f6e3c58ee98774b07b59dcdb719a242836845677ec172c523
data/.rubocop.yml CHANGED
@@ -1,5 +1,5 @@
1
1
  AllCops:
2
- TargetRubyVersion: 3.1
2
+ TargetRubyVersion: 3.4.4
3
3
 
4
4
  Style/StringLiteralsInInterpolation:
5
5
  EnforcedStyle: double_quotes
@@ -20,22 +20,6 @@ Metrics/MethodLength:
20
20
  Max: 20
21
21
  Exclude:
22
22
  - spec/**/*
23
- ExcludedMethods:
24
- - convert_to_tenji
25
-
26
- Metrics/AbcSize:
27
- ExcludedMethods:
28
- - convert_to_tenji
29
- - braille_mirror
30
-
31
- Metrics/CyclomaticComplexity:
32
- ExcludedMethods:
33
- - convert_to_tenji
34
- - braille_mirror
35
-
36
- Metrics/PerceivedComplexity:
37
- ExcludedMethods:
38
- - convert_to_tenji
39
23
 
40
24
  Metrics/BlockLength:
41
25
  Exclude:
data/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.1.2] - 2025-12-18
4
+
5
+ ### Deprecated
6
+
7
+ - 最低保証 Ruby を 3.4.4 に変更
8
+
9
+ ### Fixed
10
+
11
+ - 一部の条件分岐が機能していなかったのを修正
12
+ - その他細かなバグを修正
13
+
3
14
  ## [0.1.1] - 2025-10-7
4
15
 
5
16
  ### Fixed
@@ -16,7 +16,7 @@ module Tenji
16
16
  # converter.convert_to_oumen("⠪⠴⠇⠗⠥")
17
17
  # # => "⠬⠺⠸⠦⠕"
18
18
  class Converter
19
- def convert_to_tenji(text)
19
+ def convert_to_tenji(text) # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/MethodLength, Metrics/PerceivedComplexity
20
20
  normalize_text = normalize(text)
21
21
  state = :kana
22
22
  result = []
@@ -58,6 +58,8 @@ module Tenji
58
58
  redo
59
59
  end
60
60
  if char.match?(/[a-zA-Z]/)
61
+ # アルファベットで書かれた文字の前に外字符を入れて、alphabet状態に移行
62
+ result << Tenji::Mapping::GAIJIFU
61
63
  state = :alphabet
62
64
  redo
63
65
  end
@@ -68,7 +70,9 @@ module Tenji
68
70
  state = :kana
69
71
  redo
70
72
  end
71
- if char == /[0-9]/
73
+ if char.match?(/[0-9]/)
74
+ # 数字がはじまる合図の数符を入れて、number状態に移行
75
+ result << Tenji::Mapping::SUFU
72
76
  state = :number
73
77
  redo
74
78
  end
@@ -113,7 +117,7 @@ module Tenji
113
117
  is_yoon = %w[キ シ チ ニ ヒ ミ リ ギ ジ ヂ ビ ピ].include?(char) && %w[ャ ュ ョ].include?(next_char)
114
118
  is_tokusyuon = %w[ァ ィ ゥ ェ ォ ュ ョ].include?(next_char) && Tenji::Mapping::TOKUSYUON[next_char].include?(char)
115
119
  if is_yoon || is_tokusyuon
116
- one_kana = char << next_char
120
+ one_kana = char + next_char
117
121
  Tenji::Mapping::KANA[one_kana]
118
122
  else
119
123
  Tenji::Mapping::KANA[char]
@@ -121,7 +125,7 @@ module Tenji
121
125
  end
122
126
 
123
127
  def convert_num_to_braille(char)
124
- Tenji::Mapping::NUNBER[char]
128
+ Tenji::Mapping::NUMBER[char]
125
129
  end
126
130
 
127
131
  def convert_alphabet_to_braille(char)
@@ -129,7 +133,7 @@ module Tenji
129
133
  Tenji::Mapping::ALPHABET[lowercase]
130
134
  end
131
135
 
132
- def braille_mirror(char)
136
+ def braille_mirror(char) # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity
133
137
  code_point = char.ord
134
138
  return char unless (0x2800..0x283F).cover?(code_point)
135
139
 
data/lib/tenji/mapping.rb CHANGED
@@ -68,7 +68,7 @@ module Tenji
68
68
  'ョ' => %w[フ ヴ]
69
69
  }.freeze
70
70
 
71
- NUNBER = {
71
+ NUMBER = {
72
72
  '1' => '⠁', '2' => '⠃', '3' => '⠉', '4' => '⠙', '5' => '⠑',
73
73
  '6' => '⠋', '7' => '⠛', '8' => '⠓', '9' => '⠊', '0' => '⠚',
74
74
 
data/lib/tenji/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Tenji
4
- VERSION = '0.1.1'
4
+ VERSION = '0.1.2'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tenji
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - ayu-0505
@@ -36,7 +36,7 @@ licenses:
36
36
  metadata:
37
37
  homepage_uri: https://github.com/ayu-0505/tenji
38
38
  source_code_uri: https://github.com/ayu-0505/tenji
39
- changelog_uri: https://github.com/ayu-0505/tenji/CHANGELOG.md
39
+ changelog_uri: https://github.com/ayu-0505/tenji/blob/main/CHANGELOG.md
40
40
  rdoc_options: []
41
41
  require_paths:
42
42
  - lib
@@ -44,7 +44,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 3.1.0
47
+ version: 3.4.4
48
48
  required_rubygems_version: !ruby/object:Gem::Requirement
49
49
  requirements:
50
50
  - - ">="