III.b Lookaside Files --------------------- The second method of creating a link is a bit harder, however it's ideal for such things as sounds where the only change needed is the object type, or for supplying a name with spaces when OpenVMS won't let you do that. Here's how you'd change the file GOPHER_ROOT:[_sounds]Moo into a sound: set def GOPHER_ROOT:[_sounds] create/dir [._lookaside] set def [._lookaside] copy tt: Moo Type=s ^Z The idea is that you create a directory called [._lookaside] in the same directory as the document. This is referred to as a "lookaside" directory. The configuration file allows you to specify a name to be interpreted as a lookaside directory. Then you create a file in the lookaside directory, with the same name as the file whose attributes you want to modify. You only need to put in what needs to be changed. The server will supply defaults if it doesn't find out what it needs. In the above example for instance, the host server would supply the Name, Host, Port and Path for the object. The only thing that changed was the type. Lookaside file specifications may be continued. Continuation of extra long texts is permissable by having a '-' (hyphen) as the very last character in a long line, and a ' ' (blank) as the very first character of the next line. In this situation, the '-' will be discarded, and the next line will be appended to the long line in place of the '-'. This may continue through the maximum length of a lookaside file line, 1024 bytes. It is probably only useful for Path= specifications which can get excessively long on occasion. Name= specifications may be continued, but it's wise to keep them shorter than 70 characters so clients are able to display them without truncation. Some specifications only make sense in lookasides; these specifications modify the way that the server will present the data to the client, possibly overriding default server entries. Because they are applicable at document delivery time, there is no .LINKS context; any specification of these entries in a standard link tuple in a .LINKS file are ignored. Head= Specifies a line of text to be prefixed to a Type=0 document when the server delivers it to a client. It overrides any configuration file DHead: specification, and may be null (i.e., "Head=") to suppress any default header from the configuration. If a valid filename (which exists) is specified, the entire file's contents is prefixed before the document. This is a method of adding standard disclaimers or copyright notices. Foot= Specifies a line of text to be suffixed to a Type=0 document when the server delivers it to a client. It overrides any configuration file DFoot: specification, and may be null (i.e., "Foot=") to suppress any default footer from the configuration. If a valid filename (which exists) is specified, the entire file's contents is suffixed after the document. This is a method of adding standard disclaimers or copyright notices. RHead= Specifies a line of text to be prefixed to a Type=0 document when the server delivers it to a client as a range (i.e., Path=R...). It is supplied in addition to any Head= or DHead= specification, and may be null (i.e., "RHead="). If a valid filename (which exists) is specified, the entire file's contents is prefixed before the document. RFoot= Specifies a line of text to be suffixed to a Type=0 document when the server delivers it to a client as a range (i.e., Path=R...). It is supplied in addition to any Foot= or DFoot= specification, and may be null (i.e., "RFoot="). If a valid filename (which exists) is specified, the entire file's contents is suffixed after the document. .