1 Lisp Library Modules, Medley Release 1.0, SAMEDIR 1 Lisp Library Modules, Medley Release 1.0, SAMEDIR SAMEDIR 1 SAMEDIR 1 SAMEDIR 6 SameDir(SAMEDIR NIL SameDir NIL NIL 231) modifies MAKEFILE(MAKEFILE (function) NIL NIL NIL 231) to guard against inadvertently writing out a file onto a directory other than the one it came from. SameDir adds the form (CHECKSAMEDIR(CHECKSAMEDIR (function) NIL NIL NIL 231)) to MAKEFILEFORMS(MAKEFILEFORMS (function) NIL NIL NIL 231). It compares the (HOST&DIRECTORYFIELD(HOST&DIRECTORYFIELD (function) NIL NIL NIL 231) OLDFILE) against (DIRECTORYNAME(DIRECTORYNAME (function) NIL NIL NIL 231) T T) to see whether the connected directory matches the old file¹s source. Installation 1 Load SAMEDIR.LCOM from the library. User Interface 1 If you do a MAKEFILE and you are connected to a directory that is not listed in the FILEDATES property of the file, and the file has a FILEDATES property at all (i.e., this isn¹t a brand new file), the system will prompt you with: You haven¹t loaded or written TORTOISE in your connected directory {server} should I write it out anyway? Your options are reply with Y, N, C, or O: Y Yes, do the MAKEFILE N No, abort the MAKEFILE C Connect to other directory: allows you to type in another path. O Oops! Connect to the best guess; i.e., the directory where the file was last loaded or written. This option requires confirmation, in case you don¹t like the directory that the system prompts you with. The default answer to the question is Y (do the MAKEFILE). When comparing directory names, SameDir ignores case differences between the old and new directory names. MIGRATIONS(MIGRATIONS (variable) NIL NIL NIL 231) [Variable] For those who regularly LOADFROM files on one directory and MAKEFILE elsewhere, the variable MIGRATIONS can be set to keep SameDir from asking too often. It is an association list containing pairs of (OLDDIR . NEWDIR), which specifies which migrations are allowable. For example, if it is legitimate to LOADFROM a file on {MYHOST} and then do a MAKEFILE to {MYHOST}, then adding ({MYHOST} . {MYHOST}) to MIGRATIONS will prevent MAKEFILE from complaining about such movement. Limitations 1 For UNIX(UNIX NIL Unix NIL NIL 232) hosts using the PUP FTP(PUP% FTP NIL NIL NIL NIL 232) protocol, there is sometimes an inconsistency between the directory name in the full file name and the directory name in DIRECTORYNAME. SameDir may have trouble in that case detecting that the directories are the same. [This page intentionally left blank] (LIST ((PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC "" "") STARTINGPAGE# 231) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD RIGHT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY HELVETICA OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC "" "")) (270 15 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGR) (54 27 558 36) NIL) (TEXT NIL NIL (54 54 504 702) NIL))) (PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC "" "")) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD LEFT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY HELVETICA OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC "" "")) (54 15 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGV) (54 27 558 36) NIL) (HEADING NIL (HEADINGTYPE VERSOHEAD) (54 762 558 36) NIL) (TEXT NIL NIL (54 54 504 684) NIL))) (PAGE NIL (PAPERSIZE Letter FOLIOINFO (ARABIC "" "")) (0 0 612 792) ((FOLIO NIL (PARALOOKS (QUAD RIGHT) CHARLOOKS (SUPERSCRIPT 0 INVISIBLE OFF SELECTPOINT OFF PROTECTED OFF SIZE 10 FAMILY HELVETICA OVERLINE OFF STRIKEOUT OFF UNDERLINE OFF EXPANSION REGULAR SLOPE REGULAR WEIGHT MEDIUM INVERTED OFF USERINFO NIL STYLE NIL) FORMATINFO (ARABIC "" "")) (270 15 288 36) NIL) (HEADING NIL (HEADINGTYPE FOOTINGR) (54 27 558 36) NIL) (HEADING NIL (HEADINGTYPE RECTOHEAD) (54 762 558 36) NIL) (TEXT NIL NIL (54 54 504 684) NIL)))))3ààT2llàà5Tfàfà5HTàTà6à,àT3ààT5HHà ,à5llà,à5HHà,à5HHà ,à2HHà à2HHàà2HHàà3ààT-øäìTFøø PAGEHEADING VERSOHEADFøø PAGEHEADING RECTOHEADEøø PAGEHEADINGFOOTINGVEøø PAGEHEADINGFOOTINGR TITAN TITAN  HELVETICA HELVETICACLASSIC  HELVETICA MODERN MODERNMODERNMODERN  HRULE.GETFNMODERN 1  HRULE.GETFNMODERN 2  HRULE.GETFNMODERN  HRULE.GETFNMODERN  HRULE.GETFNMODERN  !IM.INDEX.GETFN %IM.INDEX.GETFNCLASSIC g  )IM.INDEX.GETFN *IM.INDEX.GETFNCLASSIC 0IM.INDEX.GETFN  *IM.INDEX.GETFNG  HRULE.GETFNMODERN   HRULE.GETFNMODERN @ * Wp BÌ &  j 'IM.INDEX.GETFNCLASSIC  c4$  '  HRULE.GETFNMODERNIM.INDEX.GETFNIM.INDEX.GETFNz U$  zº