Re: 'rtfm' script

1999-07-08 Thread Doug
On Tue, 6 Jul 1999, Alex Zepeda wrote:

 On Tue, 6 Jul 1999, Brian F. Feldman wrote:
 
  RTFM isn't a newby-apparent term. Name it help(1).
 
 Sure it is.  Some hapless newbie wanders into #FreeBDS on efnet, and asks
 an already answered question.  Aside from a kick, and a possible ban,
 they're likely to be met with a chorus of rtfm, which in all likelyhood
 would prompt the inquisitive newbie to try and run rtfm.

So the whole script is the punch line to a bad joke?  I'm all for
improving user documentation, but I keep getting mixed answers as to what
this script is for. One answer is that it's so people will have something
to do when they are so new and foolish as to believe that 'rtfm' is a
command, the other answer is that this script/program/whatever is designed
to do a bunch of help file searching that the user could (and probably
should be) do themselves. 

I'd like to make a suggestion which might help both goals, and
save some time. Instead of making a program to do the searching for the
user, why not write a man page for 'rtfm' that describes the many
resources available and how to use them? Then the actual rtfm command
could be a short program that just calls up the man page. It's not as
glamorous, but IMO it will be more useful.

Doug
-- 
On account of being a democracy and run by the people, we are the only
nation in the world that has to keep a government four years, no matter
what it does.
-- Will Rogers



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Searching the Handbook (was Re: 'rtfm script')

1999-07-07 Thread Nik Clayton

On Tue, Jul 06, 1999 at 04:57:08PM -0500, Chris Costello wrote:
 On Tue, Jul 6, 1999, Nik Clayton wrote:
  There are a couple of ways you could do it.  Some of them more optimal 
  than others.
  
 Executive summary:  sgrep is probably your best choice now, which can
 can be found at URL:http://www.cs.helsinki.fi/~jjaakkol/sgrep.html. 
 But read on for more.
  
  The simplest way is to assume that the user has the plain text handbook
  installed, and do a simple grep through that for what you're looking for.
 
See the FAQ parser.  I want to be able to get meaningful
 output for users.  sgrep is also not viable because it's not in
 the default system.

Neither is rtfm(1) yet.  Why not put them in ports, publicise them in the
FAQ (OK, I realise that's a bit of a chicken/egg problem), lobby JKH to get
it mentioned when installing the system, publicise it on the -newbie's list,
and so on.

I'd be surprised if this was something that was bought in to the system
straight away -- pushing it through ports first seems like the natural way
to do it.
 
  This is nice and easy to do, but doesn't take advantage of the additional
  smarts built in to the Handbook's native format.  To do that requires some
  additional work.
 
The handbook's native format won't be on the default system,
 will it?  They're all in HTML.

You are in a maze of twist future plans, all different.

I want to pull the Handbook (and other documentation, like the FAQ) out
of the system as it currently stands.  Instead, these should be packages,
and available in a variety of different formats. 

At install time, sysinstall can present the user with a list of 
documentation options they want (including "All docs, all formats"), which
will just pkg_add(1) the appropriate files.

This doesn't work yet, because I haven't put the code to build the packages
in to the doc/ Makefiles yet.  If anyone wants to collabotate on this (or,
better yet, present me with code that does it) please stand up and be 
counted.

  A smart searching mechanism will be able to use this additional semantic
  information to reject (or lower the rankings of) results that don't match
  what the user wanted.
 
See above.  I want rtfm(1) to remain viable on base installs.

I'm not sure you do.  You want rtfm(1) to remain viable on "newbie" installs.
With a "base" install you can't even count on the manual pages being 
available.
 
  You could go the full SGML route.  This would involve building an 
  application that can parse the DocBook source of the Handbook (and other
  articles, and soon to be the FAQ) and allow the user to do their queries
  using this application.  This is probably the most 'correct' route from
  a purist point of view, but is an awful lot of work.
 
If the FAQ is to be DocBook-ified, will the SGML sources be
 made availible via HTTP so rtfm(1) can still cleanly parse them
 with a minor rewrite of the FAQ section?

Yes, you could do it that way.  I prefer the package approach, where 
you'll have packages like

fdp-books-faq-html.tgz
fdp-books-faq-sgml.tgz
fdp-books-faq-html-split.tgz
fdp-books-faq-xml.tgz
fdp-books-faq-rtf.tgz

and so on.  Makes it vastly easier for tools like yours to say

  In order to have the greatest chance of finding what you want, you need
  to install the SGML sources for the FAQ.  If you do not install these
  sources your searches will still work, but have a greater chance of
  returning false hits.

  The SGML source will take up roughly 500KB of disk space.

  Do you want to install the FAQ SGML source now? [Y]: 

As I say, for this to work we need to build packages from the doc/ 
repository -- I haven't had the time to investigate doing this yet.

N
-- 
--+==[ Systems Administrator, Year 2000 Test Lab, Lehman Brothers, Inc. ]==+--
--+==[  1 Broadgate, London, EC2M 7HA 0171-601-0011 x5514   ]==+--
--+==[  Year 2000 Testing: It's about time. . . ]==+--


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-07 Thread Wes Peters

Bill Fumerola wrote:
 
 On Tue, 6 Jul 1999, Brian F. Feldman wrote:
 
  Thanks! But still, I don't think rtfm is very appropriate... Can we look
  for something better, more obvious? Or perhaps it would be in the motd
  like /stand/sysinstall is people would need to be aware of this.
 
 it can be called anything. the new user isn't going to know it unless
 refered to it. (or unless there is a question mark to click)

Now there's an idea!  Someone wanna code up wmrtfm real quick?  It should
start an rxvt (if available) or xterm running rtfm on strings that are
dropped onto or pasted into the dock icon.

You know, being a program designer is a WHOLE lot easier than being a
programmer.  ;^)

-- 
"Where am I, and what am I doing in this handbasket?"

Wes Peters Softweyr LLC
http://softweyr.com/   [EMAIL PROTECTED]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-07 Thread Mark J. Taylor

Put it in the ".login" or /etc/csh.login (etc.) file.
They'll see it every time they log in.



-Mark Taylor
NetMAX Developer
[EMAIL PROTECTED]
http://www.netmax.com/



Wes Peters wrote:
 
 Bill Fumerola wrote:
 
  On Tue, 6 Jul 1999, Brian F. Feldman wrote:
 
   Thanks! But still, I don't think rtfm is very appropriate... Can we look
   for something better, more obvious? Or perhaps it would be in the motd
   like /stand/sysinstall is people would need to be aware of this.
 
  it can be called anything. the new user isn't going to know it unless
  refered to it. (or unless there is a question mark to click)
 
 Now there's an idea!  Someone wanna code up wmrtfm real quick?  It should
 start an rxvt (if available) or xterm running rtfm on strings that are
 dropped onto or pasted into the dock icon.
 
 You know, being a program designer is a WHOLE lot easier than being a
 programmer.  ;^)
 
 --
 "Where am I, and what am I doing in this handbasket?"
 
 Wes Peters Softweyr LLC
 http://softweyr.com/   [EMAIL PROTECTED]
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with "unsubscribe freebsd-hackers" in the body of the message


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Searching the Handbook (was Re: 'rtfm script')

