Ri

So, I loaded Ruby on a NetBSD box, using whatever the defaults are
for NetBSD's pkgsrc system.

I have 'ri', but it doesn't know about any of the standard library
classes or built-ins. So, "ri Array" says it's never heard of it,
same with "ri CGI". Addons (gems, for instance) all show up fine.

Before I go a-debugging: Is this normal?

-s

# I have 'ri', but it doesn't know about any of the standard library
# classes or built-ins. So, "ri Array" says it's never heard of it,
# same with "ri CGI".

it should.

root@pc4all:~# qri Array
----------------------------------------------------------- Class: Array
     Arrays are ordered, integer-indexed collections of any object.
     Array indexing starts at 0, as in C or Java. A negative index is
     assumed to be relative to the end of the array---that is, an index
     of -1 indicates the last element of the array, -2 is the next to
     last element in the array, and so on.

···

From: seebs@seebs.net [mailto:seebs@seebs.net]

------------------------------------------------------------------------

Includes:
     Enumerable(all?, any?, collect, detect, each_cons, each_slice,
     each_with_index, entries, enum_cons, enum_slice, enum_with_index,
     find, find_all, grep, include?, inject, map, max, member?, min,
     partition, reject, select, sort, sort_by, to_a, to_set, zip)
[snip]

works here on my linux and windows boxes.
kind regards -botp

Does ri know the path to your docs ?

ri looks in a few places by default: the system's docs, the site docs (in an ri directory) and user docs (in a hidden dot dir in user's home dir).

Mine look like this on OS X :
/usr/local/share/ri/1.8/site
/usr/local/share/ri/1.8/system

I could have (local only to my home dir) but don't have :
~/.rdoc/

To find your data directory:
ruby -r rbconfig -e 'p Config::CONFIG["datadir"]'

Mine is :
/usr/local/share/

This is the same location as my system's man pages.

You may have to add docs to ri yourself. (it seems...)
you need to run rdoc

One file at a time:

rdoc --ri filename.rb filename2.rb

Ruby's standard library and built in classes and modules:

rdoc --ri-system

(need to be in the Ruby source code directory, probably: /lib
   maybe /lib/ruby )

···

On May 11, 2007, at 12:16 PM, Peña, Botp wrote:

From: seebs@seebs.net [mailto:seebs@seebs.net]
# I have 'ri', but it doesn't know about any of the standard library
# classes or built-ins. So, "ri Array" says it's never heard of it,
# same with "ri CGI".

it should.

root@pc4all:~# qri Array
----------------------------------------------------------- Class: Array
     Arrays are ordered, integer-indexed collections of any object.
     Array indexing starts at 0, as in C or Java. A negative index is
     assumed to be relative to the end of the array---that is, an index
     of -1 indicates the last element of the array, -2 is the next to
     last element in the array, and so on.

------------------------------------------------------------------------

Includes:
     Enumerable(all?, any?, collect, detect, each_cons, each_slice,
     each_with_index, entries, enum_cons, enum_slice, enum_with_index,
     find, find_all, grep, include?, inject, map, max, member?, min,
     partition, reject, select, sort, sort_by, to_a, to_set, zip)
[snip]

works here on my linux and windows boxes.
kind regards -botp

Does ri know the path to your docs ?

It seems to.

This is the same location as my system's man pages.

Mine too.

You may have to add docs to ri yourself. (it seems...)
you need to run rdoc

Ruby's standard library and built in classes and modules:

rdoc --ri-system

(need to be in the Ruby source code directory, probably: /lib
  maybe /lib/ruby )=

I can't find a directory in which this doesn't say "No newer files".

More disturbingly, if I go into the source/lib directory and run, e.g.,
"rdoc cgi.rb", I can't figure out where the created file is GOING. Not,
in any event, into the system ri directory, or anywhere that 'ri CGI'
can find it.

Ahh! Going into the build directory and running 'make install-doc'
has fixed it. I'll send a bug report to the NetBSD package maintainer
that this ought to be at least an option for the package, and probably
the default.

-s

···

In message <5C15F18F-CE04-4C9E-928C-3A7C1E36DE92@gmail.com>, John Joyce writes:

Sometimes packages are unreliable. It's a pain, but manual installs get you the details (no choice but details!). Especially since many systems are so similar yet different.

···

On May 11, 2007, at 1:20 PM, Peter Seebach wrote:

In message <5C15F18F-CE04-4C9E-928C-3A7C1E36DE92@gmail.com>, John > Joyce writes:

Does ri know the path to your docs ?

It seems to.

This is the same location as my system's man pages.

Mine too.

You may have to add docs to ri yourself. (it seems...)
you need to run rdoc

Ruby's standard library and built in classes and modules:

rdoc --ri-system

(need to be in the Ruby source code directory, probably: /lib
  maybe /lib/ruby )=

I can't find a directory in which this doesn't say "No newer files".

More disturbingly, if I go into the source/lib directory and run, e.g.,
"rdoc cgi.rb", I can't figure out where the created file is GOING. Not,
in any event, into the system ri directory, or anywhere that 'ri CGI'
can find it.

Ahh! Going into the build directory and running 'make install-doc'
has fixed it. I'll send a bug report to the NetBSD package maintainer
that this ought to be at least an option for the package, and probably
the default.

-s