verse 0.4.0 → 0.5.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
2
  SHA1:
3
- metadata.gz: 91a9c0b0722656e5b2b160a14e68f9d228830120
4
- data.tar.gz: 9397441752523d44ac885b7e5ad4b0e8faffbead
3
+ metadata.gz: b480b85987f2de41f4570f5a0522d2acb3f7e78d
4
+ data.tar.gz: 030f669b31afcf4329a79d906d4bb630ee447ad3
5
5
  SHA512:
6
- metadata.gz: aa1fb93fb455d0d141616c0a0dd08886486331a92b5b165a3ec1852f228b89e8002fb078d9329b0c9325a758725004ebb14f74c5ba618145de9c29990b2b0519
7
- data.tar.gz: bf4deb4d61427c35aab5d4522b31003a49e1b93388e176fd19533dfe3177e618126beee94893de210b14f64b5c51555b707cb7b39b1d17dd168ead985af54c6d
6
+ metadata.gz: 1944945843174ee5c0e2c91c7698c1b1ef7ea06759c2a1cca1917740bbffc3a77dc828bcc547218c30a40a127bf64360e423563b11f379d9af65de5b93bbd8a3
7
+ data.tar.gz: 6e48975ef2b03f0aacbfddb9bb7c01da0a04c588ffb74aa2e3e8d569d9ec15bc7bc4b7ea2b9e627c675eebcc320d1a30a35831f69560f321ce30576a6fe66450
@@ -1,22 +1,24 @@
1
+ ---
1
2
  language: ruby
2
- bundler_args: --without yard benchmarks
3
+ sudo: false
4
+ cache: bundler
5
+ language: ruby
6
+ bundler_args: --without benchmarks
3
7
  script: "bundle exec rake ci"
4
8
  rvm:
5
- - 1.9.3
6
9
  - 2.0.0
7
10
  - 2.1.0
8
- - 2.2.0
11
+ - 2.2.5
12
+ - 2.3.1
13
+ - jruby-9.1.1.0
14
+ - jruby-head
9
15
  - ruby-head
10
16
  matrix:
11
- include:
12
- - rvm: jruby-19mode
13
- - rvm: jruby-20mode
14
- - rvm: jruby-21mode
15
- - rvm: jruby-head
16
- - rvm: rbx-2
17
17
  allow_failures:
18
- - rvm: ruby-head
19
18
  - rvm: jruby-head
19
+ - rvm: ruby-head
20
20
  fast_finish: true
21
21
  branches:
22
22
  only: master
23
+ notifications:
24
+ email: false
@@ -1,25 +1,59 @@
1
- 0.4.0 (Mar 28, 2015)
1
+ # Change log
2
2
 
3
+ ## [v0.5.0] - 2016-10-25
4
+
5
+ ### Added
6
+ * Add ParseError to Padder
7
+
8
+ ### Changed
9
+ * Change Sanitizer to module
10
+ * Replaces UnicodeUtils.display_width with Unicode::DisplayWidth.of by @MichaelBaker
11
+
12
+ ## [v0.4.0] - 2015-03-28
13
+
14
+ ### Added
3
15
  * Add Sanitizer#ansi? to check for ANSI codes
16
+
17
+ ### Changed
4
18
  * Change Alignment to work with ANSI codes
5
19
  * Change Truncation to work with ANSI codes
6
20
  * Change Wrapping to work with ANSI codes
7
21
  * Chnage Padding to work with ANSI codes
8
22
 
9
- 0.3.0 (Feb 28, 2015)
23
+ ## [v0.3.0] - 2015-02-28
10
24
 
25
+ ### Added
11
26
  * Add Sanitizer#replace for substitutiong linebreaks
12
27
  * Add Padder for parsing padding values
13
28
  * Add Padding for padding content around
29
+
30
+ ### Changed
14
31
  * Change Wrapping#wrap to preserve whitespace characters
15
32
 
16
- 0.2.1 (Feb 15, 2015)
33
+ ## [v0.2.1] - 2015-02-15
17
34
 
35
+ ### Fixed
18
36
  * Fix empty string alignment
19
37
  * Fix alignment to stop modifying original content
20
38
 
21
- 0.2.0 (Feb 15, 2015)
39
+ ## [v0.2.0] - 2015-02-15
22
40
 
41
+ ### Added
23
42
  * Add unicode support
43
+
44
+ ### Changed
24
45
  * Change wrap, truncate and align to work with unicode characters
