Extended maintenance of Ruby 1.9.3 ended on February 23, 2015. Read more

In Files

  • rdoc.rb
  • rdoc/alias.rb
  • rdoc/anon_class.rb
  • rdoc/any_method.rb
  • rdoc/attr.rb
  • rdoc/class_module.rb
  • rdoc/code_object.rb
  • rdoc/constant.rb
  • rdoc/context.rb
  • rdoc/cross_reference.rb
  • rdoc/encoding.rb
  • rdoc/erbio.rb
  • rdoc/generator.rb
  • rdoc/generator/darkfish.rb
  • rdoc/generator/markup.rb
  • rdoc/generator/ri.rb
  • rdoc/ghost_method.rb
  • rdoc/include.rb
  • rdoc/known_classes.rb
  • rdoc/markup.rb
  • rdoc/markup/attribute_manager.rb
  • rdoc/markup/blank_line.rb
  • rdoc/markup/document.rb
  • rdoc/markup/formatter.rb
  • rdoc/markup/formatter_test_case.rb
  • rdoc/markup/heading.rb
  • rdoc/markup/indented_paragraph.rb
  • rdoc/markup/inline.rb
  • rdoc/markup/list.rb
  • rdoc/markup/list_item.rb
  • rdoc/markup/paragraph.rb
  • rdoc/markup/parser.rb
  • rdoc/markup/pre_process.rb
  • rdoc/markup/raw.rb
  • rdoc/markup/rule.rb
  • rdoc/markup/text_formatter_test_case.rb
  • rdoc/markup/to_ansi.rb
  • rdoc/markup/to_bs.rb
  • rdoc/markup/to_html.rb
  • rdoc/markup/to_html_crossref.rb
  • rdoc/markup/to_rdoc.rb
  • rdoc/markup/to_test.rb
  • rdoc/markup/to_tt_only.rb
  • rdoc/markup/verbatim.rb
  • rdoc/meta_method.rb
  • rdoc/method_attr.rb
  • rdoc/normal_class.rb
  • rdoc/normal_module.rb
  • rdoc/options.rb
  • rdoc/parser.rb
  • rdoc/parser/c.rb
  • rdoc/parser/ruby.rb
  • rdoc/parser/ruby_tools.rb
  • rdoc/parser/simple.rb
  • rdoc/rdoc.rb
  • rdoc/require.rb
  • rdoc/ri.rb
  • rdoc/ri/driver.rb
  • rdoc/ri/formatter.rb
  • rdoc/ri/paths.rb
  • rdoc/ri/store.rb
  • rdoc/ruby_lex.rb
  • rdoc/ruby_token.rb
  • rdoc/rubygems_hook.rb
  • rdoc/single_class.rb
  • rdoc/stats.rb
  • rdoc/stats/normal.rb
  • rdoc/stats/quiet.rb
  • rdoc/stats/verbose.rb
  • rdoc/task.rb
  • rdoc/text.rb
  • rdoc/token_stream.rb
  • rdoc/top_level.rb

Class/Module Index [+]

Quicksearch

RDoc

RDoc is a Ruby documentation system which contains RDoc::RDoc for generating documentation, RDoc::RI for interactive documentation and RDoc::Markup for text markup.

RDoc::RDoc produces documentation for Ruby source files. It works similarly to JavaDoc, parsing the source and extracting the definition for classes, modules, methods, includes and requires. It associates these with optional documentation contained in an immediately preceding comment block then renders the result using an output formatter.

RDoc::Markup that converts plain text into various output formats. The markup library is used to interpret the comment blocks that RDoc uses to document methods, classes, and so on.

RDoc::RI implements the ri command-line tool which displays on-line documentation for ruby classes, methods, etc. ri features several output formats and an interactive mode (ri -i). See ri --help for further details.

Roadmap

  • If you want to use RDoc to create documentation for your Ruby source files, see RDoc::Markup and refer to rdoc --help for command line usage.

  • If you want to write documentation for Ruby files see RDoc::Parser::Ruby

  • If you want to write documentation for extensions written in C see RDoc::Parser::C

  • If you want to generate documentation using rake see RDoc::Task.

  • If you want to drive RDoc programmatically, see RDoc::RDoc.

  • If you want to use the library to format text blocks into HTML, look at RDoc::Markup.

  • If you want to make an RDoc plugin such as a generator or directive handler see RDoc::RDoc.

  • If you want to write your own output generator see RDoc::Generator.

Summary

Once installed, you can create documentation using the rdoc command

% rdoc [options] [names...]

For an up-to-date option summary, type

%Q rdoc --help

A typical use might be to generate documentation for a package of Ruby source (such as RDoc itself).

% rdoc

This command generates documentation for all the Ruby and C source files in and below the current directory. These will be stored in a documentation tree starting in the subdirectory doc.

You can make this slightly more useful for your readers by having the index page contain the documentation for the primary file. In our case, we could type

% rdoc --main README.txt

You’ll find information on the various formatting tricks you can use in comment blocks in the documentation this generates.

RDoc uses file extensions to determine how to process each file. File names ending .rb and .rbw are assumed to be Ruby source. Files ending .c are parsed as C files. All other files are assumed to contain just Markup-style markup (with or without leading '#' comment markers). If directory names are passed to RDoc, they are scanned recursively for C and Ruby source files only.

Other stuff

RDoc is currently being maintained by Eric Hodel <drbrain@segment7.net>.

Dave Thomas <dave@pragmaticprogrammer.com> is the original author of RDoc.

Credits

  • The Ruby parser in rdoc/parse.rb is based heavily on the outstanding work of Keiju ISHITSUKA of Nippon Rational Inc, who produced the Ruby parser for irb and the rtags package.

Constants

ATTR_MODIFIERS

RDoc modifiers for attributes

CLASS_MODIFIERS

RDoc modifiers for classes

CONSTANT_MODIFIERS

RDoc modifiers for constants

DOT_DOC_FILENAME

Name of the dotfile that contains the description of files to be processed in the current directory

GENERAL_MODIFIERS

General RDoc modifiers

KNOWN_CLASSES

Ruby’s built-in classes, modules and exceptions

METHOD_MODIFIERS

RDoc modifiers for methods

VERSION

RDoc version you are using

VISIBILITIES

Method visibilities

Commenting is here to help enhance the documentation. For example, code samples, or clarification of the documentation.

If you have questions about Ruby or the documentation, please post to one of the Ruby mailing lists. You will get better, faster, help that way.

If you wish to post a correction of the docs, please do so, but also file bug report so that it can be corrected for the next release. Thank you.

If you want to help improve the Ruby documentation, please visit Documenting-ruby.org.