Method: Hide.hide_by_indent

Defined in:
lib/xiki/hide.rb

.hide_by_indent(indent = nil) ⇒ Object



205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
# File 'lib/xiki/hide.rb', line 205

def self.hide_by_indent indent=nil
  indent ||= Keys.prefix
  indent = -1 if indent == :u

  # If no prefix, use indent of current line
  if indent.nil?
    indent = Line.matches(/^ */).size
    # If currently indented to that level, go one deeper
    if $el.elvar.selective_display && indent == ($el.elvar.selective_display - 1)
      indent += 2
    end
  end

  $el.set_selective_display(indent + 1)
end