|
- class String
- PUNCTUATION_MARKS = [".", "!", "?"]
- def titleize
- gsub(/\w+/i) do |match|
- ret = match.downcase
- ret[0] = ret[0].upcase
- ret
- end
- end
-
- def titleize!
- replace titleize
- end
-
- def punctuated?
- PUNCTUATION_MARKS.include?(self[-1])
- end
-
- def unpunctuated?
- !punctuated?
- end
- end
-
- class Integer
- def to_dots
- "•" * self
- end
- end
-
- class Array
- def to_list(separator: nil)
- separator = "and" if separator.nil?
- if self.length == 0
- nil
- elsif self.length == 1
- self.first
- elsif self.length == 2
- "#{self.first} #{separator} #{self.last}"
- else
- ret = clone
- ret[ret.length - 1] = "#{separator} #{ret[ret.length - 1]}"
- ret.join(", ")
- end
- end
-
- def to_arcanum_with_dots
- "#{self[0].to_s.titleize} #{self[1].to_dots}"
- end
- end
|