1999-07-07 Thread Nik Clayton
On Tue, Jul 06, 1999 at 04:57:08PM -0500, Chris Costello wrote:
 On Tue, Jul 6, 1999, Nik Clayton wrote:
  There are a couple of ways you could do it.  Some of them more optimal 
  than others.
  
 Executive summary:  sgrep is probably your best choice now, which can
 can be found at URL:http://www.cs.helsinki.fi/~jjaakkol/sgrep.html. 
 But read on for more.
  
  The simplest way is to assume that the user has the plain text handbook
  installed, and do a simple grep through that for what you're looking for.
 
See the FAQ parser.  I want to be able to get meaningful
 output for users.  sgrep is also not viable because it's not in
 the default system.

Neither is rtfm(1) yet.  Why not put them in ports, publicise them in the
FAQ (OK, I realise that's a bit of a chicken/egg problem), lobby JKH to get
it mentioned when installing the system, publicise it on the -newbie's list,
and so on.

I'd be surprised if this was something that was bought in to the system
straight away -- pushing it through ports first seems like the natural way
to do it.
 
  This is nice and easy to do, but doesn't take advantage of the additional
  smarts built in to the Handbook's native format.  To do that requires some
  additional work.
 
The handbook's native format won't be on the default system,
 will it?  They're all in HTML.

You are in a maze of twist future plans, all different.

I want to pull the Handbook (and other documentation, like the FAQ) out
of the system as it currently stands.  Instead, these should be packages,
and available in a variety of different formats. 

At install time, sysinstall can present the user with a list of 
documentation options they want (including All docs, all formats), which
will just pkg_add(1) the appropriate files.

This doesn't work yet, because I haven't put the code to build the packages
in to the doc/ Makefiles yet.  If anyone wants to collabotate on this (or,
better yet, present me with code that does it) please stand up and be 
counted.

  A smart searching mechanism will be able to use this additional semantic
  information to reject (or lower the rankings of) results that don't match
  what the user wanted.
 
See above.  I want rtfm(1) to remain viable on base installs.

I'm not sure you do.  You want rtfm(1) to remain viable on newbie installs.
With a base install you can't even count on the manual pages being 
available.
 
  You could go the full SGML route.  This would involve building an 
  application that can parse the DocBook source of the Handbook (and other
  articles, and soon to be the FAQ) and allow the user to do their queries
  using this application.  This is probably the most 'correct' route from
  a purist point of view, but is an awful lot of work.
 
If the FAQ is to be DocBook-ified, will the SGML sources be
 made availible via HTTP so rtfm(1) can still cleanly parse them
 with a minor rewrite of the FAQ section?

Yes, you could do it that way.  I prefer the package approach, where 
you'll have packages like

fdp-books-faq-html.tgz
fdp-books-faq-sgml.tgz
fdp-books-faq-html-split.tgz
fdp-books-faq-xml.tgz
fdp-books-faq-rtf.tgz

and so on.  Makes it vastly easier for tools like yours to say

  In order to have the greatest chance of finding what you want, you need
  to install the SGML sources for the FAQ.  If you do not install these
  sources your searches will still work, but have a greater chance of
  returning false hits.

  The SGML source will take up roughly 500KB of disk space.

  Do you want to install the FAQ SGML source now? [Y]: 

As I say, for this to work we need to build packages from the doc/ 
repository -- I haven't had the time to investigate doing this yet.

N
-- 
--+==[ Systems Administrator, Year 2000 Test Lab, Lehman Brothers, Inc. ]==+--
--+==[  1 Broadgate, London, EC2M 7HA 0171-601-0011 x5514   ]==+--
--+==[  Year 2000 Testing: It's about time. . . ]==+--


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-07 Thread Bill Fumerola
On Tue, 6 Jul 1999, Brian F. Feldman wrote:

 Thanks! But still, I don't think rtfm is very appropriate... Can we look
 for something better, more obvious? Or perhaps it would be in the motd
 like /stand/sysinstall is people would need to be aware of this.

it can be called anything. the new user isn't going to know it unless 
refered to it. (or unless there is a question mark to click)

- bill fumerola - bi...@chc-chimes.com - BF1560 - computer horizons corp -
- ph:(800) 252-2421 - bfume...@computerhorizons.com - bi...@freebsd.org  -





To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-07 Thread Wes Peters
Bill Fumerola wrote:
 
 On Tue, 6 Jul 1999, Brian F. Feldman wrote:
 
  Thanks! But still, I don't think rtfm is very appropriate... Can we look
  for something better, more obvious? Or perhaps it would be in the motd
  like /stand/sysinstall is people would need to be aware of this.
 
 it can be called anything. the new user isn't going to know it unless
 refered to it. (or unless there is a question mark to click)

Now there's an idea!  Someone wanna code up wmrtfm real quick?  It should
start an rxvt (if available) or xterm running rtfm on strings that are
dropped onto or pasted into the dock icon.

You know, being a program designer is a WHOLE lot easier than being a
programmer.  ;^)

-- 
Where am I, and what am I doing in this handbasket?

Wes Peters Softweyr LLC
http://softweyr.com/   w...@softweyr.com


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-07 Thread Chris Costello
On Wed, Jul 7, 1999, Wes Peters wrote:
 Now there's an idea!  Someone wanna code up wmrtfm real quick?  It should
 start an rxvt (if available) or xterm running rtfm on strings that are
 dropped onto or pasted into the dock icon.

   Wait until someone writes grtfm!  GNOME support, panel applet,
comes with Perl, C, C++, and Pascal bindings...

 You know, being a program designer is a WHOLE lot easier than being a
 programmer.  ;^)

   Most consumers are program designers.  I want it to control
my printer and my modem and I want it done NOW.

-- 
Chris Costelloch...@calldei.com
There are always at least two ways to program the same thing.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-07 Thread Mark J. Taylor
Put it in the .login or /etc/csh.login (etc.) file.
They'll see it every time they log in.



-Mark Taylor
NetMAX Developer
mtay...@cybernet.com
http://www.netmax.com/



