mb_string 0.1.6 → 0.2.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
- SHA1:
3
- metadata.gz: 54eeb4c76a30b4ea9892d7b2661bc1f74018e4c2
4
- data.tar.gz: 4bc33eb128d929b65e46a7c8e814e8ba5a61d2ed
2
+ SHA256:
3
+ metadata.gz: 47cce4092b3225fcea802e097cefd8fc0743d47e0319d41c42eaf3a5cadc0a34
4
+ data.tar.gz: d12239318d9fa9b05aa047cb41dc70aac5aedd0fd005998dbcd9e0d0c0094a95
5
5
  SHA512:
6
- metadata.gz: f2257165ebfdab930310a57b65935ccf2b507efdf9545467356e175bdf6142b89275e9fc6e7823b7bbc4bdf00fde07b3a2ca827de74dcbab7c42cae10ceb5829
7
- data.tar.gz: fb66ded3fd3df193beb1f32233284683335375bc2c99bebc18c9609276f4055be657a2e35a3746d0886e6ad3febe264bbf4dd4b47c7bb32f8e214cd70bd30e94
6
+ metadata.gz: 3049a22d7cf730cc3075554aeb4987de9f28358b8e1e0467b61572b2334ad8182239785b0c9f2ac499b26b72b96bec235507cfd99dcd3187c312a580dca26dcd
7
+ data.tar.gz: c634d67f811da040f7d788184aa3b6bfeb1a703578b15d774750fa946ff50230521cbcb5752fca380d658c6fad09a90c8ae675be694de66712bfbfe5795ec7a3
@@ -0,0 +1,8 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: bundler
4
+ directory: "/"
5
+ schedule:
6
+ interval: daily
7
+ time: "20:00"
8
+ open-pull-requests-limit: 10
data/.travis.yml CHANGED
@@ -1,6 +1,9 @@
1
+ env:
2
+ global:
3
+ - CC_TEST_REPORTER_ID=0a13163b19bf99c8f7d340de2cd238fa8dea6c1612dbba4105e22ceab6af0920
1
4
  language: ruby
2
5
  rvm:
3
- - 2.0.0
4
- - 2.1.7
5
- - 2.2.3
6
- before_install: gem install bundler -v 1.10.6
6
+ - 2.6.8
7
+ - 2.7.4
8
+ - 3.0.2
9
+ # before_install: gem install bundler -v 1.10.6
data/CHANGELOG.md CHANGED
@@ -1,4 +1,16 @@
1
- ## 0.1.5 (Thu Apr 1 2016)
1
+ ## 0.2.0 Sun Aug 8)
2
+ * Update gems (unicode-display_with) [75f4033]
3
+
4
+ ## 0.1.9 Sun Dec 15)
5
+ * Update gems [3966c1a]
6
+
7
+ ## 0.1.8 (Mon Jul 17 2016)
8
+ * Update gems [16a55fe]
9
+
10
+ ## 0.1.7 (Thu Apr 1 2016)
11
+ * Update gems [fe2a3a2]
12
+
13
+ ## 0.1.6 (Thu Apr 1 2016)
2
14
  * Update gem [df4c549]
3
15
 
4
16
  ## 0.1.5 (Thu Mar 10 2016)
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source 'https://rubygems.org'
1
+ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in mb_string.gemspec
4
4
  gemspec
