$ OLD_VERIFY = F$VERIFY (0) $ ASK := READ/END_OF_FILE=EXIT SYS$COMMAND/PROMPT= $ CONVERT := CONVERT $ COPY := COPY $ DELETE := DELETE $ EDIT := EDIT $ PURGE := PURGE $ RENAME := RENAME $ SAY := WRITE SYS$OUTPUT $ ! $ SAY "" $ SAY " Re-alphabetize a dictionary in anagrammatic order." $ SAY " Any files in the directory named ANA*.DIC will" $ SAY " be used (and destroyed) by this procedure." $ SAY "" $ IF F$MODE() .EQS. "INTERACTIVE" $ THEN $ ASK "Do you wish to continue? [Y/N d:N]: " Q $ IF .NOT. Q THEN GOTO EXIT $ ENDIF $ ! $ OLD_DEFAULT = F$ENVIRONMENT ("DEFAULT") $ NEW_DEFAULT = F$ENVIRONMENT ("PROCEDURE") $ NEW_DEFAULT = F$EXTRACT (0, F$LOCATE ("]", NEW_DEFAULT), - NEW_DEFAULT) + "]" $ SET DEFAULT 'NEW_DEFAULT' $ SAY "---- Concatenating dictionary files." $ COPY NLA0: ANA.TMP $ CAT_LOOP: $ CAT_FILE = F$SEARCH ("ANA*.DIC;") $ IF CAT_FILE .EQS. "" THEN GOTO CAT_LOOP_END $ CAT_FILE = F$PARSE (CAT_FILE, , , "NAME") + - F$PARSE (CAT_FILE, , , "TYPE") $ SAY " ... Appending ", CAT_FILE $ ON WARNING THEN GOTO CAT_LOOP $ ASSIGN/USER_MODE NLA0: SYS$OUTPUT $ ASSIGN/USER_MODE NLA0: SYS$ERROR $ APPEND 'CAT_FILE' ANA.TMP $ GOTO CAT_LOOP $ CAT_LOOP_END: $ ! $ SAY "---- Creating file with anagrams (this will take a bit)." $ ASSIGN/USER_MODE NLA0: SYS$OUTPUT $ RUN ANAMAK ANA.TMP ANA.TMP $ PURGE ANA.TMP $ ! $ SAY "---- Sorting the anagram file." $ SORT ANA.TMP ANA.TMP $ PURGE ANA.TMP $ ! $ SAY "---- Excising anagrams from sorted file." $ ASSIGN/USER_MODE NLA0: SYS$OUTPUT $ ASSIGN/USER_MODE NLA0: SYS$ERROR $ EDIT/EDT/COMMAND=SYS$INPUT ANA.TMP C;BR 128(32767(DEW+L)) EX S/ //WH/NOTY EXIT $ PURGE ANA.TMP $ ! $ IF F$SEARCH ("ANA%%.TMP") .NES. "" $ THEN $ SAY "---- Blowing away the old ANA%%.TMP files." $ DELETE ANA%%.TMP;* $ ENDIF $ ! $ SAY "---- Breaking up anagrams into individual files (this WILL take a while)." $ RUN ANADIC ANA.TMP $ ! $ SAY "---- Backing up the ANA*.DIC files to ANA.TMP/SAVE_SET" $ BACKUP/IGNORE=INTERLOCK ANA*.DIC;* ANA.TMP/SAVE_SET $ ! $ SAY "---- Blowing away the old ANA*.DIC files." $ SAY " You'll have to restore ANA.TMP to recover after this point." $ DELETE ANA*.DIC;* $ ! $ SAY "---- Renaming the ANA%%.TMP files to ANA%%.DIC" $ RENAME ANA%%.TMP;* *.DIC;* $ ! $ SAY "---- Dictionary reconstruction complete." $ SAY " Don't forget to delete ANA.TMP." $ SAY " $ EXIT: $ IF F$TYPE (OLD_DEFAULT) .NES. "" THEN SET DEFAULT 'OLD_DEFAULT' $ OLD_VERIFY = F$VERIFY (OLD_VERIFY) $ EXIT