Wes Peters wrote:
 
 Bill Fumerola wrote:
 
  On Tue, 6 Jul 1999, Brian F. Feldman wrote:
 
   Thanks! But still, I don't think rtfm is very appropriate... Can we look
   for something better, more obvious? Or perhaps it would be in the motd
   like /stand/sysinstall is people would need to be aware of this.
 
  it can be called anything. the new user isn't going to know it unless
  refered to it. (or unless there is a question mark to click)
 
 Now there's an idea!  Someone wanna code up wmrtfm real quick?  It should
 start an rxvt (if available) or xterm running rtfm on strings that are
 dropped onto or pasted into the dock icon.
 
 You know, being a program designer is a WHOLE lot easier than being a
 programmer.  ;^)
 
 --
 Where am I, and what am I doing in this handbasket?
 
 Wes Peters Softweyr 
 LLC
 http://softweyr.com/   
 w...@softweyr.com
 
 To Unsubscribe: send mail to majord...@freebsd.org
 with unsubscribe freebsd-hackers in the body of the message


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



RE: 'rtfm' script

1999-07-06 Thread Ladavac Marino

 -Original Message-
 From: Alex Zepeda [SMTP:[EMAIL PROTECTED]]
 Sent: Tuesday, July 06, 1999 4:43 AM
 To:   Chris Costello
 Cc:   [EMAIL PROTECTED]
 Subject:  Re: 'rtfm' script
 
 P.S. If you're looking for an easy to use regexp implementation, and
 aren't afraid of C++, check out Qt; if you're looking for more of a
 challenge, there's always the need for an rtsl(1) ;)
[ML]  BSD (donated by Henry Spencer) regexp is easy enough to
use (RTFM suffices, believe me) and even easier to port to platforms
which do not have it in libc[1]

/Marino

[1] If you ever wondered why Windows applications all use
different syntaxes for wildcard searches, if they support them at all,
now you know.  BTW, it took only two strategic unsigned's to shut the
VC++ warnings up--that's all the porting "effort" one needed to spend.

 - alex
 
 
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with "unsubscribe freebsd-hackers" in the body of the message


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Doug

I'm confused about this script. How does it differ from 'apropos'?

Feeling a little dense,

Doug
-- 
On account of being a democracy and run by the people, we are the only
nation in the world that has to keep a government four years, no matter
what it does.
-- Will Rogers



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Chris Costello

On Tue, Jul 6, 1999, Doug wrote:
   I'm confused about this script. How does it differ from 'apropos'?

   It differs in that it _uses_ apropos (or 'whatis' if you
specify the -e flag), as well as a Texinfo search, as well as a
FAQ search, using the FAQ pages at http://www.freebsd.org/FAQ/.
It's meant to be an information center for those just getting
started with FreeBSD.

 Doug

-- 
Chris Costello[EMAIL PROTECTED]
It's 10 o'clock.  Do you know where your child processes are?


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Brian F. Feldman

On Tue, 6 Jul 1999, Chris Costello wrote:

 On Tue, Jul 6, 1999, Doug wrote:
  I'm confused about this script. How does it differ from 'apropos'?
 
It differs in that it _uses_ apropos (or 'whatis' if you
 specify the -e flag), as well as a Texinfo search, as well as a
 FAQ search, using the FAQ pages at http://www.freebsd.org/FAQ/.
 It's meant to be an information center for those just getting
 started with FreeBSD.

RTFM isn't a newby-apparent term. Name it help(1).

 
  Doug
 
 -- 
 Chris Costello[EMAIL PROTECTED]
 It's 10 o'clock.  Do you know where your child processes are?
 
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with "unsubscribe freebsd-hackers" in the body of the message
 

 Brian Fundakowski Feldman  _ __ ___   ___ ___ ___  
 [EMAIL PROTECTED]   _ __ ___ | _ ) __|   \ 
 FreeBSD: The Power to Serve!_ __ | _ \._ \ |) |
   http://www.FreeBSD.org/  _ |___/___/___/ 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Chris Costello

On Tue, Jul 6, 1999, Brian F. Feldman wrote:
 RTFM isn't a newby-apparent term. Name it help(1).

   That would cause problems with bash users.  They already have
a builtin help command.

-- 
Chris Costello[EMAIL PROTECTED]
On a clear disk you can seek forever.  - Denning


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Brian F. Feldman

On Tue, 6 Jul 1999, Chris Costello wrote:

 On Tue, Jul 6, 1999, Brian F. Feldman wrote:
  RTFM isn't a newby-apparent term. Name it help(1).
 
That would cause problems with bash users.  They already have
 a builtin help command.

Which can be disabled in the bash port before the next release...
help(1) is really a much more appropriate name.

 
 -- 
 Chris Costello[EMAIL PROTECTED]
 On a clear disk you can seek forever.  - Denning
 
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with "unsubscribe freebsd-hackers" in the body of the message
 

 Brian Fundakowski Feldman  _ __ ___   ___ ___ ___  
 [EMAIL PROTECTED]   _ __ ___ | _ ) __|   \ 
 FreeBSD: The Power to Serve!_ __ | _ \._ \ |) |
   http://www.FreeBSD.org/  _ |___/___/___/ 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Brian F. Feldman

On Tue, 6 Jul 1999, Jordan K. Hubbard wrote:

  Which can be disabled in the bash port before the next release...
 
 No, that's a really stupid idea.

Thanks! But still, I don't think rtfm is very appropriate... Can we look
for something better, more obvious? Or perhaps it would be in the motd
like /stand/sysinstall is people would need to be aware of this.

 
 - Jordan
 

 Brian Fundakowski Feldman  _ __ ___   ___ ___ ___  
 [EMAIL PROTECTED]   _ __ ___ | _ ) __|   \ 
 FreeBSD: The Power to Serve!_ __ | _ \._ \ |) |
   http://www.FreeBSD.org/  _ |___/___/___/ 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Jordan K. Hubbard

I think that whomever actually writes it will get to name it whatever
the hell they way, that's what I think. :)

- Jordan


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Doug

On Tue, 6 Jul 1999, Brian F. Feldman wrote:

 On Tue, 6 Jul 1999, Jordan K. Hubbard wrote:
 
   Which can be disabled in the bash port before the next release...
  
  No, that's a really stupid idea.
 
 Thanks! But still, I don't think rtfm is very appropriate... Can we look
 for something better, more obvious? Or perhaps it would be in the motd
 like /stand/sysinstall is people would need to be aware of this.

I think your logic is faulty here. There are already many adequate
resources in the motd, but your argument for the 'rtfm script' presupposes
that the person has not looked at the motd, because if they had they
wouldn't need the script. 

