current_dir = File.dirname(__FILE__) $:.unshift(current_dir) unless $:.include?(current_dir) || $:.include?(File.expand_path(current_dir)) # Needed by Hirb::String to handle multibyte characters $KCODE = 'u' if RUBY_VERSION < '1.9' require 'hirb/util' require 'hirb/string' require 'hirb/formatter' # must come before helpers/auto_table require 'hirb/dynamic_view' require 'hirb/helpers' require 'hirb/views' require 'hirb/view' require 'hirb/console' require 'hirb/pager' require 'hirb/menu' require 'hirb/version' # Most of Hirb's functionality is in Hirb::View. # For a tutorial on configuring and creating views see Hirb::View. For a tutorial on dynamic views see Hirb::DynamicView. # # == Config Files # Hirb can have multiple config files defined by config_files(). These config files # have the following top level keys: # [*:output*] This hash is used by the formatter object. See Hirb::Formatter.config for its format. # [*:width*] Width of the terminal/console. Defaults to Hirb::View::DEFAULT_WIDTH or possibly autodetected when Hirb is enabled. # [*:height*] Height of the terminal/console. Defaults to Hirb::View::DEFAULT_HEIGHT or possibly autodetected when Hirb is enabled. # [*:formatter*] Boolean which determines if the formatter is enabled. Defaults to true. # [*:pager*] Boolean which determines if the pager is enabled. Defaults to true. # [*:pager_command*] Command to be used for paging. Command can have options after it i.e. 'less -r'. # Defaults to common pagers i.e. less and more if detected. module Hirb class <