# File lib/org-ruby/parser.rb, line 84
    def initialize(lines, parser_options={ })
      if lines.is_a? Array then
        @lines = lines
      elsif lines.is_a? String then
        @lines = lines.split("\n")
      else
        raise "Unsupported type for +lines+: #{lines.class}"
      end

      @custom_keywords = []
      @headlines = Array.new
      @current_headline = nil
      @header_lines = []
      @in_buffer_settings = { }
      @options = { }
      @link_abbrevs = { }
      @parser_options = parser_options

      #
      # Include file feature disabled by default since 
      # it would be dangerous in some environments
      #
      # http://orgmode.org/manual/Include-files.html
      #
      # It will be activated by one of the following:
      #
      # - setting an ORG_RUBY_ENABLE_INCLUDE_FILES env variable to 'true'
      # - setting an ORG_RUBY_INCLUDE_ROOT env variable with the root path
      # - explicitly enabling it by passing it as an option:
      #   e.g. Orgmode::Parser.new(org_text, { :allow_include_files => true })
      #
      # IMPORTANT: To avoid the feature altogether, it can be _explicitly disabled_ as follows:
      #   e.g. Orgmode::Parser.new(org_text, { :allow_include_files => false })
      #
      if @parser_options[:allow_include_files].nil?
        if ENV['ORG_RUBY_ENABLE_INCLUDE_FILES'] == 'true' \
          or not ENV['ORG_RUBY_INCLUDE_ROOT'].nil?
          @parser_options[:allow_include_files] = true
        end
      end

      @parser_options[:offset] ||= 0

      parse_lines @lines
    end