Honestly, while this is one of those things that sounds good when
you first start talking about it, in practice I don't see what we gain
from it. 

Doug
-- 
On account of being a democracy and run by the people, we are the only
nation in the world that has to keep a government four years, no matter
what it does.
-- Will Rogers



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Nick Hibma

libperl?

Nick

On Mon, 5 Jul 1999, Chris Costello wrote:

  On Mon, Jul 5, 1999, Joe Abley wrote:
   On Mon, Jul 05, 1999 at 05:11:57AM -0500, Chris Costello wrote:
   I've been encountering people recently who, for one reason or
another, are unable to find information for themselves when they
have a question on FreeBSD.

   I propose an rtfm(1) command, and I've got some Perl code that
works.  If people are interested, I will continue with it, and
write a man page.

   The source is attached.
   
   It would be good if you could use fetch(1) instead of forming the
   HTTP request yourself. That way people who already have fetch working
   through proxies don't have to modify anything to use rtfm.
   
   Is there a particular reason you're writing it in perl?
  
 Mostly regexp and such.  If I can figure out how to use the
  regexp code for C, I'd probably rewrite it.
  
   
   
   Joe
  
  -- 
  Chris Costelloch...@calldei.com
  The generation of random numbers is too important to be left to chance.
  
  
  To Unsubscribe: send mail to majord...@freebsd.org
  with unsubscribe freebsd-hackers in the body of the message
  
  

-- 
ISIS/STA, T.P.270, Joint Research Centre, 21020 Ispra, Italy



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Searching the Handbook (was Re: 'rtfm script')

1999-07-06 Thread Nik Clayton
I've added d...@freebsd.org to the distribution list, for obvious reasons.

On Mon, Jul 05, 1999 at 02:16:36PM -0500, Chris Costello wrote:
 On Mon, Jul 5, 1999, Bill Fumerola wrote:
  I'm in favor of the rtfm script. It's amazing the positive
  things that come out of an offhand IRC comment.
  
  [ from http://www.emsphone.com/FreeBSD/log.cgi/19990704.txt ]
  
  [15:33] cmc First it'll search the man pages.  Then the handbook.  Then
  the FAQ.  Then, maybe see if I can find out if they start bitching, and if
  so, email Jesus Monroy.
 
Note that I can't figure out a decent way to search the
 Handbook at this point, but I'm open to ideas.

There are a couple of ways you could do it.  Some of them more optimal 
than others.

   Executive summary:  sgrep is probably your best choice now, which can
   can be found at URL:http://www.cs.helsinki.fi/~jjaakkol/sgrep.html. 
   But read on for more.

The simplest way is to assume that the user has the plain text handbook
installed, and do a simple grep through that for what you're looking for.

This is nice and easy to do, but doesn't take advantage of the additional
smarts built in to the Handbook's native format.  To do that requires some
additional work.

A brief recap for those not au fait with how the Handbook is organised in
source form. 

  The Handbook is 'marked up' in a language called DocBook.  DocBook was
  designed specifically for formatting technical documentation, and looks
  a lot like HTML.  However, instead of tags like em, b, ul, and so
  on, DocBook has tags like example, screen, userinput, devicename,
  filename, and so forth.

  A document that is marked up in DocBook therefore contains a lot of 
  additional semantic information about the content (and very little 
  formatting information).

  When the Handbook is converted to HTML, some of this semantic information
  is retained.  For example, the DocBook source for an example that the
  user might want to copy verbatim would look like,

  screenprompt#/prompt userinputrm -rf //userinput/screen

  and might be converted to HTML that looks like

  blockquote class=screen
ttspan class=prompt#/span span 
  class=userinputrm -rf //span/tt
  /blockquote

  Lots more information can be found at 
  http://www.freebsd.org/tutorials/docproj-primer/.

A smart searching mechanism will be able to use this additional semantic
information to reject (or lower the rankings of) results that don't match
what the user wanted.

For example, suppose you're searching the Handbook for examples of the 
make(1) command in action.  The simple string make occurs lots of times
in the Handbook.  However, you're only interested in those sections where
it occurs *inside* a userinput element; all the other occurences can be
ignored.

For a simple rtfm(1) style search most of this can probably be ignored, and
you can just search the plain text handbook.  But even then you might want
to provide switches that allow the user to specify:

  -  Only match this word if found in an example

  -  Only match this word if found in a title

  -  Only match this word if found in a command name

and so on.

How do you do that?  Good question.  This has been on my list of things
to investigate (at the back of my mind) for a while, but more important
things have taken my time.  If anyone's interested in doing this, here's
what I've discovered.

You could go the full SGML route.  This would involve building an 
application that can parse the DocBook source of the Handbook (and other
articles, and soon to be the FAQ) and allow the user to do their queries
using this application.  This is probably the most 'correct' route from
a purist point of view, but is an awful lot of work.

You could go the XML route.  XML is the buzzword of the moment, can be 
thought of as being SGML-Lite.  Writing an XML parser is much easier than
writing an SGML parser, and you could write an XML aware application could
parse the Handbook and other docs, returning results that only appeared
inside certain elements.  This is still a chunk of work, and the end user
will need to keep an XML copy of the documentation somewhere on their disk.
Converting from SGML to XML is not a hard problem for our documents though,
so at least that hurdle is skipped.

For an example of this, check out SCOOBS, at URL:http://www.scoobs.com/.
This is still probably too heavyweight a solution though.

*Much* simpler is to build a grep-alike that understands structured 
documents, but that doesn't care how those documents are structured.  This
is such a great idea that someone's already done it -- sgrep, which can
be found at URL:http://www.cs.helsinki.fi/~jjaakkol/sgrep.html can 
search structured text (such as DocBook, HTML, or even mail files).

Some examples of sgrep queries;

sgrep 'start or \n .. (end or \n) containing Hello World'

You can define macros in sgrep, so the above could be simplified to

sgrep 'LINE containing Hello World

RE: 'rtfm' script

1999-07-06 Thread Ladavac Marino
 -Original Message-
 From: Alex Zepeda [SMTP:garba...@hooked.net]
 Sent: Tuesday, July 06, 1999 4:43 AM
 To:   Chris Costello
 Cc:   hack...@freebsd.org
 Subject:  Re: 'rtfm' script
 
 P.S. If you're looking for an easy to use regexp implementation, and
 aren't afraid of C++, check out Qt; if you're looking for more of a
 challenge, there's always the need for an rtsl(1) ;)
[ML]  BSD (donated by Henry Spencer) regexp is easy enough to
use (RTFM suffices, believe me) and even easier to port to platforms
which do not have it in libc[1]

/Marino

[1] If you ever wondered why Windows applications all use
different syntaxes for wildcard searches, if they support them at all,
now you know.  BTW, it took only two strategic unsigned's to shut the
VC++ warnings up--that's all the porting effort one needed to spend.

 - alex
 
 
 
 To Unsubscribe: send mail to majord...@freebsd.org
 with unsubscribe freebsd-hackers in the body of the message


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Doug
I'm confused about this script. How does it differ from 'apropos'?

Feeling a little dense,

Doug
-- 
On account of being a democracy and run by the people, we are the only
nation in the world that has to keep a government four years, no matter
what it does.
-- Will Rogers



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Chris Costello
On Tue, Jul 6, 1999, Doug wrote:
   I'm confused about this script. How does it differ from 'apropos'?

   It differs in that it _uses_ apropos (or 'whatis' if you
specify the -e flag), as well as a Texinfo search, as well as a
FAQ search, using the FAQ pages at http://www.freebsd.org/FAQ/.
It's meant to be an information center for those just getting
started with FreeBSD.

 Doug

-- 
Chris Costelloch...@calldei.com
It's 10 o'clock.  Do you know where your child processes are?


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Brian F. Feldman
On Tue, 6 Jul 1999, Chris Costello wrote:

 On Tue, Jul 6, 1999, Doug wrote:
  I'm confused about this script. How does it differ from 'apropos'?
 
It differs in that it _uses_ apropos (or 'whatis' if you
 specify the -e flag), as well as a Texinfo search, as well as a
 FAQ search, using the FAQ pages at http://www.freebsd.org/FAQ/.
 It's meant to be an information center for those just getting
 started with FreeBSD.

RTFM isn't a newby-apparent term. Name it help(1).

 
  Doug
 
 -- 
 Chris Costelloch...@calldei.com
 It's 10 o'clock.  Do you know where your child processes are?
 
 
 To Unsubscribe: send mail to majord...@freebsd.org
 with unsubscribe freebsd-hackers in the body of the message
 

 Brian Fundakowski Feldman  _ __ ___   ___ ___ ___  
 gr...@freebsd.org   _ __ ___ | _ ) __|   \ 
 FreeBSD: The Power to Serve!_ __ | _ \._ \ |) |
   http://www.FreeBSD.org/  _ |___/___/___/ 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Chris Costello
