Module: Gemmy::Patches::StringPatch::InstanceMethods::ExpandTabs
- Defined in:
- lib/gemmy/patches/string_patch.rb
Instance Method Summary collapse
-
#expand_tabs(n = 8) ⇒ Object
turns tabs to spaces.
Instance Method Details
#expand_tabs(n = 8) ⇒ Object
turns tabs to spaces
203 204 205 206 207 208 209 210 211 212 213 214 215 216 |
# File 'lib/gemmy/patches/string_patch.rb', line 203 def (n=8) n = n.to_int raise ArgumentError, "n must be >= 0" if n < 0 return gsub(/\t/, "") if n == 0 return gsub(/\t/, " ") if n == 1 str = self.dup while str.gsub!(/^([^\t\n]*)(\t+)/) { |f| val = ( n * $2.size - ($1.size % n) ) $1 << (' ' * val) } end str end |