Sha256: 4d5d29acbbe486b6d2759208c27782e4840f1236637642c33f22afc4beb8901c

Contents?: true

Size: 574 Bytes

Versions: 44

Compression:

Stored size: 574 Bytes

Contents

class String

  # Adds a newline character unless
  # this string is empty or already ends with a newline
  # See https://unix.stackexchange.com/a/18789
  def ensure_newline
    empty? || ends_with?("\n") ? self : self + "\n"
  end

  def friendlish
    I18n.transliterate(self).
      downcase.
      gsub(/[^0-9a-z ]/, '').
      squish.
      gsub(' ', '-')
  end

  def markdown_paragraphs
    split(/\n\s*\n/)
  end

  def normalize_whitespaces
    gsub(/([^[:ascii:]])/) { $1.blank? ? ' ' : $1 }
  end

  def file_extension
    File.extname(self).delete '.'
  end
end

Version data entries

44 entries across 44 versions & 2 rubygems

Version Path
mumuki-domain-7.4.1 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.4.0 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.3.2 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.3.1 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.2.3 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.3.0 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.2.2 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.2.1 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.2.0 lib/mumuki/domain/extensions/string.rb
mumuki-laboratory-7.1.0 vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-925adf85cca8/lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.1.0 lib/mumuki/domain/extensions/string.rb
mumuki-laboratory-7.0.12 vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-74da3d4af98c/lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.0.6 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.0.5 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.0.4 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.0.3 lib/mumuki/domain/extensions/string.rb
mumuki-laboratory-7.0.11 vendor/bundle/ruby/2.3.0/bundler/gems/mumuki-domain-f892f79c60f0/lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.0.2 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.0.1 lib/mumuki/domain/extensions/string.rb
mumuki-domain-7.0.0 lib/mumuki/domain/extensions/string.rb