On Tue, Jul 6, 1999, Brian F. Feldman wrote:
 RTFM isn't a newby-apparent term. Name it help(1).

   That would cause problems with bash users.  They already have
a builtin help command.

-- 
Chris Costelloch...@calldei.com
On a clear disk you can seek forever.  - Denning


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Brian F. Feldman
On Tue, 6 Jul 1999, Chris Costello wrote:

 On Tue, Jul 6, 1999, Brian F. Feldman wrote:
  RTFM isn't a newby-apparent term. Name it help(1).
 
That would cause problems with bash users.  They already have
 a builtin help command.

Which can be disabled in the bash port before the next release...
help(1) is really a much more appropriate name.

 
 -- 
 Chris Costelloch...@calldei.com
 On a clear disk you can seek forever.  - Denning
 
 
 To Unsubscribe: send mail to majord...@freebsd.org
 with unsubscribe freebsd-hackers in the body of the message
 

 Brian Fundakowski Feldman  _ __ ___   ___ ___ ___  
 gr...@freebsd.org   _ __ ___ | _ ) __|   \ 
 FreeBSD: The Power to Serve!_ __ | _ \._ \ |) |
   http://www.FreeBSD.org/  _ |___/___/___/ 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Alex Zepeda
On Tue, 6 Jul 1999, Brian F. Feldman wrote:

 RTFM isn't a newby-apparent term. Name it help(1).

Sure it is.  Some hapless newbie wanders into #FreeBDS on efnet, and asks
an already answered question.  Aside from a kick, and a possible ban,
they're likely to be met with a chorus of rtfm, which in all likelyhood
would prompt the inquisitive newbie to try and run rtfm.

- alex

I thought felt your touch
In my car, on my clutch
But I guess it's just someone who felt a lot like I remember you.
  - Translator



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Tim Vanderhoek
On Tue, Jul 06, 1999 at 02:52:08PM -0400, Brian F. Feldman wrote:
  On Tue, Jul 6, 1999, Brian F. Feldman wrote:
   RTFM isn't a newby-apparent term. Name it help(1).
  
 That would cause problems with bash users.  They already have
  a builtin help command.
 
 Which can be disabled in the bash port before the next release...

Ugh.  No.  Objection on the grounds of create more problems than it
solves.  We've already seen enough confusion from builtins such as
time(1) having conflicting names.


-- 
This is my .signature which gets appended to the end of my messages.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Jordan K. Hubbard
 Which can be disabled in the bash port before the next release...

No, that's a really stupid idea.

- Jordan


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Brian F. Feldman
On Tue, 6 Jul 1999, Jordan K. Hubbard wrote:

  Which can be disabled in the bash port before the next release...
 
 No, that's a really stupid idea.

Thanks! But still, I don't think rtfm is very appropriate... Can we look
for something better, more obvious? Or perhaps it would be in the motd
like /stand/sysinstall is people would need to be aware of this.

 
 - Jordan
 

 Brian Fundakowski Feldman  _ __ ___   ___ ___ ___  
 gr...@freebsd.org   _ __ ___ | _ ) __|   \ 
 FreeBSD: The Power to Serve!_ __ | _ \._ \ |) |
   http://www.FreeBSD.org/  _ |___/___/___/ 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Jordan K. Hubbard
I think that whomever actually writes it will get to name it whatever
the hell they way, that's what I think. :)

- Jordan


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Doug
On Tue, 6 Jul 1999, Brian F. Feldman wrote:

 On Tue, 6 Jul 1999, Jordan K. Hubbard wrote:
 
   Which can be disabled in the bash port before the next release...
  
  No, that's a really stupid idea.
 
 Thanks! But still, I don't think rtfm is very appropriate... Can we look
 for something better, more obvious? Or perhaps it would be in the motd
 like /stand/sysinstall is people would need to be aware of this.

I think your logic is faulty here. There are already many adequate
resources in the motd, but your argument for the 'rtfm script' presupposes
that the person has not looked at the motd, because if they had they
wouldn't need the script. 

Honestly, while this is one of those things that sounds good when
you first start talking about it, in practice I don't see what we gain
from it. 

Doug
-- 
On account of being a democracy and run by the people, we are the only
nation in the world that has to keep a government four years, no matter
what it does.
-- Will Rogers



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Chris Costello
On Tue, Jul 6, 1999, Doug wrote:
   Honestly, while this is one of those things that sounds good when
 you first start talking about it, in practice I don't see what we gain
 from it. 

   What we gain from it is really simple and can be obtained from
