[net.news] Helpfulness, environment vars, .newsrc, ideas

gnu@sun.uucp (John Gilmore) (10/16/84)

> > The business of tucking a copy of your posting into author.copy is another
> > feature I could do without. 
> Also fixed, originally by Mark at Fortune, and I've hacked it further. My
> version (also at poor, overworked rick's house) doesn't save the message
> (following the true unix standard of doing nothing and saying nothing
> unless asked) unless you set an environment variable. I haven't figured out
> how to deal with YA environment variable due to lack of time, but I'll
> probably get frustrated enough one of these days...

Ahem, there's a good place for these options...it's called .newsrc .
That's where all the other news options go.  I know it's a true unix
standard for each program to do its options differently but we could
bend the standard just this once.

While I'm here, can I suggest more helpful things that readnews could do?

	(0)  Handle the HUP signal by Quitting, so you don't lose
	hours of reading time when 3-way calling rears its head,
	or you kick the phone by accident.

	(1)  Checkpoint itself every N messages (optionally) so you
	don't lose hours of reading time (or have to muck in the core
	file) when a system crash or bug (or HUP) kills your session.

	(2)  In vnews, accept Backspace to back up (screens or messages),
	just like Space moves you forward.

dhb@rayssd.UUCP (10/23/84)

For once I see something here that I agree with.  ALL of the options
to readnews/vnews/rn should be contained in the .newsrc file.  I
would add, however, that the user should be able to override any and
all of the options from the command line.  The only thing that
possibly belongs in the environment is the name of the .newsrc file
and even that could be done as a command line option.  The programs
should also have the ability to modify the options line in the .newsrc
file so that the user doesn't have to edit it.  This shouldn't be that
difficult (in fact I think I will attempt it!).

One final note (since I know that MOST users never read the manual).
If you specify the -u option on the options line in the .newsrc file,
readnews/vnews and I assume rn WILL checkpoint the .newsrc file every
so often (I think it's 5 minutes).
-- 
	Dave Brierley
	Raytheon Co.; Portsmouth RI; (401)-847-8000 x4073
	...!decvax!brunix!rayssd!dhb
	...!allegra!rayssd!dhb
	...!linus!rayssd!dhb

lwall@sdcrdcf.UUCP (Larry Wall) (10/29/84)

In article <541@rayssd.UUCP> dhb@rayssd.UUCP (Dave Brierley) writes:
> For once I see something here that I agree with.  ALL of the options
> to readnews/vnews/rn should be contained in the .newsrc file.

Sorry, but that would have been irresponsible, for several reasons.  One
of the things I decided when I wrote rn was the I wouldn't break readnews.
Rn doesn't make use of the options line because readnews switches don't
make sense to rn, and rn couldn't put a line of its own into the .newsrc
because readnews wouldn't understand that.

On top of which, some people prefer the environment variable method.  This
is primarily a matter of taste.  One reason for using environment variables
is implicit in the name--your environment can change, and if you want your
login profile to be able to modify the behaviour of rn, you don't want to
have your shell script editing your .newsrc.

Before you react in horror at the plethora of environment variables used by
rn, you should know (-: especially if you read the documentation :-) that you
can get away with defining a single environment variable.  And that variable
may contain either switches setting your complete enviroment, or the name
of a file with such switches.  Not a very heavy load on the environment,
considering how much time some of you spend reading news.

Another objection to keeping options in the .newsrc, for those of you who
are into relational data bases, is that such info prevents the .newsrc
from being a "flat" file--a relation.  (Counting the list of read articles
as a single field, of course.)  Any little program you want to write that
makes a list of subscribed-to newsgroups will have to have an exception for
the options line.  Grr.

> I would add, however, that the user should be able to override any and
> all of the options from the command line.

Rn works this way.  Those out there who prefer to set everything up with
aliases rather than environment variables can do so.  You could even go
so far as to write a shell script, if you don't believe in aliases...

> The programs should also have the ability to modify the options line in the
> .newsrc file so that the user doesn't have to edit it.  This shouldn't be
> that difficult (in fact I think I will attempt it!).

A nice little feeping creature, er, I mean creeping feature.  Be sure to
#ifdef it.

> One final note (since I know that MOST users never read the manual).

True, alas.  And the more complete the documentation, the less they read.

> If you specify the -u option on the options line in the .newsrc file,
> readnews/vnews and I assume rn WILL checkpoint the .newsrc file every
> so often (I think it's 5 minutes).

Logically speaking, this is true: if you put -u on the options line, rn
will checkpoint every so often.  Of course, if you DON'T put a -u, rn will
checkpoint anyway. :-)  Rn ignores the options line (but preserves it).

Larry Wall
{allegra,burdvax,cbosgd,hplabs,ihnp4,sdcsvax}!sdcrdcf!lwall