data/README.md CHANGED
@@ -1,7 +1,6 @@
1
- [![Build Status](http://img.shields.io/travis/rochefort/mb_string.svg?style=flat)](http://travis-ci.org/rochefort/mb_string)
2
- [![Dependency Status](http://img.shields.io/gemnasium/rochefort/mb_string.svg?style=flat)](https://gemnasium.com/rochefort/mb_string)
1
+ [![Build Status](https://travis-ci.com/rochefort/mb_string.svg?branch=master)](https://travis-ci.com/rochefort/mb_string)
3
2
  [![Coverage Status](http://img.shields.io/coveralls/rochefort/mb_string.svg?style=flat)](https://coveralls.io/r/rochefort/mb_string)
4
- [![Code Climate](http://img.shields.io/codeclimate/github/rochefort/mb_string.svg?style=flat)](https://codeclimate.com/github/rochefort/mb_string)
3
+ [![Maintainability](https://api.codeclimate.com/v1/badges/07f73faf046781ff16fb/maintainability)](https://codeclimate.com/github/rochefort/mb_string/maintainability)
5
4
  [![Gem Version](http://img.shields.io/gem/v/mb_string.svg?style=flat)](http://badge.fury.io/rb/mb_string)
6
5
 
7
6
 
data/Rakefile CHANGED
@@ -1,5 +1,5 @@
1
- require 'bundler/gem_tasks'
2
- require 'rspec/core/rake_task'
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
3
 
4
4
  RSpec::Core::RakeTask.new(:spec)
5
5
 
data/bin/console CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require 'bundler/setup'
4
- require 'mb_string'
3
+ require "bundler/setup"
4
+ require "mb_string"
5
5
 
6
6
  # You can add fixtures and/or initialization code here to make experimenting
7
7
  # with your gem easier. You can also use a different console, if you like.
@@ -10,5 +10,5 @@ require 'mb_string'
10
10
  # require "pry"
11
11
  # Pry.start
12
12
 
13
- require 'irb'
13
+ require "irb"
14
14
  IRB.start
data/lib/mb_string.rb CHANGED
@@ -1,5 +1,5 @@
1
- require 'mb_string/version'
1
+ require "mb_string/version"
2
2
 
3
3
  module MbString
4
- require 'mb_string/core_ext/string'
4
+ require "mb_string/core_ext/string"
5
5
  end
@@ -1,20 +1,21 @@
1
- require 'unicode/display_width'
1
+ require "unicode/display_width"
2
+ require "unicode/display_width/string_ext"
2
3
  class String
3
- def mb_ljust(width, pad_str = ' ')
4
+ def mb_ljust(width, pad_str = " ")
4
5
  return ljust(width, pad_str) if ascii_only? && pad_str.ascii_only?
5
6
  mb_execute(width) do |pad_size|
6
7
  self + mb_build_padding(pad_size, pad_str)
7
8
  end
8
9
  end
9
10
 
10
- def mb_rjust(width, pad_str = ' ')
11
+ def mb_rjust(width, pad_str = " ")
11
12
  return rjust(width, pad_str) if ascii_only? && pad_str.ascii_only?
12
13
  mb_execute(width) do |pad_size|
13
14
  mb_build_padding(pad_size, pad_str, is_append_right: false) + self
14
15
  end
15
16
  end
16
17
 
17
- def mb_center(width, pad_str = ' ')
18
+ def mb_center(width, pad_str = " ")
18
19
  return center(width, pad_str) if ascii_only? && pad_str.ascii_only?
19
20
  mb_execute(width) do |pad_size|
20
21
  left_pad_size = pad_size / 2
@@ -30,11 +31,11 @@ class String
30
31
  def mb_truncate(truncate_at, options = {})
31
32
  return dup unless display_width > truncate_at
32
33
 
33
- omission = options[:omission] || '...'
34
+ omission = options[:omission] || "..."
34
35
  length_with_room_for_omission = truncate_at - omission.display_width
35
36
 
36
37
  size = 0
37
- slice = ''
38
+ slice = ""
38
39
  each_char do |c|
39
40
  char_size = c.display_width
40
41
  if size + char_size > length_with_room_for_omission
@@ -49,39 +50,39 @@ class String
49
50
 
50
51
  private
51
52
 
52
- def mb_execute(width)
53
- pad_size = [width - display_width, 0].max
54
- return self if pad_size.zero?
55
- yield(pad_size)
56
- end
53
+ def mb_execute(width)
54
+ pad_size = [width - display_width, 0].max
55
+ return self if pad_size.zero?
56
+ yield(pad_size)
57
+ end
57
58
 
58
- def mb_build_padding(pad_size, pad_str, is_append_right: true)
59
- pad_display_width = pad_str.display_width
60
- pad_num, mod = pad_size.divmod(pad_display_width)
61
- padding = pad_str * pad_num
62
- if mod > 0
63
- padding = mb_tweak_reminder(pad_str, mod, padding)
64
- padding = append_reminder_space(padding, is_append_right) if pad_size > padding.display_width
59
+ def mb_build_padding(pad_size, pad_str, is_append_right: true)
60
+ pad_display_width = pad_str.display_width
61
+ pad_num, mod = pad_size.divmod(pad_display_width)
62
+ padding = pad_str * pad_num
63
+ if mod > 0
64
+ padding = mb_tweak_reminder(pad_str, mod, padding)
65
+ padding = append_reminder_space(padding, is_append_right) if pad_size > padding.display_width
66
+ end
67
+ padding
65
68
  end
66
- padding
67
- end
68
69
 
69
- def mb_tweak_reminder(pad_str, mod, padding)
70
- pad_str.each_char do |c|
71
- char_display_width = c.display_width
72
- if mod >= char_display_width
73
- padding << c
74
- mod -= char_display_width
70
+ def mb_tweak_reminder(pad_str, mod, padding)
71
+ pad_str.each_char do |c|
72
+ char_display_width = c.display_width
73
+ if mod >= char_display_width
74
+ padding << c
75
+ mod -= char_display_width
76
+ end
75
77
  end
78
+ padding
76
79
  end
77
- padding
78
- end
79
80
 
80
- def append_reminder_space(padding, is_append_right)
81
- if is_append_right
82
- padding + ' '
83
- else
84
- ' ' + padding
81
+ def append_reminder_space(padding, is_append_right)
82
+ if is_append_right
83
+ padding + " "
84
+ else
85
+ " " + padding
86
+ end
85
87
  end
86
- end
87
88
  end
@@ -1,3 +1,3 @@
1
1
  module MbString
2
- VERSION = '0.1.6'
2
+ VERSION = "0.2.0"
3
3
  end
data/mb_string.gemspec CHANGED
@@ -1,31 +1,30 @@
1
1
  # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
2
+ lib = File.expand_path("../lib", __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'mb_string/version'
4
+ require "mb_string/version"
5
5
 
6
6
  Gem::Specification.new do |spec|
7
- spec.name = 'mb_string'
7
+ spec.name = "mb_string"
8
8
  spec.version = MbString::VERSION
9
- spec.authors = ['rochefort']
10
- spec.email = ['terasawan@gmail.com']
9
+ spec.authors = ["rochefort"]
10
+ spec.email = ["terasawan@gmail.com"]
11
11
 
12
- spec.summary = 'You can use mb_ljust, mb_rjust, mb_center for multibyte strings.'
12
+ spec.summary = "You can use mb_ljust, mb_rjust, mb_center for multibyte strings."
13
13
  spec.description = spec.summary
14
- spec.homepage = 'https://github.com/rochefort/mb_string'
15
- spec.license = 'MIT'
14
+ spec.homepage = "https://github.com/rochefort/mb_string"
15
+ spec.license = "MIT"
16
16
 
17
17
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
- spec.bindir = 'exe'
18
+ spec.bindir = "exe"
19
19
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
- spec.require_paths = ['lib']
20
+ spec.require_paths = ["lib"]
21
21
 
22
- spec.add_dependency 'unicode-display_width', '~> 1.0.3'
22
+ spec.add_dependency "unicode-display_width", "~> 2.0"
23
23
 
24
- spec.add_development_dependency 'bundler', '~> 1.10'
25
- spec.add_development_dependency 'rake', '~> 11.1.2'
26
- spec.add_development_dependency 'rspec', '~> 3.4.0'
27
- spec.add_development_dependency 'simplecov', '~> 0.11.0'
24
+ spec.add_development_dependency "bundler"
25
+ spec.add_development_dependency "rake", "~> 13.0.0"
26
+ spec.add_development_dependency "rspec", "~> 3.10"
27
+ spec.add_development_dependency "simplecov", "~> 0.16.1"
28
28
 
29
- spec.add_development_dependency 'coveralls'
30
- spec.add_development_dependency 'codeclimate-test-reporter'
29
+ spec.add_development_dependency "coveralls"
31
30
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mb_string
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - rochefort
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-03-31 00:00:00.000000000 Z
11
+ date: 2021-08-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: unicode-display_width
@@ -16,70 +16,70 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.3
19
+ version: '2.0'
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.0.3
26
+ version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '1.10'
33
+ version: '0'
34
34
  type: :development
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.10'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 11.1.2
47
+ version: 13.0.0
48
48
  type: :development
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: 11.1.2
54
+ version: 13.0.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 3.4.0
61
+ version: '3.10'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 3.4.0
68
+ version: '3.10'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: simplecov
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 0.11.0
75
+ version: 0.16.1
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 0.11.0
82
+ version: 0.16.1
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: coveralls
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -94,20 +94,6 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: codeclimate-test-reporter
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
97
  description: You can use mb_ljust, mb_rjust, mb_center for multibyte strings.
112
98
  email:
113
99
  - terasawan@gmail.com
@@ -116,6 +102,7 @@ extensions: []
116
102
  extra_rdoc_files: []
117
103
  files:
118
104
  - ".coveralls.yml"
105
+ - ".github/dependabot.yml"
119
106
  - ".gitignore"
120
107
  - ".rspec"
121
108
  - ".travis.yml"
@@ -148,8 +135,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
148
135
  - !ruby/object:Gem::Version
149
136
  version: '0'
150
137
  requirements: []
151
- rubyforge_project:
152
- rubygems_version: 2.5.1
138
+ rubygems_version: 3.1.6
153
139
  signing_key:
154
140
  specification_version: 4
155
141
  summary: You can use mb_ljust, mb_rjust, mb_center for multibyte strings.