looking at how it operates.  It's a starting point for newbies
looking for information.  Often, people will say rtfm when
someone asks for help on something that's pretty well documented.
I've known many a newbie to try and see if an rtfm command
exists.

-- 
Chris Costelloch...@calldei.com
If you have a procedure with 10 parameters, you probably missed some.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Brian F. Feldman
On Tue, 6 Jul 1999, Doug wrote:

 On Tue, 6 Jul 1999, Brian F. Feldman wrote:
 
  On Tue, 6 Jul 1999, Jordan K. Hubbard wrote:
  
Which can be disabled in the bash port before the next release...
   
   No, that's a really stupid idea.
  
  Thanks! But still, I don't think rtfm is very appropriate... Can we look
  for something better, more obvious? Or perhaps it would be in the motd
  like /stand/sysinstall is people would need to be aware of this.
 
   I think your logic is faulty here. There are already many adequate
 resources in the motd, but your argument for the 'rtfm script' presupposes
 that the person has not looked at the motd, because if they had they
 wouldn't need the script. 

/bin/rtfmsh?

 
   Honestly, while this is one of those things that sounds good when
 you first start talking about it, in practice I don't see what we gain
 from it. 
 
 Doug
 -- 
 On account of being a democracy and run by the people, we are the only
 nation in the world that has to keep a government four years, no matter
 what it does.
 -- Will Rogers
 
 
 
 To Unsubscribe: send mail to majord...@freebsd.org
 with unsubscribe freebsd-hackers in the body of the message
 

 Brian Fundakowski Feldman  _ __ ___   ___ ___ ___  
 gr...@freebsd.org   _ __ ___ | _ ) __|   \ 
 FreeBSD: The Power to Serve!_ __ | _ \._ \ |) |
   http://www.FreeBSD.org/  _ |___/___/___/ 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Searching the Handbook (was Re: 'rtfm script')

1999-07-06 Thread Chris Costello
On Tue, Jul 6, 1999, Nik Clayton wrote:
 I've added d...@freebsd.org to the distribution list, for obvious reasons.
 
 On Mon, Jul 05, 1999 at 02:16:36PM -0500, Chris Costello wrote:
 Note that I can't figure out a decent way to search the
  Handbook at this point, but I'm open to ideas.
 
 There are a couple of ways you could do it.  Some of them more optimal 
 than others.
 
Executive summary:  sgrep is probably your best choice now, which can
can be found at URL:http://www.cs.helsinki.fi/~jjaakkol/sgrep.html. 
But read on for more.
 
 The simplest way is to assume that the user has the plain text handbook
 installed, and do a simple grep through that for what you're looking for.

   See the FAQ parser.  I want to be able to get meaningful
output for users.  sgrep is also not viable because it's not in
the default system.

 This is nice and easy to do, but doesn't take advantage of the additional
 smarts built in to the Handbook's native format.  To do that requires some
 additional work.

   The handbook's native format won't be on the default system,
will it?  They're all in HTML.

 A smart searching mechanism will be able to use this additional semantic
 information to reject (or lower the rankings of) results that don't match
 what the user wanted.

   See above.  I want rtfm(1) to remain viable on base installs.

 For example, suppose you're searching the Handbook for examples of the 
 make(1) command in action.  The simple string make occurs lots of times
 in the Handbook.  However, you're only interested in those sections where
 it occurs *inside* a userinput element; all the other occurences can be
 ignored.
 
 For a simple rtfm(1) style search most of this can probably be ignored, and
 you can just search the plain text handbook.  But even then you might want
 to provide switches that allow the user to specify:
 
   -  Only match this word if found in an example
 
   -  Only match this word if found in a title
 
   -  Only match this word if found in a command name

   This can only be done if the user can access the SGML files.
First off, the SGML files are not installed by default.
Accessing them online would require having to search every single
one or one big one, which isn't a good idea at this point.


 You could go the full SGML route.  This would involve building an 
 application that can parse the DocBook source of the Handbook (and other
 articles, and soon to be the FAQ) and allow the user to do their queries
 using this application.  This is probably the most 'correct' route from
 a purist point of view, but is an awful lot of work.

   If the FAQ is to be DocBook-ified, will the SGML sources be
made availible via HTTP so rtfm(1) can still cleanly parse them
with a minor rewrite of the FAQ section?

 *Much* simpler is to build a grep-alike that understands structured 
 documents, but that doesn't care how those documents are structured.  This
 is such a great idea that someone's already done it -- sgrep, which can
 be found at URL:http://www.cs.helsinki.fi/~jjaakkol/sgrep.html can 
 search structured text (such as DocBook, HTML, or even mail files).

   I'd have to integrate it into rtfm(1), and see above about
access to the handbook.

-- 
Chris Costelloch...@calldei.com
Computers are only human.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Searching the Handbook (was Re: 'rtfm script')

1999-07-06 Thread Tim Vanderhoek
On Tue, Jul 06, 1999 at 11:55:26AM +0100, Nik Clayton wrote:
 
 *Much* simpler is to build a grep-alike that understands structured 
 documents, but that doesn't care how those documents are structured.  This

Perhaps dtags(1) a-la ctags(1).


-- 
This is my .signature which gets appended to the end of my messages.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-06 Thread Wes Peters
Brian F. Feldman wrote:
 
 On Tue, 6 Jul 1999, Chris Costello wrote:
 
  On Tue, Jul 6, 1999, Doug wrote:
   I'm confused about this script. How does it differ from 'apropos'?
 
 It differs in that it _uses_ apropos (or 'whatis' if you
  specify the -e flag), as well as a Texinfo search, as well as a
  FAQ search, using the FAQ pages at http://www.freebsd.org/FAQ/.
  It's meant to be an information center for those just getting
  started with FreeBSD.
 
 RTFM isn't a newby-apparent term. Name it help(1).

And link it to whatthehell(1).

-- 
Where am I, and what am I doing in this handbasket?

Wes Peters Softweyr LLC
http://softweyr.com/   w...@softweyr.com


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



re: 'rtfm script'

1999-07-05 Thread Bill Fumerola

I'm in favor of the rtfm script. It's amazing the positive
things that come out of an offhand IRC comment.

