summaryrefslogtreecommitdiff
path: root/jni/ruby/man
diff options
context:
space:
mode:
authorJari Vetoniemi <jari.vetoniemi@indooratlas.com>2020-03-16 18:49:26 +0900
committerJari Vetoniemi <jari.vetoniemi@indooratlas.com>2020-03-30 00:39:06 +0900
commitfcbf63e62c627deae76c1b8cb8c0876c536ed811 (patch)
tree64cb17de3f41a2b6fef2368028fbd00349946994 /jni/ruby/man
Fresh start
Diffstat (limited to 'jni/ruby/man')
-rw-r--r--jni/ruby/man/erb.1157
-rw-r--r--jni/ruby/man/goruby.139
-rw-r--r--jni/ruby/man/irb.1173
-rw-r--r--jni/ruby/man/rake.1141
-rw-r--r--jni/ruby/man/ri.1181
-rw-r--r--jni/ruby/man/ruby.1629
6 files changed, 1320 insertions, 0 deletions
diff --git a/jni/ruby/man/erb.1 b/jni/ruby/man/erb.1
new file mode 100644
index 0000000..8c47e58
--- /dev/null
+++ b/jni/ruby/man/erb.1
@@ -0,0 +1,157 @@
+.\"Ruby is copyrighted by Yukihiro Matsumoto <matz@netlab.jp>.
+.Dd November 7, 2012
+.Dt ERB(1) "" "Ruby Programmers Reference Guide"
+.Os UNIX
+.Sh NAME
+.Nm erb
+.Nd Ruby Templating
+.Sh SYNOPSIS
+.Nm
+.Op Fl -version
+.Op Fl UPdnvx
+.Op Fl E Ar ext Ns Op Ns : Ns int
+.Op Fl S Ar level
+.Op Fl T Ar mode
+.Op Fl r Ar library
+.Op Fl -
+.Op file ...
+.Pp
+.Sh DESCRIPTION
+.Nm
+is a command line front-end for
+.Li "ERB"
+library, which is an implementation of eRuby.
+.Pp
+ERB provides an easy to use but powerful templating system for Ruby.
+Using ERB, actual Ruby code can be added to any plain text document for the
+purposes of generating document information details and/or flow control.
+.Pp
+.Nm
+is a part of
+.Nm Ruby .
+.Pp
+.Sh OPTIONS
+.Bl -tag -width "1234567890123" -compact
+.Pp
+.It Fl -version
+Prints the version of
+.Nm .
+.Pp
+.It Fl E Ar external Ns Op : Ns Ar internal
+.It Fl -encoding Ar external Ns Op : Ns Ar internal
+Specifies the default value(s) for external encodings and internal encoding. Values should be separated with colon (:).
+.Pp
+You can omit the one for internal encodings, then the value
+.Pf ( Li "Encoding.default_internal" ) will be nil.
+.Pp
+.It Fl P
+Evaluates lines starting with
+.Li "%"
+as Ruby code and removes the tailing EOLs.
+.Pp
+.It Fl S Ar level
+Specifies the safe level in which eRuby script will run.
+.Pp
+.It Fl T Ar mode
+Specifies trim mode (default 0).
+.Ar mode
+can be one of
+.Bl -hang -offset indent
+.It Sy 0
+EOL remains after the embedded ruby script is evaluated.
+.Pp
+.It Sy 1
+EOL is removed if the line ends with
+.Li "%>" .
+.Pp
+.It Sy 2
+EOL is removed if the line starts with
+.Li "<%"
+and ends with
+.Li "%>" .
+.Pp
+.It Sy -
+EOL is removed if the line ends with
+.Li "-%>" .
+And leading whitespaces are removed if the erb directive starts with
+.Li "<%-" .
+.Pp
+.El
+.Pp
+.It Fl U
+can be one of
+Sets the default value for internal encodings
+.Pf ( Li "Encoding.default_internal" ) to UTF-8.
+.Pp
+.It Fl d
+.It Fl -debug
+Turns on debug mode.
+.Li "$DEBUG"
+will be set to true.
+.Pp
+.It Fl h
+.It Fl -help
+Prints a summary of the options.
+.Pp
+.It Fl n
+Used with
+.Fl x .
+Prepends the line number to each line in the output.
+.Pp
+.It Fl v
+Enables verbose mode.
+.Li "$VERBOSE"
+will be set to true.
+.Pp
+.It Fl x
+Converts the eRuby script into Ruby script and prints it without line numbers.
+.Pp
+.El
+.Pp
+.Sh EXAMPLES
+Here is an eRuby script
+.Bd -literal -offset indent
+<?xml version="1.0" ?>
+<% require 'prime' -%>
+<erb-example>
+ <calc><%= 1+1 %></calc>
+ <var><%= __FILE__ %></var>
+ <library><%= Prime.each(10).to_a.join(", ") %></library>
+</erb-example>
+.Ed
+.Pp
+Command
+.Dl "% erb -T - example.erb"
+prints
+.Bd -literal -offset indent
+<?xml version="1.0" ?>
+<erb-example>
+ <calc>2</calc>
+ <var>example.erb</var>
+ <library>2, 3, 5, 7</library>
+</erb-example>
+.Ed
+.Pp
+.Sh SEE ALSO
+.Xr ruby 1 .
+.Pp
+And see
+.Xr ri 1
+documentation for
+.Li "ERB"
+class.
+.Pp
+.Sh REPORTING BUGS
+.Bl -bullet
+.Li Security vulnerabilities should be reported via an email to
+.Aq security@ruby-lang.org Ns
+.Li .
+Reported problems will be published after being fixed.
+.Pp
+.Li And you can report other bugs and feature requests via the
+Ruby Issue Tracking System (http://bugs.ruby-lang.org).
+Do not report security vulnerabilities
+via the system because it publishes the vulnerabilities immediately.
+.El
+.Sh AUTHORS
+Written by Masatoshi SEKI.
diff --git a/jni/ruby/man/goruby.1 b/jni/ruby/man/goruby.1
new file mode 100644
index 0000000..62a7bad
--- /dev/null
+++ b/jni/ruby/man/goruby.1
@@ -0,0 +1,39 @@
+.\"Ruby is copyrighted by Yukihiro Matsumoto <matz@netlab.jp>.
+.Dd November 7, 2012
+.Dt GORUBY(1) "" "Ruby Programmers Reference Guide"
+.Os UNIX
+.Sh NAME
+.Nm goruby
+.Nd A code-golfer's best friend
+.Sh SYNOPSIS
+.Nm
+.Op options ...
+.Op Fl -
+.Op Ar program_file
+.Op Ar argument ...
+.Sh DESCRIPTION
+.Sy goruby
+is a kind of Ruby language processor
+which recognizes extremely shortened programs as below:
+.Bd -literal -offset indent
+rq"date";s De.td
+.Ed
+.Pp
+Which means:
+.Bd -literal -offset indent
+require"date";puts Date.today
+.Ed
+.Pp
+.Sh OPTIONS
+.Sy goruby
+takes same options as
+.Xr ruby 1 .
+.Sh SEE ALSO
+.Bl -hang -compact -width "ruby(1)"
+.It Xr ruby 1
+The stiff version of Ruby interpreter.
+.El
+.Pp
+.Sh AUTHORS
+Originally written by Nobuyoshi Nakada and developed by the
+Ruby core team.
diff --git a/jni/ruby/man/irb.1 b/jni/ruby/man/irb.1
new file mode 100644
index 0000000..543217e
--- /dev/null
+++ b/jni/ruby/man/irb.1
@@ -0,0 +1,173 @@
+.\"Ruby is copyrighted by Yukihiro Matsumoto <matz@netlab.jp>.
+.Dd November 7, 2012
+.Dt IRB(1) "" "Ruby Programmers Reference Guide"
+.Os UNIX
+.Sh NAME
+.Nm irb
+.Nd Interactive Ruby Shell
+.Sh SYNOPSIS
+.Nm
+.Op Fl -version
+.Op Fl dfm
+.Op Fl I Ar directory
+.Op Fl r Ar library
+.Op Fl - Ns Oo no Oc Ns inspect
+.Op Fl - Ns Oo no Oc Ns readline
+.Op Fl -prompt Ar mode
+.Op Fl -prompt-mode Ar mode
+.Op Fl -inf-ruby-mode
+.Op Fl -simple-prompt
+.Op Fl -noprompt
+.Op Fl -tracer
+.Op Fl -back-trace-limit Ar n
+.Op Fl -irb_debug Ar n
+.Op Fl -
+.Op program_file
+.Op argument ...
+.Pp
+.Sh DESCRIPTION
+.Nm
+is the REPL(read-eval-print loop) environment for Ruby programs.
+.Pp
+.Sh OPTIONS
+.Bl -tag -width "1234567890123" -compact
+.Pp
+.It Fl -version
+Prints the version of
+.Nm .
+.Pp
+.It Fl E Ar external Ns Op : Ns Ar internal
+.It Fl -encoding Ar external Ns Op : Ns Ar internal
+Same as `ruby -E' .
+Specifies the default value(s) for external encodings and internal encoding. Values should be separated with colon (:).
+.Pp
+You can omit the one for internal encodings, then the value
+.Pf ( Li "Encoding.default_internal" ) will be nil.
+.Pp
+.It Fl I Ar path
+Same as `ruby -I' .
+Specifies
+.Li $LOAD_PATH
+directory
+.Pp
+.It Fl U
+Same as `ruby -U' .
+Sets the default value for internal encodings
+.Pf ( Li "Encoding.default_internal" ) to UTF-8.
+.Pp
+.It Fl d
+Same as `ruby -d' .
+Sets
+.Li $DEBUG
+to true.
+.Pp
+.It Fl f
+Suppresses read of
+.Pa ~/.irbrc .
+.Pp
+.It Fl h
+.It Fl -help
+Prints a summary of the options.
+.Pp
+.It Fl m
+Bc mode (load mathn, fraction or matrix are available)
+.Pp
+.It Fl r Ar library
+Same as `ruby -r'.
+Causes irb to load the library using require.
+.Pp
+.It Fl -inspect
+Uses `inspect' for output (default except for bc mode)
+.Pp
+.It Fl -noinspect
+Doesn't use inspect for output
+.Pp
+.It Fl -readline
+Uses Readline extension module.
+.Pp
+.It Fl -noreadline
+Doesn't use Readline extension module.
+.Pp
+.It Fl -prompt Ar mode
+.It Fl -prompt-mode Ar mode
+Switch prompt mode. Pre-defined prompt modes are
+`default', `simple', `xmp' and `inf-ruby'.
+.Pp
+.It Fl -inf-ruby-mode
+Uses prompt appropriate for inf-ruby-mode on emacs.
+Suppresses --readline.
+.Pp
+.It Fl -simple-prompt
+Makes prompts simple.
+.Pp
+.It Fl -noprompt
+No prompt mode.
+.Pp
+.It Fl -tracer
+Displays trace for each execution of commands.
+.Pp
+.It Fl -back-trace-limit Ar n
+Displays backtrace top
+.Ar n
+and tail
+.Ar n Ns .
+The default value is 16.
+.Pp
+.It Fl -irb_debug Ar n
+Sets internal debug level to n (not for popular use)
+.Pp
+.El
+.Pp
+.Sh ENVIRONMENT
+.Bl -tag -width "RUBYLIB_PREFIX" -compact
+.It Ev IRBRC
+.Pp
+.El
+.Pp
+Also
+.Nm
+depends on same variables as
+.Xr ruby 1 .
+.Pp
+.Sh FILES
+.Bl -tag -width "RUBYLIB_PREFIX" -compact
+.It Pa ~/.irbrc
+Personal irb initialization.
+.Pp
+.El
+.Pp
+.Sh EXAMPLES
+.Dl % irb
+.Dl irb(main):001:0> Ic 1 + 1
+.Dl 2
+.Dl irb(main):002:0> Ic def t(x)
+.Dl irb(main):003:1> Ic x+1
+.Dl irb(main):004:1> Ic end
+.Dl => nil
+.Dl irb(main):005:0> Ic t(3)
+.Dl => 4
+.Dl irb(main):006:0> Ic if t(3) == 4
+.Dl irb(main):007:1> Ic p :ok
+.Dl irb(main):008:1> Ic end
+.Dl :ok
+.Dl => :ok
+.Dl irb(main):009:0> Ic quit
+.Dl %
+.Pp
+.Sh SEE ALSO
+.Xr ruby 1 .
+.Pp
+.Sh REPORTING BUGS
+.Bl -bullet
+.Li Security vulnerabilities should be reported via an email to
+.Aq security@ruby-lang.org Ns
+.Li .
+Reported problems will be published after being fixed.
+.Pp
+.Li And you can report other bugs and feature requests via the
+Ruby Issue Tracking System (http://bugs.ruby-lang.org).
+Do not report security vulnerabilities
+via the system because it publishes the vulnerabilities immediately.
+.El
+.Sh AUTHORS
+Written by Keiju ISHITSUKA.
diff --git a/jni/ruby/man/rake.1 b/jni/ruby/man/rake.1
new file mode 100644
index 0000000..e2b5341
--- /dev/null
+++ b/jni/ruby/man/rake.1
@@ -0,0 +1,141 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH RAKE 1 "August 27, 2014" "rake 10.3.2" "Rake User Commands"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+rake \- a make-like build utility for Ruby
+.SH SYNOPSIS
+\fBrake\fR [\fI\-f rakefile\fR] {\fIOPTIONS\fR} \fITARGETS...\fR
+.br
+.SH DESCRIPTION
+.B rake
+is a make-like build utility for Ruby. Tasks and dependencies are specified in
+standard Ruby syntax.
+.SH OPTIONS
+.TP
+\fB\-m\fR, \fB\-\-multitask\fR
+Treat all tasks as multitasks.
+.TP
+\fB\-B\fR, \fB\-\-build\-all\fR
+Build all prerequisites, including those which are up\-to\-date.
+
+.TP
+\fB\-j\fR, \fB\-\-jobs\fR [\fINUMBER\fR]
+Specifies the maximum number of tasks to execute in parallel (default is number of CPU cores + 4).
+
+.SS Modules
+.TP
+\fB\-I\fR, \fB\-\-libdir\fR \fILIBDIR\fR
+Include \fILIBDIR\fR in the search path for required modules.
+.TP
+\fB\-r\fR, \fB\-\-require\fR \fIMODULE\fR
+Require \fIMODULE\fR before executing rakefile.
+
+.SS Rakefile location
+.TP
+\fB\-f\fR, \fB\-\-rakefile\fR [\fIFILENAME\fR]
+Use \fIFILENAME\fR as the rakefile to search for.
+.TP
+\fB\-N\fR, \fB\-\-no\-search\fR, \fB\-\-nosearch\fR
+Do not search parent directories for the Rakefile.
+.TP
+\fB\-G\fR, \fB\-\-no\-system\fR, \fB\-\-nosystem\fR
+Use standard project Rakefile search paths, ignore system wide rakefiles.
+.TP
+\fB\-R\fR, \fB\-\-rakelibdir\fR \fIRAKELIBDIR\fR
+Auto\-import any .rake files in \fIRAKELIBDIR\fR (default is 'rakelib')
+.HP
+\fB\-\-rakelib\fR
+.TP
+\fB\-g\fR, \fB\-\-system\fR
+Using system wide (global) rakefiles (usually '\fI~/.rake/*.rake\fR').
+
+.SS Debugging
+.TP
+\fB\-\-backtrace\fR=\fI\,[OUT]\/\fR
+Enable full backtrace. \fIOUT\fR can be stderr (default) or stdout.
+.TP
+\fB\-t\fR, \fB\-\-trace\fR=\fI\,[OUT]\/\fR
+Turn on invoke/execute tracing, enable full backtrace. \fIOUT\fR can be stderr (default) or stdout.
+.TP
+\fB\-\-suppress\-backtrace\fR \fIPATTERN\fR
+Suppress backtrace lines matching regexp \fIPATTERN\fR. Ignored if \fI\-\-trace\fR is on.
+.TP
+\fB\-\-rules\fR
+Trace the rules resolution.
+
+.TP
+\fB\-n\fR, \fB\-\-dry\-run\fR
+Do a dry run without executing actions.
+.TP
+\fB\-T\fR, \fB\-\-tasks\fR [\fIPATTERN\fR]
+Display the tasks (matching optional \fIPATTERN\fR) with descriptions, then exit.
+.TP
+\fB\-D\fR, \fB\-\-describe\fR [\fIPATTERN\fR]
+Describe the tasks (matching optional \fIPATTERN\fR), then exit.
+.TP
+\fB\-W\fR, \fB\-\-where\fR [\fIPATTERN\fR]
+Describe the tasks (matching optional \fIPATTERN\fR), then exit.
+.TP
+\fB\-P\fR, \fB\-\-prereqs\fR
+Display the tasks and dependencies, then exit.
+
+.TP
+\fB\-e\fR, \fB\-\-execute\fR \fICODE\fR
+Execute some Ruby code and exit.
+.TP
+\fB\-p\fR, \fB\-\-execute\-print\fR \fICODE\fR
+Execute some Ruby code, print the result, then exit.
+.TP
+\fB\-E\fR, \fB\-\-execute\-continue\fR \fICODE\fR
+Execute some Ruby code, then continue with normal task processing.
+
+.SS Information
+.TP
+\fB\-v\fR, \fB\-\-verbose\fR
+Log message to standard output.
+.TP
+\fB\-q\fR, \fB\-\-quiet\fR
+Do not log messages to standard output.
+.TP
+\fB\-s\fR, \fB\-\-silent\fR
+Like \fB\-\-quiet\fR, but also suppresses the 'in directory' announcement.
+.TP
+\fB\-X\fR, \fB\-\-no\-deprecation\-warnings\fR
+Disable the deprecation warnings.
+.TP
+\fB\-\-comments\fR
+Show commented tasks only
+.TP
+\fB\-A\fR, \fB\-\-all\fR
+Show all tasks, even uncommented ones (in combination with \fB\-T\fR or \fB\-D\fR)
+.TP
+\fB\-\-job\-stats\fR [\fILEVEL\fR]
+Display job statistics. \fILEVEL=history\fR displays a complete job list
+.TP
+\fB\-V\fR, \fB\-\-version\fR
+Display the program version.
+.TP
+\fB\-h\fR, \fB\-H\fR, \fB\-\-help\fR
+Display a help message.
+
+.SH SEE ALSO
+The complete documentation for \fBrake\fR has been installed at \fI/usr/share/doc/rake-doc/html/index.html\fR. It is also available online at \fIhttp://docs.seattlerb.org/rake\fR.
+.SH AUTHOR
+.B rake
+was written by Jim Weirich <jim@weirichhouse.org>
+.PP
+This manual was created by Caitlin Matos <caitlin.matos@zoho.com> for the Debian project (but may be used by others). It was inspired by the manual by Jani Monoses <jani@iv.ro> for the Ubuntu project.
diff --git a/jni/ruby/man/ri.1 b/jni/ruby/man/ri.1
new file mode 100644
index 0000000..cadf4b8
--- /dev/null
+++ b/jni/ruby/man/ri.1
@@ -0,0 +1,181 @@
+.\"Ruby is copyrighted by Yukihiro Matsumoto <matz@netlab.jp>.
+.Dd November 7, 2012
+.Dt RI(1) "" "Ruby Programmers Reference Guide"
+.Os UNIX
+.Sh NAME
+.Nm ri
+.Nd Ruby API reference front end
+.Sh SYNOPSIS
+.Nm
+.Op Fl Ti
+.Op Fl d Ar directory
+.Op Fl f Ar format
+.Op Fl -list-doc-dirs
+.Op Fl -no-standard-docs
+.Op Fl - Ns Oo Cm no- Oc Ns Bro Cm system Ns | Ns Cm site Ns | Ns Cm gems Ns | Ns Cm home Brc
+.Op Fl - Ns Oo Cm no- Oc Ns Cm use-cache
+.Op Fl -width Ns = Ns Ar width
+.Op Ar target ...
+.Sh DESCRIPTION
+.Nm
+is a CLI front end for the Ruby API reference.
+You can search and read API reference for classes and methods with
+.Nm .
+.Pp
+.Nm
+is a part of Ruby.
+.Pp
+.Ar target
+can be one of the following forms:
+.Bl -diag -offset indent
+.It Class
+for classes
+.It Class::method
+for class methods
+.It Class#method
+for instance methods
+.It Class.method
+for both class and instance methods
+.It method
+for both class and instance methods
+.El
+.Pp
+All class names may be abbreviated to their minimum unambiguous form. If a name
+is ambiguous, all valid options will be listed.
+.Pp
+For example:
+.Bd -literal -offset indent
+ri Fil
+ri File
+ri File.new
+ri zip
+.Ed
+.Pp
+Note that shell quoting may be required for method names containing
+punctuation:
+.Bd -literal -offset indent
+ri 'Array.[]'
+ri compact\!
+.Ed
+.Sh OPTIONS
+.Bl -tag -width "1234567890123" -compact
+.Pp
+.It Fl -version
+Prints the version of
+.Nm .
+.Pp
+.It Fl T
+.It Fl -no-pager
+Send output directly to stdout, rather than to a pager.
+.Pp
+.It Fl d Ar directory
+.It Fl -doc-dir Ns = Ns Ar directory
+List of directories from which to source documentation in addition to the standard
+directories. May be repeated.
+.Pp
+.It Fl f Ar FORMAT
+.It Fl -fmt Ar FORMAT
+.It Fl -format Ns = Ns FORMAT
+Format to use when displaying output:
+.Pp
+ansi, bs, html, plain, simple
+.Pp
+Use 'bs' (backspace) with most pager programs. To use ANSI, either disable the
+pager or tell the pager to allow control characters.
+.Pp
+.It Fl i
+.It Fl -interactive
+This makes
+.Nm
+go into interactive mode.
+.Pp
+When
+.Nm
+is in interactive mode it will allow the user to disambiguate lists of
+methods in case multiple methods match against a method search string. It also
+will allow the user to enter in a method name (with auto-completion, if readline
+is supported) when viewing a class.
+.Pp
+.It Fl -list-doc-dirs
+List the directories from which ri will source documentation on stdout and exit.
+.Pp
+.It Fl -no-standard-docs
+Do not include documentation from the Ruby standard library,
+.Pa site_lib ,
+installed gems, or
+.Pa ~/.rdoc .
+.Pp
+Equivalent to specifying the options
+.Fl -no-system , Fl -no-site , Fl -no-gems ,
+and
+.Fl -no-home .
+.Pp
+.It Fl - Ns Oo Cm no- Oc Ns Cm system
+Include documentation from Ruby's standard library. Defaults to true.
+.Pp
+.It Fl - Ns Oo Cm no- Oc Ns Cm site
+ Include documentation from libraries installed in site_lib. Defaults to true.
+.Pp
+.It Fl - Ns Oo Cm no- Oc Ns Cm gems
+Include documentation from RubyGems. Defaults to true.
+.Pp
+.It Fl - Ns Oo Cm no- Oc Ns Cm home
+Include documentation stored in ~/.rdoc. Defaults to true.
+.Pp
+.It Fl - Ns Oo Cm no- Oc Ns Cm use-cache
+Whether or not to use
+.Nm Ns
+.Ns 's cache. True by default.
+.Pp
+.It Fl w Ar width
+.It Fl -width Ns = Ns Ar width
+Set the width of the output.
+.Pp
+.El
+.Pp
+.Sh ENVIRONMENT
+.Bl -tag -width "USERPROFILE" -compact
+.Pp
+.It Ev RI
+Additional options.
+.Pp
+.It Ev PAGER
+Used as the name of pager program for displaying.
+.Pp
+.It Ev HOME
+.It Ev USERPROFILE
+.It Ev HOMEPATH
+Path to user's home directory.
+.El
+.Pp
+.Sh FILES
+.Bl -tag -width "USERPROFILE" -compact
+.Pp
+.It Pa ~/.ri
+Caches recently referenced documents here.
+.Pp
+.It Pa ~/.rdoc
+Searches user-wide documents here.
+.Pp
+.El
+.Pp
+.Sh SEE ALSO
+.Xr ruby 1
+.Xr rdoc 1
+.Xr gem 1
+.Pp
+.Sh REPORTING BUGS
+.Bl -bullet
+.Li Security vulnerabilities should be reported via an email to
+.Aq security@ruby-lang.org Ns
+.Li .
+Reported problems will be published after being fixed.
+.Pp
+.Li And you can report other bugs and feature requests via the
+Ruby Issue Tracking System (http://bugs.ruby-lang.org).
+Do not report security vulnerabilities
+via the system because it publishes the vulnerabilities immediately.
+.El
+.Sh AUTHORS
+Written by Dave Thomas
+.Aq dave@pragmaticprogrammer.com
diff --git a/jni/ruby/man/ruby.1 b/jni/ruby/man/ruby.1
new file mode 100644
index 0000000..c35f130
--- /dev/null
+++ b/jni/ruby/man/ruby.1
@@ -0,0 +1,629 @@
+.\"Ruby is copyrighted by Yukihiro Matsumoto <matz@netlab.jp>.
+.Dd November 7, 2012
+.Dt RUBY(1) "" "Ruby Programmers Reference Guide"
+.\".Dt RUBY 1
+.Os UNIX
+.Sh NAME
+.Nm ruby
+.Nd Interpreted object-oriented scripting language
+.Sh SYNOPSIS
+.Nm
+.Op Fl -copyright
+.Op Fl -version
+.Op Fl SUacdlnpswvy
+.Op Fl 0 Ns Op Ar octal
+.Op Fl C Ar directory
+.Op Fl E Ar external Ns Op : Ns Ar internal
+.Op Fl F Ar pattern
+.Op Fl I Ar directory
+.Op Fl K Ar c
+.Op Fl T Ns Op Ar level
+.Op Fl W Ns Op Ar level
+.Op Fl e Ar command
+.Op Fl i Ns Op Ar extension
+.Op Fl r Ar library
+.Op Fl x Ns Op Ar directory
+.Op - Ns Bro Cm enable Ns | Ns Cm disable Brc Ns - Ns Ar FEATURE
+.Op Fl -dump Ns = Ns Ar target
+.Op Fl -verbose
+.Op Fl -
+.Op Ar program_file
+.Op Ar argument ...
+.Sh DESCRIPTION
+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 (like 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 many parentheses, Ruby might be your language of
+choice.
+.Sh FEATURES
+Ruby's features are as follows:
+.Bl -tag -width 6n
+.It Sy "Interpretive"
+Ruby is an interpreted language, so you don't have to recompile
+programs written in Ruby to execute them.
+.Pp
+.It Sy "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.
+.Pp
+.It Sy "No declaration needed"
+You can use variables in your Ruby programs without any declarations.
+Variable names denote their scope - global, class, instance, or local.
+.Pp
+.It Sy "Simple syntax"
+Ruby has a simple syntax influenced slightly from Eiffel.
+.Pp
+.It Sy "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.
+.Pp
+.It Sy "Everything is an object"
+Ruby is a purely object-oriented language, and was so since its
+creation. Even such basic data as integers are seen as objects.
+.Pp
+.It Sy "Class, inheritance, and methods"
+Being an object-oriented language, Ruby naturally has basic
+features like classes, inheritance, and methods.
+.Pp
+.It Sy "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.
+.Pp
+.It Sy "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 a
+.Sq Mix-in .
+.Pp
+.It Sy "Iterators"
+Ruby has iterators for loop abstraction.
+.Pp
+.It Sy "Closures"
+In Ruby, you can objectify the procedure.
+.Pp
+.It Sy "Text processing and regular expressions"
+Ruby has a bunch of text processing features like in Perl.
+.Pp
+.It Sy "M17N, character set independent"
+Ruby supports multilingualized programming. Easy to process texts
+written in many different natural languages and encoded in many
+different character encodings, without dependence on Unicode.
+.Pp
+.It Sy "Bignums"
+With built-in bignums, you can for example calculate factorial(400).
+.Pp
+.It Sy "Reflection and domain specific languages"
+Class is also an instance of the Class class. Definition of classes and methods
+is an expression just as 1+1 is. So your programs can even write and modify programs.
+Thus you can write your application in your own programming language on top of Ruby.
+.Pp
+.It Sy "Exception handling"
+As in Java(tm).
+.Pp
+.It Sy "Direct access to the OS"
+Ruby can use most
+.Ux
+system calls, often used in system programming.
+.Pp
+.It Sy "Dynamic loading"
+On most
+.Ux
+systems, you can load object files into the Ruby interpreter
+on-the-fly.
+.It Sy "Rich libraries"
+Libraries called "builtin libraries" and "standard libraries" are bundled with Ruby.
+And you can obtain more libraries via the package management system called `RubyGems'.
+.Pp
+Moreover there are thousands of Ruby projects on GitHub
+.Aq Pa https://github.com/languages/Ruby .
+.El
+.Pp
+.Sh OPTIONS
+Ruby interpreter accepts following command-line options (switches).
+They are quite similar to those of
+.Xr perl 1 .
+.Bl -tag -width "1234567890123" -compact
+.Pp
+.It Fl -copyright
+Prints the copyright notice.
+.Pp
+.It Fl -version
+Prints the version of Ruby interpreter.
+.Pp
+.It Fl 0 Ns Op Ar octal
+(The digit
+.Dq zero . )
+Specifies the input record separator
+.Pf ( Li "$/" )
+as an octal number. If no digit is given, the null character is taken
+as the separator. Other switches may follow the digits.
+.Fl 00
+turns Ruby into paragraph mode.
+.Fl 0777
+makes Ruby read whole file at once as a single string since there is
+no legal character with that value.
+.Pp
+.It Fl C Ar directory
+.It Fl X Ar directory
+Causes Ruby to switch to the directory.
+.Pp
+.It Fl E Ar external Ns Op : Ns Ar internal
+.It Fl -encoding Ar external Ns Op : Ns Ar internal
+Specifies the default value(s) for external encodings and internal encoding. Values should be separated with colon (:).
+.Pp
+You can omit the one for internal encodings, then the value
+.Pf ( Li "Encoding.default_internal" ) will be nil.
+.Pp
+.It Fl -external-encoding Ns = Ns Ar encoding
+.It Fl -internal-encoding Ns = Ns Ar encoding
+Specify the default external or internal character encoding
+.Pp
+.It Fl F Ar pattern
+Specifies input field separator
+.Pf ( Li "$;" ) .
+.Pp
+.It Fl I Ar directory
+Used to tell Ruby where to load the library scripts. Directory path
+will be added to the load-path variable
+.Pf ( Li "$:" ) .
+.Pp
+.It Fl K Ar kcode
+Specifies KANJI (Japanese) encoding. The default value for script encodings
+.Pf ( Li "__ENCODING__" ) and external encodings ( Li "Encoding.default_external" ) will be the specified one.
+.Ar kcode
+can be one of
+.Bl -hang -offset indent
+.It Sy e
+EUC-JP
+.Pp
+.It Sy s
+Windows-31J (CP932)
+.Pp
+.It Sy u
+UTF-8
+.Pp
+.It Sy n
+ASCII-8BIT (BINARY)
+.El
+.Pp
+.It Fl S
+Makes Ruby use the
+.Ev PATH
+environment variable to search for script, unless its name begins
+with a slash. This is used to emulate
+.Li #!
+on machines that don't support it, in the following manner:
+.Bd -literal -offset indent
+#! /usr/local/bin/ruby
+# This line makes the next one a comment in Ruby \e
+ exec /usr/local/bin/ruby -S $0 $*
+.Ed
+.Pp
+.It Fl T Ns Op Ar level=1
+Turns on taint checks at the specified level (default 1).
+.Pp
+.It Fl U
+Sets the default value for internal encodings
+.Pf ( Li "Encoding.default_internal" ) to UTF-8.
+.Pp
+.It Fl W Ns Op Ar level=2
+Turns on verbose mode at the specified level without printing the version
+message at the beginning. The level can be;
+.Bl -hang -offset indent
+.It Sy 0
+Verbose mode is "silence". It sets the
+.Li "$VERBOSE"
+to nil.
+.Pp
+.It Sy 1
+Verbose mode is "medium". It sets the
+.Li "$VERBOSE"
+to false.
+.Pp
+.It Sy 2 (default)
+Verbose mode is "verbose". It sets the
+.Li "$VERBOSE"
+to true.
+.Fl W Ns
+2 is same as
+.Fl w
+.
+.El
+.Pp
+.It Fl a
+Turns on auto-split mode when used with
+.Fl n
+or
+.Fl p .
+In auto-split mode, Ruby executes
+.Dl $F = $_.split
+at beginning of each loop.
+.Pp
+.It Fl c
+Causes Ruby to check the syntax of the script and exit without
+executing. If there are no syntax errors, Ruby will print
+.Dq Syntax OK
+to the standard output.
+.Pp
+.It Fl d
+.It Fl -debug
+Turns on debug mode.
+.Li "$DEBUG"
+will be set to true.
+.Pp
+.It Fl e Ar command
+Specifies script from command-line while telling Ruby not to search
+the rest of the arguments for a script file name.
+.Pp
+.It Fl h
+.It Fl -help
+Prints a summary of the options.
+.Pp
+.It Fl i Ar extension
+Specifies in-place-edit mode. The extension, if specified, is added
+to old file name to make a backup copy. For example:
+.Bd -literal -offset indent
+% 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
+.Ed
+.Pp
+.It Fl l
+(The lowercase letter
+.Dq ell . )
+Enables automatic line-ending processing, which means to firstly set
+.Li "$\e"
+to the value of
+.Li "$/" ,
+and secondly chops every line read using
+.Li chop! .
+.Pp
+.It Fl n
+Causes Ruby to assume the following loop around your script, which
+makes it iterate over file name arguments somewhat like
+.Nm sed
+.Fl n
+or
+.Nm awk .
+.Bd -literal -offset indent
+while gets
+ ...
+end
+.Ed
+.Pp
+.It Fl p
+Acts mostly same as -n switch, but print the value of variable
+.Li "$_"
+at the each end of the loop. For example:
+.Bd -literal -offset indent
+% echo matz | ruby -p -e '$_.tr! "a-z", "A-Z"'
+MATZ
+.Ed
+.Pp
+.It Fl r Ar library
+Causes Ruby to load the library using require. It is useful when using
+.Fl n
+or
+.Fl p .
+.Pp
+.It Fl s
+Enables some switch parsing for switches after script name but before
+any file name arguments (or before a
+.Fl - ) .
+Any switches found there are removed from
+.Li ARGV
+and set the corresponding variable in the script. For example:
+.Bd -literal -offset indent
+#! /usr/local/bin/ruby -s
+# prints "true" if invoked with `-xyz' switch.
+print "true\en" if $xyz
+.Ed
+.Pp
+On some systems
+.Li "$0"
+does not always contain the full pathname, so you need the
+.Fl S
+switch to tell Ruby to search for the script if necessary (to handle embedded
+spaces and such). A better construct than
+.Li "$*"
+would be
+.Li ${1+"$@"} ,
+but it does not work if the script is being interpreted by
+.Xr csh 1 .
+.Pp
+.It Fl v
+Enables verbose mode. Ruby will print its version at the beginning
+and set the variable
+.Li "$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.
+.Pp
+.It Fl w
+Enables verbose mode without printing version message at the
+beginning. It sets the
+.Li "$VERBOSE"
+variable to true.
+.Pp
+.It Fl x Ns Op Ar directory
+Tells Ruby that the script is embedded in a message. Leading garbage
+will be discarded until the first line that starts with
+.Dq #!
+and contains the string,
+.Dq ruby .
+Any meaningful switches on that line will be applied. The end of the script
+must be specified with either
+.Li EOF ,
+.Li "^D" ( Li "control-D" ) ,
+.Li "^Z" ( Li "control-Z" ) ,
+or the reserved word
+.Li __END__ .
+If the directory name is specified, Ruby will switch to that directory
+before executing script.
+.Pp
+.It Fl y
+.It Fl -yydebug
+DO NOT USE.
+.Pp
+Turns on compiler debug mode. Ruby will print a bunch of internal
+state messages during compilation. Only specify this switch you are going to
+debug the Ruby interpreter.
+.Pp
+.It Fl -disable- Ns Ar FEATURE
+.It Fl -enable- Ns Ar FEATURE
+Disables (or enables) the specified
+.Ar FEATURE Ns
+\&.
+.Bl -tag -width "--disable-rubyopt" -compact
+.It Fl -disable-gems
+.It Fl -enable-gems
+Disables (or enables) RubyGems libraries. By default, Ruby will load the latest
+version of each installed gem. The
+.Li Gem
+constant is true if RubyGems is enabled, false if otherwise.
+.Pp
+.It Fl -disable-rubyopt
+.It Fl -enable-rubyopt
+Ignores (or considers) the
+.Ev RUBYOPT
+environment variable. By default, Ruby considers the variable.
+.Pp
+.It Fl -disable-all
+.It Fl -enable-all
+Disables (or enables) all features.
+.Pp
+.El
+.Pp
+.It Fl -dump Ns = Ns Ar target
+DO NOT USE.
+.Pp
+Prints the specified target.
+.Ar target
+can be one of;
+.Bl -hang -offset indent
+.It Sy insns
+disassembled instructions
+.Pp
+.El
+.Pp
+Only specify this switch if you are going to debug the Ruby interpreter.
+.Pp
+.It Fl -verbose
+Enables verbose mode without printing version message at the
+beginning. It sets the
+.Li "$VERBOSE"
+variable to true.
+If this switch is given, and no other switches are present, Ruby quits
+after printing its version.
+.El
+.Pp
+.Sh ENVIRONMENT
+.Bl -tag -width "RUBYSHELL" -compact
+.It Ev RUBYLIB
+A colon-separated list of directories that are added to Ruby's
+library load path
+.Pf ( Li "$:" ) . Directories from this environment variable are searched
+before the standard load path is searched.
+.Pp
+e.g.:
+.Dl RUBYLIB="$HOME/lib/ruby:$HOME/lib/rubyext"
+.Pp
+.It Ev RUBYOPT
+Additional Ruby options.
+.Pp
+e.g.
+.Dl RUBYOPT="-w -Ke"
+.Pp
+Note that RUBYOPT can contain only
+.Fl d , Fl E , Fl I , Fl K , Fl r , Fl T , Fl U , Fl v , Fl w , Fl W, Fl -debug ,
+.Fl -disable- Ns Ar FEATURE
+and
+.Fl -enable- Ns Ar FEATURE .
+.Pp
+.It Ev RUBYPATH
+A colon-separated list of directories that Ruby searches for
+Ruby programs when the
+.Fl S
+flag is specified. This variable precedes the
+.Ev PATH
+environment variable.
+.Pp
+.It Ev RUBYSHELL
+The path to the system shell command. This environment variable is
+enabled for only mswin32, mingw32, and OS/2 platforms. If this
+variable is not defined, Ruby refers to
+.Ev COMSPEC .
+.Pp
+.It Ev PATH
+Ruby refers to the
+.Ev PATH
+environment variable on calling Kernel#system.
+.El
+.Pp
+And Ruby depends on some RubyGems related environment variables unless RubyGems is disabled.
+See the help of
+.Xr gem 1
+as below.
+.Bd -literal -offset indent
+% gem help
+.Ed
+.Pp
+.Sh GC ENVIRONMENT
+The Ruby garbage collector (GC) tracks objects in fixed-sized slots,
+but each object may have auxillary memory allocations handled by the
+malloc family of C standard library calls (
+.Xr malloc 3 ,
+.Xr calloc 3 ,
+and
+.Xr realloc 3 ) .
+In this documentatation, the "heap" refers to the Ruby object heap
+of fixed-sized slots, while "malloc" refers to auxillary
+allocations commonly referred to as the "process heap".
+Thus there are at least two possible ways to trigger GC:
+.Bl -hang -offset indent
+.It Sy 1
+Reaching the object limit.
+.It Sy 2
+Reaching the malloc limit.
+.Pp
+.El
+In Ruby 2.1, the generational GC was introduced and the limits are divided
+into young and old generations, providing two additional ways to trigger
+a GC:
+.Bl -hang -offset indent
+.It Sy 3
+Reaching the old object limit.
+.It Sy 4
+Reaching the old malloc limit.
+.El
+.Pp
+There are currently 4 possible areas where the GC may be tuned by
+the the following 11 environment variables:
+.Bl -hang -compact -width "RUBY_GC_OLDMALLOC_LIMIT_GROWTH_FACTOR"
+.It Ev RUBY_GC_HEAP_INIT_SLOTS
+Initial allocation slots. Introduced in Ruby 2.1, default: 10000.
+.Pp
+.It Ev RUBY_GC_HEAP_FREE_SLOTS
+Prepare at least this amount of slots after GC.
+Allocate this number slots if there are not enough slots.
+Introduced in Ruby 2.1, default: 4096
+.Pp
+.It Ev RUBY_GC_HEAP_GROWTH_FACTOR
+Increase allocation rate of heap slots by this factor.
+Introduced in Ruby 2.1, default: 1.8, minimum: 1.0 (no growth)
+.Pp
+.It Ev RUBY_GC_HEAP_GROWTH_MAX_SLOTS
+Allocation rate is limited to this number of slots,
+preventing excessive allocation due to RUBY_GC_HEAP_GROWTH_FACTOR.
+Introduced in Ruby 2.1, default: 0 (no limit)
+.Pp
+.It Ev RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR
+Perform a full GC when the number of old objects is more than R * N,
+where R is this factor and N is the number of old objects after the
+last full GC.
+Introduced in Ruby 2.1.1, default: 2.0
+.Pp
+.It Ev RUBY_GC_MALLOC_LIMIT
+The initial limit of young generation allocation from the malloc-family.
+GC will start when this limit is reached.
+Default: 16MB
+.Pp
+.It Ev RUBY_GC_MALLOC_LIMIT_MAX
+The maximum limit of young generation allocation from malloc before GC starts.
+Prevents excessive malloc growth due to RUBY_GC_MALLOC_LIMIT_GROWTH_FACTOR.
+Introduced in Ruby 2.1, default: 32MB.
+.Pp
+.It Ev RUBY_GC_MALLOC_LIMIT_GROWTH_FACTOR
+Increases the limit of young generation malloc calls, reducing
+GC frequency but increasing malloc growth until RUBY_GC_MALLOC_LIMIT_MAX
+is reached.
+Introduced in Ruby 2.1, default: 1.4, minimum: 1.0 (no growth)
+.Pp
+.It Ev RUBY_GC_OLDMALLOC_LIMIT
+The initial limit of old generation allocation from malloc,
+a full GC will start when this limit is reached.
+Introduced in Ruby 2.1, default: 16MB
+.Pp
+.It Ev RUBY_GC_OLDMALLOC_LIMIT_MAX
+The maximum limit of old generation allocation from malloc before a
+full GC starts.
+Prevents excessive malloc growth due to RUBY_GC_OLDMALLOC_LIMIT_GROWTH_FACTOR.
+Introduced in Ruby 2.1, default: 128MB
+.Pp
+.It Ev RUBY_GC_OLDMALLOC_LIMIT_GROWTH_FACTOR
+Increases the limit of old generation malloc allocation, reducing full
+GC frequency but increasing malloc growth until RUBY_GC_OLDMALLOC_LIMIT_MAX
+is reached.
+Introduced in Ruby 2.1, default: 1.2, minimum: 1.0 (no growth)
+.Pp
+.El
+.Sh STACK SIZE ENVIRONMENT
+Stack size environment variables are implementation-dependent and
+subject to change with different versions of Ruby. The VM stack is used
+for pure-Ruby code and managed by the virtual machine. Machine stack is
+used by the operating system and its usage is dependent on C extensions
+as well as C compiler options. Using lower values for these may allow
+applications to keep more Fibers or Threads running; but increases the
+chance of SystemStackError exceptions and segmentation faults (SIGSEGV).
+These environment variables are available since Ruby 2.0.0.
+All values are specified in bytes.
+.Pp
+.Bl -hang -compact -width "RUBY_THREAD_MACHINE_STACK_SIZE"
+.It Ev RUBY_THREAD_VM_STACK_SIZE
+VM stack size used at thread creation.
+default: 131072 (32-bit CPU) or 262144 (64-bit)
+.Pp
+.It Ev RUBY_THREAD_MACHINE_STACK_SIZE
+Machine stack size used at thread creation.
+default: 524288 or 1048575
+.Pp
+.It Ev RUBY_FIBER_VM_STACK_SIZE
+VM stack size used at fiber creation.
+default: 65536 or 131072
+.Pp
+.It Ev RUBY_FIBER_MACHINE_STACK_SIZE
+Machine stack size used at fiber creation.
+default: 262144 or 524288
+.Pp
+.El
+.Sh SEE ALSO
+.Bl -hang -compact -width "http://www.ruby-lang.org/123"
+.It https://www.ruby-lang.org/
+The official web site.
+.It https://www.ruby-toolbox.com/
+Comprehensive catalog of Ruby libraries.
+.El
+.Pp
+.Sh REPORTING BUGS
+.Bl -bullet
+.Li Security vulnerabilities should be reported via an email to
+.Aq security@ruby-lang.org Ns
+.Li .
+Reported problems will be published after they've been fixed.
+.Pp
+.Li And you can report other bugs and feature requests via the
+Ruby Issue Tracking System (https://bugs.ruby-lang.org/).
+Do not report security vulnerabilities
+via the system because it publishes the vulnerabilities immediately.
+.El
+.Sh AUTHORS
+Ruby is designed and implemented by
+.An Yukihiro Matsumoto Aq matz@netlab.jp .
+.Pp
+See
+.Aq Pa https://bugs.ruby-lang.org/projects/ruby/wiki/Contributors
+for contributors to Ruby.