46
+
47
+ ### Removed
25
48
  * Remove padding and indent from Verse::Wrapping
49
+
50
+ ## [v0.1.0] - 2015-02-07
51
+
52
+ * Inital implementation and release
53
+
54
+ [v0.5.0]: https://github.com/piotrmurach/verse/compare/v0.4.0...v0.5.0
55
+ [v0.4.0]: https://github.com/piotrmurach/verse/compare/v0.3.0...v0.4.0
56
+ [v0.3.0]: https://github.com/piotrmurach/verse/compare/v0.2.1...v0.3.0
57
+ [v0.2.1]: https://github.com/piotrmurach/verse/compare/v0.2.0...v0.2.1
58
+ [v0.2.0]: https://github.com/piotrmurach/verse/compare/v0.1.0...v0.2.0
59
+ [v0.1.0]: https://github.com/piotrmurach/verse/compare/v0.1.0
data/Gemfile CHANGED
@@ -3,13 +3,17 @@ source 'https://rubygems.org'
3
3
  gemspec
4
4
 
5
5
  group :development do
6
- gem 'rake', '~> 10.3.2'
7
- gem 'rspec', '~> 3.1.0'
6
+ gem 'rake', '~> 11.1.1'
7
+ gem 'rspec', '~> 3.5.0'
8
8
  gem 'yard', '~> 0.8.7'
9
9
  end
10
10
 
11
11
  group :metrics do
12
- gem 'coveralls', '~> 0.7.0'
13
- gem 'simplecov', '~> 0.8.2'
12
+ gem 'coveralls', '~> 0.8.2'
13
+ gem 'simplecov', '~> 0.10.0'
14
14
  gem 'yardstick', '~> 0.9.9'
15
15
  end
16
+
17
+ group :benchmarks do
18
+ gem 'benchmark-ips'
19
+ end
data/README.md CHANGED
@@ -1,15 +1,15 @@
1
1
  # Verse