[ from http://www.emsphone.com/FreeBSD/log.cgi/19990704.txt ]

[15:29] billf tribune: yes, RTFM.
[15:29] billf we need rtfm(1)
[15:30] billf rtfm(1) would search the man pages, FAQ, and handbook for
the COMPLETLY clueless.
[15:31] cmc billf: that rtfm command, I might write one.  maybe it'll
get people to shut the hell up ;)
[15:32] cmc It'd be easy to do in Perl.
[15:32] billf cmc: I'd import it for you.
[15:32] sysctl rtfm would work good.. in perl even
[15:32] sysctl have it translate between "rtfm subject" and "rtfm
subject(1)"
[15:33] cmc First it'll search the man pages.  Then the handbook.  Then
the FAQ.  Then, maybe see if I can find out if they start bitching, and if
so, email Jesus Monroy.

At that point the converstaion turned to talking about Irish soap carving
and the fact that www.OpenBSD.org doesn't run OpenBSD. I guess I was wrong
about IRC being positive.

- bill fumerola - [EMAIL PROTECTED] - BF1560 - computer horizons corp -
- ph:(800) 252-2421 - [EMAIL PROTECTED] - [EMAIL PROTECTED]  -





To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm script'

1999-07-05 Thread Chris Costello

On Mon, Jul 5, 1999, Bill Fumerola wrote:
 I'm in favor of the rtfm script. It's amazing the positive
 things that come out of an offhand IRC comment.
 
 [ from http://www.emsphone.com/FreeBSD/log.cgi/19990704.txt ]
 
 [15:33] cmc First it'll search the man pages.  Then the handbook.  Then
 the FAQ.  Then, maybe see if I can find out if they start bitching, and if
 so, email Jesus Monroy.

   Note that I can't figure out a decent way to search the
Handbook at this point, but I'm open to ideas.

-- 
Chris Costello[EMAIL PROTECTED]
Stack Error:  Lost on a cluttered desk...


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Chris Costello

On Mon, Jul 5, 1999, Joe Abley wrote:
 On Mon, Jul 05, 1999 at 05:11:57AM -0500, Chris Costello wrote:
 I've been encountering people recently who, for one reason or
  another, are unable to find information for themselves when they
  have a question on FreeBSD.
  
 I propose an rtfm(1) command, and I've got some Perl code that
  works.  If people are interested, I will continue with it, and
  write a man page.
  
 The source is attached.
 
 It would be good if you could use fetch(1) instead of forming the
 HTTP request yourself. That way people who already have fetch working
 through proxies don't have to modify anything to use rtfm.
 
 Is there a particular reason you're writing it in perl?

   Mostly regexp and such.  If I can figure out how to use the
regexp code for C, I'd probably rewrite it.

 
 
 Joe

-- 
Chris Costello[EMAIL PROTECTED]
The generation of random numbers is too important to be left to chance.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Bill Fumerola

On Mon, 5 Jul 1999, Alex Zepeda wrote:

 P.S. If you're looking for an easy to use regexp implementation, and
 aren't afraid of C++, check out Qt; if you're looking for more of a
 challenge, there's always the need for an rtsl(1) ;)

rtsl(1) = glimpse(1) :

- bill fumerola - [EMAIL PROTECTED] - BF1560 - computer horizons corp -
- ph:(800) 252-2421 - [EMAIL PROTECTED] - [EMAIL PROTECTED]  -





To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



'rtfm' script

1999-07-05 Thread Chris Costello
   I've been encountering people recently who, for one reason or
another, are unable to find information for themselves when they
have a question on FreeBSD.

   I propose an rtfm(1) command, and I've got some Perl code that
works.  If people are interested, I will continue with it, and
write a man page.

   The source is attached.

   Sample output:


(-s = simple, don't search sections 3, 4, or 9, and 'e' means
'exact', or 'use whatis instead of apropos')
-

$ rtfm -s -e ASCII 
Manual pages found:
   ascii(7)
   hexdump(1)
   map3270(5)
   mset(1)
   neqn(1)
   od(1)
   pfbtops(1)

Found FAQ entries:
   1.18.   Where can I get ASCII/PostScript versions of the FAQ?
  http://www.freebsd.org/FAQ/FAQ19.html#19
   1.19.   Where can I get ASCII/PostScript versions of the Handbook?
  http://www.freebsd.org/FAQ/FAQ20.html#20
   1.20.   The ASCII handbook isn't plain text!
  http://www.freebsd.org/FAQ/FAQ21.html#21


-- 
Chris Costelloch...@calldei.com
I'll rob that rich person and give it to some poor deserving slob.
That will *prove* I'm Robin Hood.
-- Daffy Duck, Robin Hood Daffy, [1958, Chuck Jones]
#!/usr/bin/perl -w
# Copyright (c) 1999 Chris Costello
# All rights reserved.
# 
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
#notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#notice, this list of conditions and the following disclaimer in the
#documentation and/or other materials provided with the distribution.
# 
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.

use IO::Socket;

my ($mancnt, $line, @manuals, $manual, $simple, $exactword, @faqs);
my ($http_socket);

$mancnt = 0;
$simple = 0;
$exactword = 0;

# Somehow I need to be able to try and find a 'closest mirror'.

$http_server = 'www.freebsd.org';
$faq_path = '/FAQ';

usage if $#ARGV  0;

while ($_ = $ARGV[0], /^-/) {
shift(@ARGV);

if (/^-s/) { $simple++; }   # see simple description in man page
elsif (/^-e/) { $exactword++; }
elsif (/^-h/) { usage }
}

$ent = $ARGV[0];

$prog = whatis if $exactword;
$prog = apropos unless defined($prog);

# First check to see if we have a man page.
open(APROPOS, $prog $ent|) || die error encountered running $prog: $!;

while (defined($line = APROPOS)) {
chomp($line);
$mancnt++;

if ($line =~ /$ent: nothing appropriate/) { last; }

# innovation.
$line =~ s/^(.+?)\(([0-9nqt]+?)\).*/$2 $1/g;

push(@manuals, $line);
}

close(APROPOS);

if ($mancnt  0) {
print Manual pages found:\n;
foreach $manual (@manuals) {
my ($sect, $mman) = split(/ /, $manual);
if ($simple  0  ($sect =~ /[349qt]+/)) { 
next; 
}
print$mman($sect)\n;
}
}

$http_socket = IO::Socket::INET-new($http_server . ':80');

print $http_socket GET $faq_path/ HTTP/1.0\r\n\r\n;

while (defined($line = $http_socket)) {
chomp($line);
# superiority.
if ($line =~ /^DD(.+?)A HREF=\(.+?)\(.+?).*$/) {
my ($faq_ent, $faq_page, $faq_question);

$faq_ent = $1;
$faq_page = $2;
$faq_question = $3;

if ($faq_question =~ /$ent/) {
push(@faqs, sprintf(%s|%s|%s, $faq_ent, $faq_page, 
$faq_question));
}
}
}

close($http_socket);

print \nFound FAQ entries:\n;

foreach (@faqs) {
my ($faq_ent, $faq_page, $faq_question) = split(/\|/);

print$faq_ent  $faq_question\n  
http://$http_server/FAQ/$faq_page\n;;
}

# usage:
#   prints usage info and exits.

sub usage {
print STDERR usage: rtfm command\n;
exit 1;
}


Re: 'rtfm script'

1999-07-05 Thread Chris Costello
On Mon, Jul 5, 1999, Bill Fumerola wrote:
 I'm in favor of the rtfm script. It's amazing the positive
 things that come out of an offhand IRC comment.
 
 [ from http://www.emsphone.com/FreeBSD/log.cgi/19990704.txt ]
 
 [15:33] cmc First it'll search the man pages.  Then the handbook.  Then
 the FAQ.  Then, maybe see if I can find out if they start bitching, and if
 so, email Jesus Monroy.

   Note that I can't figure out a decent way to search the
Handbook at this point, but I'm open to ideas.

-- 
Chris Costelloch...@calldei.com
Stack Error:  Lost on a cluttered desk...


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm script'

1999-07-05 Thread Niall Smart

 At that point the converstaion turned to talking about Irish soap carving
 and the fact that www.OpenBSD.org doesn't run OpenBSD. I guess I was wrong
 about IRC being positive.

Well, you can blame the first bit of surrealism on jkh, the poor fella
has some awful ideas about what the Irish do in their spare time.  God
bless him.

Niall


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Alex Zepeda
I propose an rtfm(1) command, and I've got some Perl code that
 works.  If people are interested, I will continue with it, and
 write a man page.
[...]
 (-s = simple, don't search sections 3, 4, or 9, and 'e' means
 'exact', or 'use whatis instead of apropos')

If rtfm(1) is really for newbies and other clueless people, perhaps it
should be made interactive.  I mean, this whole idea sounds like it's
geared towards people who wouldn't know what sections 3, 4, or 9 are.

- alex

I thought felt your touch
In my car, on my clutch
But I guess it's just someone who felt a lot like I remember you.
  - Translator



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Chris Costello
On Mon, Jul 5, 1999, Alex Zepeda wrote:
 I propose an rtfm(1) command, and I've got some Perl code that
  works.  If people are interested, I will continue with it, and
  write a man page.
 [...]
  (-s = simple, don't search sections 3, 4, or 9, and 'e' means
  'exact', or 'use whatis instead of apropos')
 
 If rtfm(1) is really for newbies and other clueless people, perhaps it
 should be made interactive.  I mean, this whole idea sounds like it's
 geared towards people who wouldn't know what sections 3, 4, or 9 are.

   It'll probably have a lot of changes in the actual interface
if people accept it as useful or not.  I may have 'simple'
(default to don't search 3, 4, and 9) on as default.

-- 
Chris Costelloch...@calldei.com
The computer is mightier than the pen, the sword, and usually, the programmer.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Joe Abley
On Mon, Jul 05, 1999 at 05:11:57AM -0500, Chris Costello wrote:
I've been encountering people recently who, for one reason or
 another, are unable to find information for themselves when they
 have a question on FreeBSD.
 
I propose an rtfm(1) command, and I've got some Perl code that
 works.  If people are interested, I will continue with it, and
 write a man page.
 
The source is attached.

It would be good if you could use fetch(1) instead of forming the
HTTP request yourself. That way people who already have fetch working
through proxies don't have to modify anything to use rtfm.

Is there a particular reason you're writing it in perl?


Joe


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Chris Costello
On Mon, Jul 5, 1999, Joe Abley wrote:
 On Mon, Jul 05, 1999 at 05:11:57AM -0500, Chris Costello wrote:
 I've been encountering people recently who, for one reason or
  another, are unable to find information for themselves when they
  have a question on FreeBSD.
  
 I propose an rtfm(1) command, and I've got some Perl code that
  works.  If people are interested, I will continue with it, and
  write a man page.
  
 The source is attached.
 
 It would be good if you could use fetch(1) instead of forming the
 HTTP request yourself. That way people who already have fetch working
 through proxies don't have to modify anything to use rtfm.
 
 Is there a particular reason you're writing it in perl?

   Mostly regexp and such.  If I can figure out how to use the
regexp code for C, I'd probably rewrite it.

 
 
 Joe

-- 
Chris Costelloch...@calldei.com
The generation of random numbers is too important to be left to chance.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Chris Costello
   I've added texinfo searching and made it use fetch(1) instead
for those behind proxies.  Is there any word as to whether this
might be imported into the actual tree or if I should just make
it a port?

-- 
Chris Costelloch...@calldei.com
Machine independent code isn't.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Chris Costello
   The updated version (with support for texinfo searching, and
use of fetch(1)) is availible at
http://www.calldei.com/~chris/rtfm.pl

-- 
Chris Costelloch...@calldei.com
It is now pitch dark.  If you proceed, you will likely fall into a pit.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Alex Zepeda
On Mon, 5 Jul 1999, Chris Costello wrote:

  If rtfm(1) is really for newbies and other clueless people, perhaps it
  should be made interactive.  I mean, this whole idea sounds like it's
  geared towards people who wouldn't know what sections 3, 4, or 9 are.
 
It'll probably have a lot of changes in the actual interface
 if people accept it as useful or not.  I may have 'simple'
 (default to don't search 3, 4, and 9) on as default.

This sounds like a good idea.  Now, ideally, I'd love to see something
that could take an english phrase and figure out where to go from there.
Sort of like an Ask Jeeves (ask.com) for FreeBSD newbies.

This is not to say that the more advanced options wouldn't be useful; I
could personally find a use for something to search the handbook, FAQs and
man pages at once.

I think I'll volunteer a few of my newbie friends once this progresses a
bit further.

P.S. If you're looking for an easy to use regexp implementation, and
aren't afraid of C++, check out Qt; if you're looking for more of a
challenge, there's always the need for an rtsl(1) ;)

- alex



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: 'rtfm' script

1999-07-05 Thread Bill Fumerola
On Mon, 5 Jul 1999, Alex Zepeda wrote:

 P.S. If you're looking for an easy to use regexp implementation, and
 aren't afraid of C++, check out Qt; if you're looking for more of a
 challenge, there's always the need for an rtsl(1) ;)

rtsl(1) = glimpse(1) :

- bill fumerola - bi...@chc-chimes.com - BF1560 - computer horizons corp -
- ph:(800) 252-2421 - bfume...@computerhorizons.com - bi...@freebsd.org  -





To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message