xref: /original-bsd/usr.bin/learn/README (revision e59fb703)
1Important changes since 4.2:
2	Now uses 4.2 filesystem correctly and removes files between lessons.
3	Tee'd output to the .ocopy file works.  No more infinite loop on EOF.
4	Now maintains a .learnrc file to start you where you left off last
5	session.  The undocumented and dubious "xyzzy" command has become
6	the documented and dubious "hint" command.  Miscellaneous typos.
7
8Note that play directories are created in /tmp, no longer
9in /usr/lib/learn/play.  The C script is not complete;
10use at your own risk.  The editor script still smacks of ed.
11
12Lessons are in (vi lessons are on user-contributed-software tape)
13	/usr/lib/learn/*
14and auxilliary programs are in
15	/usr/lib/learn/bin
16
17Lesson directories may be protected.
18
19Learn keeps a log file for each script in the .../learn/log
20directory (files, editor, etc.) containing an entry for each
21lesson attempted.  These files will grow without bound,
22unless they are periodically truncated.
23The log files should have general write permission.
24If you don't want logging (a sensible position to take),
25set the variable "logging" to zero in source/learn.c
26before making learn, or remove the log directory, or just
27turn off write permission for a particular log file.
28
29Learn requires about 1500 blocks to make itself,
30and about 1000 when completely made.
31
32The best way to get ex to prompt within learn was to modify
33the user's environment variables PATH and EXINIT.
34
35Due to inane assumptions in the VAX versions of csh -i and ex
36when stdin and stdout are not terminals, kludges have been
37added with #if's.  In particular, I use the old terminal driver
38to keep #copyout working and make sh -i masquerade as
39a csh -i (by setting PS1=% ) to keep #pipe working.
40
41"#create" can now end in an incomplete last line by making '#'
42the last character on the line.  On input the string %s is
43converted to the lesson directory (useful for debugging).
44On output with "#copyout", prompt signs ("% ") are removed.
45"#cmp" now takes a trailing NUMBER specifying that only NUMBER
46many lines are to be compared.
47
48The new command "hint" prints the "answer" (i.e. the last part
49of the lesson).  With an argument it prints the whole lesson text.
50A new routine called getlesson tries to construct a valid
51lesson number from in invalid one before giving up.
52The commands "where", "skip", and "again" are also new.
53Greeting, closing, and reminder messages have been expanded.
54
55The "vi" lessons are packaged separately as part of the user-
56contributed software.  Ask the system administrator to install them.
57
58Please report problems, bad lessons, contributions, etc.,
59to John Kunze, jak@ernie.Berkeley.EDU.  Thanks.
60