Class: String
- Inherits:
-
Object
- Object
- String
- Defined in:
- fastlane_core/lib/fastlane_core/ui/interface.rb,
fastlane_core/lib/fastlane_core/string_filters.rb,
fastlane_core/lib/fastlane_core/core_ext/string.rb,
spaceship/lib/spaceship/tunes/language_converter.rb,
fastlane_core/lib/fastlane_core/ui/disable_colors.rb
Helpers collapse
Instance Method Summary collapse
- #fastlane_class ⇒ Object
- #fastlane_module ⇒ Object
- #fastlane_underscore ⇒ Object
-
#middle_truncate(length = 20, options = {}) ⇒ Object
Base taken from: stackoverflow.com/a/12202205/1945875.
- #to_full_language ⇒ Object
- #to_itc_locale ⇒ Object
- #to_language_code ⇒ Object
-
#truncate(truncate_at, options = {}) ⇒ Object
Truncates a given
text
after a givenlength
iftext
is longer thanlength
:. -
#wordwrap(length = 80) ⇒ Object
Base taken from: www.ruby-forum.com/topic/57805.
Instance Method Details
#deprecated ⇒ Object
194 195 196 |
# File 'fastlane_core/lib/fastlane_core/ui/interface.rb', line 194 def deprecated self.bold.blue end |
#fastlane_class ⇒ Object
2 3 4 |
# File 'fastlane_core/lib/fastlane_core/core_ext/string.rb', line 2 def fastlane_class split('_').collect!(&:capitalize).join end |
#fastlane_module ⇒ Object
6 7 8 |
# File 'fastlane_core/lib/fastlane_core/core_ext/string.rb', line 6 def fastlane_module self == "pem" ? 'PEM' : self.fastlane_class end |
#fastlane_underscore ⇒ Object
10 11 12 13 14 15 16 |
# File 'fastlane_core/lib/fastlane_core/core_ext/string.rb', line 10 def fastlane_underscore self.gsub(/::/, '/'). gsub(/([A-Z]+)([A-Z][a-z])/, '\1_\2'). gsub(/([a-z\d])([A-Z])/, '\1_\2'). tr("-", "_"). downcase end |
#middle_truncate(length = 20, options = {}) ⇒ Object
Base taken from: stackoverflow.com/a/12202205/1945875
43 44 45 46 47 48 49 50 |
# File 'fastlane_core/lib/fastlane_core/string_filters.rb', line 43 def middle_truncate(length = 20, = {}) omission = [:omission] || '...' return self if self.length <= length + omission.length return self[0..length] if length < omission.length len = (length - omission.length) / 2 s_len = len - length % 2 self[0..s_len] + omission + self[self.length - len..self.length] end |
#to_full_language ⇒ Object
62 63 64 |
# File 'spaceship/lib/spaceship/tunes/language_converter.rb', line 62 def to_full_language Spaceship::Tunes::LanguageConverter.from_standard_to_itc(self) end |
#to_itc_locale ⇒ Object
58 59 60 |
# File 'spaceship/lib/spaceship/tunes/language_converter.rb', line 58 def to_itc_locale Spaceship::Tunes::LanguageConverter.from_standard_to_itc_locale(self) end |
#to_language_code ⇒ Object
54 55 56 |
# File 'spaceship/lib/spaceship/tunes/language_converter.rb', line 54 def to_language_code Spaceship::Tunes::LanguageConverter.from_itc_to_standard(self) end |
#truncate(truncate_at, options = {}) ⇒ Object
Truncates a given text
after a given length
if text
is longer than length
:
'Once upon a time in a world far far away'.truncate(27)
# => "Once upon a time in a wo..."
Pass a string or regexp :separator
to truncate text
at a natural break:
'Once upon a time in a world far far away'.truncate(27, separator: ' ')
# => "Once upon a time in a..."
'Once upon a time in a world far far away'.truncate(27, separator: /\s/)
# => "Once upon a time in a..."
The last characters will be replaced with the :omission
string (defaults to “…”) for a total length not exceeding length
:
'And they found that many people were sleeping better.'.truncate(25, omission: '... (continued)')
# => "And they f... (continued)"
20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'fastlane_core/lib/fastlane_core/string_filters.rb', line 20 def truncate(truncate_at, = {}) return dup unless length > truncate_at omission = [:omission] || '...' length_with_room_for_omission = truncate_at - omission.length stop = \ if [:separator] rindex([:separator], length_with_room_for_omission) || length_with_room_for_omission else length_with_room_for_omission end "#{self[0, stop]}#{omission}" end |
#wordwrap(length = 80) ⇒ Object
Base taken from: www.ruby-forum.com/topic/57805
36 37 38 39 40 |
# File 'fastlane_core/lib/fastlane_core/string_filters.rb', line 36 def wordwrap(length = 80) return [] if length == 0 self.gsub!(/(\S{#{length}})(?=\S)/, '\1 ') self.scan(/.{1,#{length}}(?:\s+|$)/) end |