mb_string 0.1.6 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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.