# -*- mode: rdoc; coding: utf-8; fill-column: 74; -*- == Pre-defined global variables $!:: The Exception object set by Kernel#raise. $@:: The same as $!.backtrace. $~:: The information about the last match in the current scope (thread-local and frame-local). $&:: The string matched by the last successful match. $`:: The string to the left of the last successful match. $':: The string to the right of the last successful match. $+:: The highest group matched by the last successful match. $1:: The Nth group of the last successful match. May be > 1. $=:: This variable is no longer effective. Deprecated. $/:: The input record separator, newline by default. Aliased to $-0. $\:: The output record separator for Kernel#print and IO#write. Default is +nil+. $,:: The output field separator for Kernel#print and Array#join. Non-nil $, will be deprecated. $;:: The default separator for String#split. Non-nil $; will be deprecated. Aliased to $-F. $.:: The current input line number of the last file that was read. $<:: The same as ARGF. $>:: The default output stream for Kernel#print and Kernel#printf. $stdout by default. $_:: The last input line of string by gets or readline. $0:: Contains the name of the script being executed. May be assignable. $*:: The same as ARGV. $$:: The process number of the Ruby running this script. Same as Process.pid. $?:: The status of the last executed child process (thread-local). $LOAD_PATH:: Load path for searching Ruby scripts and extension libraries used by Kernel#load and Kernel#require. Aliased to $: and $-I. Has a singleton method $LOAD_PATH.resolve_feature_path(feature) that returns [+:rb+ or +:so+, path], which resolves the feature to the path the original Kernel#require method would load. $LOADED_FEATURES:: The array contains the module names loaded by require. Aliased to $". $DEBUG:: The debug flag, which is set by the -d switch. Enabling debug output prints each exception raised to $stderr (but not its backtrace). Setting this to a true value enables debug output as if -d were given on the command line. Setting this to a false value disables debug output. Aliased to $-d. $FILENAME:: Current input filename from ARGF. Same as ARGF.filename. $stderr:: The current standard error output. $stdin:: The current standard input. $stdout:: The current standard output. $VERBOSE:: The verbose flag, which is set by the -w or -v switch. Setting this to a true value enables warnings as if -w or -v were given on the command line. Setting this to +nil+ disables warnings, including from Kernel#warn. Aliased to $-v and $-w. $-a:: True if option -a is set. Read-only variable. $-i:: In in-place-edit mode, this variable holds the extension, otherwise +nil+. $-l:: True if option -l is set. Read-only variable. $-p:: True if option -p is set. Read-only variable. == Pre-defined global constants STDIN:: The standard input. The default value for $stdin. STDOUT:: The standard output. The default value for $stdout. STDERR:: The standard error output. The default value for $stderr. ENV:: The hash contains current environment variables. ARGF:: The virtual concatenation of the files given on command line (or from $stdin if no files were given). ARGV:: An Array of command line arguments given for the script. DATA:: The file object of the script, pointing just after __END__. TOPLEVEL_BINDING:: The Binding of the top level scope. RUBY_VERSION:: The Ruby language version. RUBY_RELEASE_DATE:: The release date string. RUBY_PLATFORM:: The platform identifier. RUBY_PATCHLEVEL:: The patchlevel for this Ruby. If this is a development build of Ruby the patchlevel will be -1. RUBY_REVISION:: The GIT commit hash for this Ruby. RUBY_COPYRIGHT:: The copyright string for Ruby. RUBY_ENGINE:: The name of the Ruby implementation. RUBY_ENGINE_VERSION:: The version of the Ruby implementation. RUBY_DESCRIPTION:: The same as ruby --version, a String describing various aspects of the Ruby implementation.