2
- [![Gem Version](https://badge.fury.io/rb/verse.png)][gem]
3
- [![Build Status](https://secure.travis-ci.org/peter-murach/verse.png?branch=master)][travis]
4
- [![Code Climate](https://codeclimate.com/github/peter-murach/verse.png)][codeclimate]
5
- [![Coverage Status](https://coveralls.io/repos/peter-murach/verse/badge.png)][coverage]
6
- [![Inline docs](http://inch-ci.org/github/peter-murach/verse.png)][inchpages]
2
+ [![Gem Version](https://badge.fury.io/rb/verse.svg)][gem]
3
+ [![Build Status](https://secure.travis-ci.org/piotrmurach/verse.svg?branch=master)][travis]
4
+ [![Code Climate](https://codeclimate.com/github/piotrmurach/verse/badges/gpa.png)][codeclimate]
5
+ [![Coverage Status](https://coveralls.io/repos/piotrmurach/verse/badge.svg)][coverage]
6
+ [![Inline docs](http://inch-ci.org/github/piotrmurach/verse.svg)][inchpages]
7
7
 
8
8
  [gem]: http://badge.fury.io/rb/verse
9
- [travis]: http://travis-ci.org/peter-murach/verse
10
- [codeclimate]: https://codeclimate.com/github/peter-murach/verse
11
- [coverage]: https://coveralls.io/r/peter-murach/verse
12
- [inchpages]: http://inch-ci.org/github/peter-murach/verse
9
+ [travis]: http://travis-ci.org/piotrmurach/verse
10
+ [codeclimate]: https://codeclimate.com/github/piotrmurach/verse
11
+ [coverage]: https://coveralls.io/r/piotrmurach/verse
12
+ [inchpages]: http://inch-ci.org/github/piotrmurach/verse
13
13
 
14
14
  > Text transformations such as truncation, wrapping, aligning, indentation and grouping of words.
15
15
 
@@ -66,7 +66,7 @@ alignment = Verse::Alignment.new "for there is no folly of the beast\n" +
66
66
  Then using direction out of `:right`, `:left` or `:center` methods and passing width you can align the text:
67
67
 
68
68
  ```ruby
69
- alignemnt.align(40, :right) # =>
69
+ alignment.align(40, :right) # =>
70
70
  " for there is no folly of the beast\n" +
71
71
  " of the earth which\n" +
72
72
  " is not infinitely\n" +
@@ -245,7 +245,7 @@ Verse.wrap(text, wrap_at)
245
245
 
246
246
  ## Contributing
247
247
 
248
- 1. Fork it ( https://github.com/peter-murach/verse/fork )
248
+ 1. Fork it ( https://github.com/piotrmurach/verse/fork )
249
249
  2. Create your feature branch (`git checkout -b my-new-feature`)
250
250
  3. Commit your changes (`git commit -am 'Add some feature'`)
251
251
  4. Push to the branch (`git push origin my-new-feature`)
@@ -253,4 +253,4 @@ Verse.wrap(text, wrap_at)
253
253
 
254
254
  ## Copyright
255
255
 
256
- Copyright (c) 2015 Piotr Murach. See LICENSE for further details.
256
+ Copyright (c) 2015-2016 Piotr Murach. See LICENSE for further details.
@@ -0,0 +1,26 @@
1
+ require 'benchmark/ips'
2
+ require 'verse'
3
+
4
+ text = "Ignorance is the parent of fear."
5
+
6
+ Benchmark.ips do |x|
7
+ x.report('wrap') do
8
+ Verse::Wrapping.wrap(text, 10)
9
+ end
10
+
11
+ x.report('truncate') do
12
+ Verse::Truncation.truncate(text, 10)
13
+ end
14
+
15
+ x.compare!
16
+ end
17
+
18
+ # Warming up --------------------------------------
19
+ # wrap 178.000 i/100ms
20
+ # truncate 262.000 i/100ms
21
+ # Calculating -------------------------------------
22
+ # wrap 1.812k (± 1.9%) i/s - 9.078k in 5.010776s
23
+ # truncate 2.625k (± 1.9%) i/s - 13.362k in 5.092305s
24
+ # Comparison:
25
+ # truncate: 2624.9 i/s
26
+ # wrap: 1812.3 i/s - 1.45x slower
@@ -1,6 +1,6 @@
1
1
  # coding: utf-8
2
2
 
3
- require 'unicode_utils/display_width'
3
+ require 'unicode/display_width'
4
4
  require 'unicode_utils/each_grapheme'
5
5
 
6
6
  require 'verse/alignment'
@@ -14,7 +14,6 @@ require 'verse/version'
14
14
  module Verse
15
15
  SPACE = ' '.freeze
16
16
  NEWLINE = "\n".freeze
17
- TAB = "\n".freeze
18
17
  RESET = "\e[0m".freeze
19
18
  ANSI = "\033".freeze
20
19
 
@@ -3,7 +3,6 @@
3
3
  module Verse
4
4
  # A class responsible for text alignment
5
5
  class Alignment
6
-
7
6
  attr_reader :fill
8
7
 
9
8
  attr_reader :direction
@@ -13,7 +12,6 @@ module Verse
13
12
  # @api public
14
13
  def initialize(text, options = {})
15
14
  @text = text
16
- @sanitizer = Sanitizer.new
17
15
  @fill = options.fetch(:fill) { SPACE }
18
16
  @direction = options.fetch(:direction) { :left }
19
17
  end
@@ -82,6 +80,11 @@ module Verse
82
80
 
83
81
  protected
84
82
 
83
+ # The text to align
84
+ #
85
+ # @ api private
86
+ attr_reader :text
87
+
85
88
  # @api private
86
89
  def convert_to_method(direction)
87
90
  case direction.to_sym
@@ -89,7 +92,7 @@ module Verse
89
92
  when :right then :right_justify
90
93
  when :center then :center_justify
91
94
  else
92
- fail ArgumentError, "Unknown alignment `#{direction}`."
95
+ raise ArgumentError, "Unknown alignment `#{direction}`."
93
96
  end
94
97
  end
95
98
 
@@ -104,7 +107,7 @@ module Verse
104
107
 
105
108
  # @api private
106
109
  def left_justify(text, width, filler)
107
- width_diff = width - actual_width(text)
110
+ width_diff = width - display_width(text)
108
111
  if width_diff > 0
109
112
  text + filler * width_diff
110
113
  else
@@ -114,7 +117,7 @@ module Verse
114
117
 
115
118
  # @api private
116
119
  def right_justify(text, width, filler)
117
- width_diff = width - actual_width(text)
120
+ width_diff = width - display_width(text)
118
121
  if width_diff > 0
119
122
  filler * width_diff + text
120
123
  else
@@ -124,7 +127,7 @@ module Verse
124
127
 
125
128
  # @api private
126
129
  def center_justify(text, width, filler)
127
- text_width = actual_width(text)
130
+ text_width = display_width(text)
128
131
  width_diff = width - text_width
129
132
  if width_diff > 0
130
133
  right_count = (width_diff.to_f / 2).ceil
@@ -136,10 +139,8 @@ module Verse
136
139
  end
137
140
 
138
141
  # @api private
139
- def actual_width(text)
140
- UnicodeUtils.display_width(@sanitizer.sanitize(text))
142
+ def display_width(text)
143
+ Unicode::DisplayWidth.of(Sanitizer.sanitize(text))
141
144
  end
142
-
143
- attr_reader :text
144
145
  end # Alignment
145
146
  end # Verse
@@ -1,6 +1,8 @@
1
1
  # coding: utf-8
2
2
 
3
3
  module Verse
4
+ ParseError = Class.new(ArgumentError)
5
+
4
6
  # A class responsible for parsing padding value
5
7
  #
6
8
  # Used internally by {Verse::Padding}
@@ -55,7 +57,7 @@ module Verse
55
57
  elsif value.size == 4
56
58
  value
57
59
  else
58
- fail ArgumentError, 'Wrong :padding parameter, must be an array'
60
+ fail ParseError, 'Wrong :padding parameter, must be an array'
59
61
  end
60
62
  end
61
63
 
@@ -9,7 +9,6 @@ module Verse
9
9
  def initialize(text, options = {})
10
10
  @text = text
11
11
  @padding = Padder.parse(options[:padding])
12
- @sanitizer = Sanitizer.new
13
12
  end
14
13
 
15
14
  # Pad content out
@@ -89,7 +88,7 @@ module Verse
89
88
  end
90
89
 
91
90
  def display_width(string)
92
- UnicodeUtils.display_width(@sanitizer.sanitize(string))
91
+ Unicode::DisplayWidth.of(Sanitizer.sanitize(string))
93
92
  end
94
93
  end # Padding
95
94
  end # Verse
@@ -1,8 +1,8 @@
1
1
  # coding: utf-8
2
2
 
3
3
  module Verse
4
- class Sanitizer
5
- ANSI_MATCHER = /(\[)?\033(\[)?[;?\d]*[\dA-Za-z](\])?/.freeze
4
+ module Sanitizer
5
+ ANSI_MATCHER = /(\[)?\033(\[)?[;?\d]*[\dA-Za-z](\])?/
6
6
 
7
7
  LINE_BREAK = "(\r\n+|\r+|\n+|\t+)".freeze
8
8
 
@@ -16,6 +16,7 @@ module Verse
16
16
  def sanitize(text)
17
17
  text.gsub(ANSI_MATCHER, '')
18
18
  end
19
+ module_function :sanitize
19
20
 
20
21
  # Check if string is an ANSI code
21
22
  #
@@ -28,6 +29,7 @@ module Verse
28
29
  def ansi?(string)
29
30
  !!(string =~ /^(\[)?\033(\[)?[;?\d]*[\dA-Za-z]([\];])?$/)
30
31
  end
32
+ module_function :ansi?
31
33
 
32
34
  # Replace separator with whitespace
33
35
  #
@@ -43,9 +45,10 @@ module Verse
43
45
  #
44
46
  # @api public
45
47
  def replace(text, separator = LINE_BREAK)
46
- text.gsub(/([ ]+)#{separator}/, "\\1").
47
- gsub(/#{separator}(?<space>[ ]+)/, "\\k<space>").
48
- gsub(/#{separator}/, ' ')
48
+ text.gsub(/([ ]+)#{separator}/, "\\1")
49
+ .gsub(/#{separator}(?<space>[ ]+)/, "\\k<space>")
50
+ .gsub(/#{separator}/, ' ')
49
51
  end
52
+ module_function :replace
50
53
  end # Sanitizer
51
54
  end # Verse
@@ -5,7 +5,7 @@ module Verse
5
5
  class Truncation
6
6
  DEFAULT_TRAILING = '…'.freeze
7
7
 
8
- DEFAULT_LENGTH = 30.freeze
8
+ DEFAULT_LENGTH = 30
9
9
 
10
10
  attr_reader :separator
11
11
 
@@ -23,7 +23,6 @@ module Verse
23
23
  # @api public
24
24
  def initialize(text, options = {})
25
25
  @text = text.dup.freeze
26
- @sanitizer = Sanitizer.new
27
26
  @separator = options.fetch(:separator) { nil }
28
27
  @trailing = options.fetch(:trailing) { DEFAULT_TRAILING }
29
28
  end
@@ -63,7 +62,7 @@ module Verse
63
62
  trail = options.fetch(:trailing) { trailing }
64
63
  separation = options.fetch(:separator) { separator }
65
64
  width = display_width(text)
66
- sanitized_text = @sanitizer.sanitize(text)
65
+ sanitized_text = Sanitizer.sanitize(text)
67
66
 
68
67
  return text if width <= truncate_at
69
68
 
@@ -107,12 +106,12 @@ module Verse
107
106
 
108
107
  # @api private
109
108
  def to_chars(text)
110
- UnicodeUtils.each_grapheme(text).to_a
109
+ UnicodeUtils.each_grapheme(text)
111
110
  end
112
111
 
113
112
  # @api private
114
113
  def display_width(string)
115
- UnicodeUtils.display_width(@sanitizer.sanitize(string))
114
+ Unicode::DisplayWidth.of(Sanitizer.sanitize(string))
116
115
  end
117
116
  end # Truncation
118
117
  end # Verse
@@ -1,5 +1,5 @@
1
1
  # coding: utf-8
2
2
 
3
3
  module Verse
4
- VERSION = '0.4.0'
4
+ VERSION = '0.5.0'
5
5
  end # Verse
@@ -3,7 +3,7 @@
3
3
  module Verse
4
4
  # A class responsible for text wrapping
5
5
  class Wrapping
6
- DEFAULT_WIDTH = 80.freeze
6
+ DEFAULT_WIDTH = 80
7
7
 
8
8
  # Initialize a Wrapping
9
9
  #
@@ -15,9 +15,8 @@ module Verse
15
15
  #
16
16
  # @api public
17
17
  def initialize(text, options = {})
18
- @text = text
18
+ @text = text
19
19
  @line_width = options.fetch(:line_width) { DEFAULT_WIDTH }
20
- @sanitizer = Sanitizer.new
21
20
  end
22
21
 
23
22
  # Wrap a text into lines no longer than wrap_at
@@ -68,10 +67,10 @@ module Verse
68
67
  #
69
68
  # @api private
70
69
  def format_paragraph(paragraph, wrap_at, ansi_stack)
71
- cleared_para = @sanitizer.replace(paragraph)
70
+ cleared_para = Sanitizer.replace(paragraph)
72
71
  lines = []
73
72
  line = ''
74
- word = ''
73
+ word = ''
75
74
  word_length = 0
76
75
  line_length = 0
77
76
  char_length = 0 # visible char length
@@ -79,14 +78,14 @@ module Verse
79
78
  total_length = 0
80
79
  ansi = ''
81
80
  matched = nil
82
- UnicodeUtils.each_grapheme(cleared_para) do |char|
81
+ to_chars(cleared_para) do |char|
83
82
  if char == ANSI # found ansi
84
83
  ansi << char && next
85
84
  end
86
85
 
87
86
  if ansi.length > 0
88
87
  ansi << char
89
- if @sanitizer.ansi?(ansi) # we found ansi let's consume
88
+ if Sanitizer.ansi?(ansi) # we found ansi let's consume
90
89
  matched = ansi
91
90
  elsif matched
92
91
  ansi_stack << [matched[0...-1], line_length + word_length]
@@ -173,11 +172,20 @@ module Verse
173
172
  output
174
173
  end
175
174
 
175
+ # @api private
176
+ def to_chars(text, &block)
177
+ if block_given?
178
+ UnicodeUtils.each_grapheme(text, &block)
179
+ else
180
+ UnicodeUtils.each_grapheme(text)
181
+ end
182
+ end
183
+
176
184
  # Visible width of string
177
185
  #
178
186
  # @api private
179
187
  def display_width(string)
180
- UnicodeUtils.display_width(@sanitizer.sanitize(string))
188
+ Unicode::DisplayWidth.of(Sanitizer.sanitize(string))
181
189
  end
182
190
  end # Wrapping
183
191
  end # Verse
@@ -34,6 +34,6 @@ RSpec.describe Verse::Padder, '#parse' do
34
34
  it "fails to parse unknown value" do
35
35
  expect {
36
36
  padder.parse(:unknown)
37
- }.to raise_error
37
+ }.to raise_error(Verse::ParseError)
38
38
  end
39
39
  end
@@ -3,7 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  RSpec.describe Verse::Sanitizer, '.ansi?' do
6
- subject(:sanitizer) { described_class.new }
6
+ subject(:sanitizer) { described_class }
7
7
 
8
8
  it "checks if code is ansi" do
9
9
  expect(sanitizer.ansi?("\e[0;33m")).to eq(true)
@@ -3,7 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  RSpec.describe Verse::Sanitizer, '.replace' do
6
- subject(:sanitizer) { described_class.new }
6
+ subject(:sanitizer) { described_class }
7
7
 
8
8
  {
9
9
  " \n" => ' ',
@@ -3,7 +3,7 @@
3
3
  require 'spec_helper'
4
4
 
5
5
  RSpec.describe Verse::Sanitizer, '.sanitize' do
6
- subject(:sanitizer) { described_class.new }
6
+ subject(:sanitizer) { described_class }
7
7
 
8
8
  {
9
9
  "\e[20h" => '',
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = [""]
11
11
  spec.summary = %q{Text transformations such as truncation, wrapping, aligning, indentation and grouping of words.}
12
12
  spec.description = %q{Text transformations such as truncation, wrapping, aligning, indentation and grouping of words.}
13
- spec.homepage = "https://github.com/peter-murach/verse"
13
+ spec.homepage = "https://github.com/piotrmurach/verse"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files -z`.split("\x0")
@@ -18,7 +18,8 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(spec)/})
19
19
  spec.require_paths = ['lib']
20
20
 
21
- spec.add_dependency 'unicode_utils', '~> 1.4.0'
21
+ spec.add_dependency 'unicode_utils', '~> 1.4.0'
22
+ spec.add_dependency 'unicode-display_width','~> 1.1.0'
22
23
 
23
24
  spec.add_development_dependency 'bundler', '~> 1.5'
24
25
  end
metadata CHANGED
@@ -1,41 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: verse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Piotr Murach
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-28 00:00:00.000000000 Z
11
+ date: 2016-10-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: unicode_utils
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: 1.4.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
26
  version: 1.4.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: unicode-display_width
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 1.1.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 1.1.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
- - - ~>
45
+ - - "~>"
32
46
  - !ruby/object:Gem::Version
33
47
  version: '1.5'
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
- - - ~>
52
+ - - "~>"
39
53
  - !ruby/object:Gem::Version
40
54
  version: '1.5'
41
55
  description: Text transformations such as truncation, wrapping, aligning, indentation
@@ -46,15 +60,15 @@ executables: []
46
60
  extensions: []
47
61
  extra_rdoc_files: []
48
62
  files:
49
- - .gitignore
50
- - .rspec
51
- - .ruby-version
52
- - .travis.yml
63
+ - ".gitignore"
64
+ - ".rspec"
65
+ - ".travis.yml"
53
66
  - CHANGELOG.md
54
67
  - Gemfile
55
68
  - LICENSE.txt
56
69
  - README.md
57
70
  - Rakefile
71
+ - benchmarks/speed_profile.rb
58
72
  - lib/verse.rb
59
73
  - lib/verse/alignment.rb
60
74
  - lib/verse/padder.rb
@@ -84,7 +98,7 @@ files:
84
98
  - tasks/coverage.rake
85
99
  - tasks/spec.rake
86
100
  - verse.gemspec
87
- homepage: https://github.com/peter-murach/verse
101
+ homepage: https://github.com/piotrmurach/verse
88
102
  licenses:
89
103
  - MIT
90
104
  metadata: {}
@@ -94,17 +108,17 @@ require_paths:
94
108
  - lib
95
109
  required_ruby_version: !ruby/object:Gem::Requirement
96
110
  requirements:
97
- - - '>='
111
+ - - ">="
98
112
  - !ruby/object:Gem::Version
99
113
  version: '0'
100
114
  required_rubygems_version: !ruby/object:Gem::Requirement
101
115
  requirements:
102
- - - '>='
116
+ - - ">="
103
117
  - !ruby/object:Gem::Version
104
118
  version: '0'
105
119
  requirements: []
106
120
  rubyforge_project:
107
- rubygems_version: 2.0.3
121
+ rubygems_version: 2.5.1
108
122
  signing_key:
109
123
  specification_version: 4
110
124
  summary: Text transformations such as truncation, wrapping, aligning, indentation
@@ -1 +0,0 @@
1
- 2.0.0