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