# 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