summaryrefslogtreecommitdiff
path: root/ruby.1
diff options
context:
space:
mode:
Diffstat (limited to 'ruby.1')
-rw-r--r--ruby.1291
1 files changed, 0 insertions, 291 deletions
diff --git a/ruby.1 b/ruby.1
deleted file mode 100644
index 6d6bebf1ae..0000000000
--- a/ruby.1
+++ /dev/null
@@ -1,291 +0,0 @@
-.\"Ruby is copyrighted by Yukihiro Matsumoto <matz@netlab.jp>.
-.na
-.TH RUBY 1 "ruby 1.6" "2000-09-11" "Ruby Programmers Reference Guide"
-.SH NAME
-ruby - Interpreted object-oriented scripting language
-.SH SYNOPSIS
-.B ruby \c
- [ \c
-.BI --version \c
- ] [ \c
-.BI -c \c
- ] [ \c
-.BI -w \c
- ] [ \c
-.BI -d \c
- ] [ \c
-.BI -l \c
- ]
- [ \c
-.BI -p \c
- ] [ \c
-.BI -n \c
- ] [ \c
-.BI -a \c
- ] [ \c
-.BI -s \c
- ] [ \c
-.BI -0 "[octal]"\c
- ]
- [ \c
-.BI -K "c"\c
- ] [ \c
-.BI -e "command"\c
- ] [ \c
-.BI -F "pattern"\c
- ]
- [ \c
-.BI -i "[extension]"\c
- ] [ \c
-.BI -I "dir"\c
- ] [ \c
-.BI -r "library"\c
- ]
- [ \c
-.BI -S \c
- ] [ \c
-.BI -v \c
- ] [ \c
-.BI -x "[directory]"\c
- ] [ \c
-.BI -C "directory"\c
- ]
- [ \c
-.BI -y \c
-] [ \c
-.BI -- \c
- ] [ programfile ] [ argument ] ...
-
-.SH PREFACE
-Ruby is an interpreted scripting language for quick and easy
-object-oriented programming. It has many features to process text
-files and to do system management tasks (as in Perl). It is simple,
-straight-forward, and extensible.
-.PP
-If you want a language for easy object-oriented programming, or you
-don't like the Perl ugliness, or you do like the concept of lisp, but
-don't like too much parentheses, Ruby may be the language of your
-choice.
-.SH DESCRIPTION
-Ruby's features are as follows:
-.TP
-.B "\(bu Interpretive"
-Ruby is an interpreted language, so you don't have to recompile
-programs written in Ruby to execute them.
-.TP
-.B "\(bu Variables have no type (dynamic typing)"
-Variables in Ruby can contain data of any type. You don't have to
-worry about variable typing. Consequently, it has a weaker compile
-time check.
-.TP
-.B "\(bu No declaration needed"
-You can use variables in your Ruby programs without any declarations.
-Variable names denote their scope, local, global, instance, etc.
-.TP
-.B "\(bu Simple syntax"
-Ruby has a simple syntax influenced slightly from Eiffel.
-.TP
-.B "\(bu No user-level memory management"
-Ruby has automatic memory management. Objects no longer
-referenced from anywhere are automatically collected by the
-garbage collector built into the interpreter.
-.TP
-.B "\(bu Everything is an object"
-Ruby is the purely object-oriented language, and was so since its
-creation. Even such basic data as integers are seen as objects.
-.TP
-.B "\(bu Class, inheritance, methods"
-Of course, as an object-oriented language, Ruby has such basic
-features like classes, inheritance, and methods.
-.TP
-.B "\(bu Singleton methods"
-Ruby has the ability to define methods for certain objects. For
-example, you can define a press-button action for certain widget by
-defining a singleton method for the button. Or, you can make up your
-own prototype based object system using singleton methods, if you want
-to.
-.TP
-.B "\(bu Mix-in by modules"
-Ruby intentionally does not have the multiple inheritance as it is a
-source of confusion. Instead, Ruby has the ability to share
-implementations across the inheritance tree. This is often called
-`Mix-in'.
-.TP
-.B "\(bu Iterators"
-Ruby has iterators for loop abstraction.
-.TP
-.B "\(bu Closures"
-In Ruby, you can objectify the procedure.
-.TP
-.B "\(bu Text processing and regular expression"
-Ruby has a bunch of text processing features like in Perl.
-.TP
-.B "\(bu Bignums"
-With built-in bignums, you can for example calculate factorial(400).
-.TP
-.B "\(bu Exception handling"
-As in Java(tm).
-.TP
-.B "\(bu Direct access to the OS"
-Ruby can use most UNIX system calls, often used in system programming.
-.TP
-.B "\(bu Dynamic loading"
-On most UNIX systems, you can load object files into the Ruby
-interpreter on-the-fly.
-.PP
-.SH COMMAND LINE OPTIONS
-Ruby interpreter accepts following command-line options (switches).
-They are quite similar to those of Perl.
-.TP
-.B -0[octal]
-specifies the input record separator ($/) as an octal number. If no
-digit is given, the null character is taken as the separator. Other
-switches may follow the digits. -00 turns Ruby into paragraph mode. -
-0777 makes Ruby read whole file at once as a single string since there
-is no legal character with that value.
-.TP
-.B -a
-turns on auto-split mode when used with -n or -p. In auto-split
-mode, Ruby executes
-.nf
-.ne 1
-\& $F = $_.split
-at beginning of each loop.
-.fi
-.TP
-.B -c
-causes Ruby to check the syntax of the script and exit without
-executing. If there are no syntax errors, Ruby will print "Syntax
-OK" to the standard output.
-.TP
-.B --copyright
-prints the copyright notice.
-.TP
-.B -d --debug
-turns on debug mode. $DEBUG will set true.
-.TP
-.B -e command
-specifies script from command-line while telling Ruby to not
-search argv for script filenames.
-.TP
-.B -F pattern
-specifies input field separator ($;).
-.TP
-.B -h --help
-prints a summary of the options.
-.TP
-.B -i extension
-specifies in-place-edit mode. The extension, if specified, is
-added to old filename to make a backup copy.
-example:
-.nf
-.ne 8
-\& % echo matz > /tmp/junk
-\& % cat /tmp/junk
-\& matz
-\& % ruby -p -i.bak -e '$_.upcase!' /tmp/junk
-\& % cat /tmp/junk
-\& MATZ
-\& % cat /tmp/junk.bak
-\& matz
-.fi
-.TP
-.B -I directory
-used to tell Ruby where to load the library scripts. Directory path
-will be added to the load-path variable ($:').
-.TP
-.B -Kkcode
-specifies KANJI (Japanese) encoding.
-.TP
-.B -l
-enables automatic line-ending processing, which means to firstly set
-$\e to the value of $/, and secondly chops every line read using chop!.
-.TP
-.B -n
-causes Ruby to assume the following loop around your script,
-which makes it iterate over filename arguments somewhat like
-sed -n or awk.
-.nf
-.ne 3
-\& while gets
-\& ...
-\& end
-.fi
-.TP
-.B -p
-acts mostly same as -n switch, but print the value of variable
-$_ at the each end of the loop.
-example:
-.nf
-.ne 2
-\& % echo matz | ruby -p -e '$_.tr! "a-z", "A-Z"'
-\& MATZ
-.fi
-.TP
-.B -r library
-causes Ruby to load the library using require. It is useful
-with switches -n or -p.
-.TP
-.B -s
-enables some switch parsing for switches after script name but before
-any filename arguments (or before a --). Any switches found there are
-removed from ARGV and set the corresponding variable in the script.
-example:
-.nf
-.ne 3
-\& #! /usr/local/bin/ruby -s
-\& # prints "true" if invoked with `-xyz' switch.
-\& print "true\en" if $xyz
-.fi
-.TP
-.B -S
-makes Ruby use the PATH environment variable to search for
-script, unless if its name begins with a slash. This is used to
-emulate #! on machines that don't support it, in the following
-manner:
-.nf
-.ne 2
-\& #! /usr/local/bin/ruby
-\& # This line makes the next one a comment in ruby \e
-\& exec /usr/local/bin/ruby -S $0 $*
-.fi
-On some systems $0 does not always contain the full pathname, so you
-need -S switch to tell Ruby to search for the script if necessary. To
-handle embedded spaces or such. A better construct than $* would be
-${1+"$@"}, but it does not work if the script is being interpreted by
-csh.
-.TP
-.B -v --verbose
-enables verbose mode. Ruby will print its version at the beginning,
-and set the variable `$VERBOSE' to true. Some methods print extra
-messages if this variable is true. If this switch is given, and no
-other switches are present, Ruby quits after printing its version.
-.TP
-.B -T[level]
-turns on taint checks at the specified level (default 1).
-.TP
-.B --version
-prints the version of Ruby interpreter.
-.TP
-.B -w
-enables verbose mode without printing version message at the
-beginning. It set the `$VERBOSE' variable to true.
-.TP
-.B -x[directory]
-tells Ruby that the script is embedded in a message. Leading garbage
-will be discarded until the first that starts with "#!" and contains
-the string, "ruby". Any meaningful switches on that line will applied.
-The end of script must be specified with either EOF, ^D (control-D),
-^Z (control-Z), or reserved word __END__.If the directory name is
-specified, Ruby will switch to that directory before executing script.
-.TP
-.B -C directory
-causes Ruby to switch to the directory.
-.TP
-.B -y --yydebug
-turns on compiler debug mode. Ruby will print a bunch of internal
-state messages during compiling scripts. You don't have to specify
-this switch, unless you are going to debug the Ruby interpreter.
-.PP
-.SH AUTHOR
- Ruby is designed and implemented by Yukihiro Matsumoto <matz@netlab.jp>.