{ALT+C}i{TAB}{TAB}d:\amcowin\defaults.h{ENTER}{CTRL+W} {ALT+M}i{TAB}{TAB}d:\amcowin\defaults.h{ENTER}{CTRL+W}Then I ran a little PRG to do all this for me:
clear set escape on on error do ErrTrap in Program() on escape suspend DoForms() DoClasses() on escape on error return procedure DoForms * lnRetVal = adir(laForms, 'forms\*.scx') asort(laForms) for lnI = 1 to lnRetVal lcForm = laForms[lnI, 1] keyboard '{ALT+H}' modi form (lcForm) ? lcForm endfor return procedure DoClasses * lnRetVal = adir(laLibraries, 'classes\*.vcx') asort(laLibraries) for lnI = 1 to lnRetVal lcLibrary = laLibraries[lnI, 1] lnClasses = avcxclasses(laClasses, lcLibrary) asort(laClasses) for lnJ = 1 to lnClasses && slow down so previous class has chance to release and && clear class from memory. may not always be long enough =inkey(2) lcClass = laClasses[lnJ, 1] keyboard '{ALT+V}' modi class (lcClass) of (lcLibrary) ? lcLibrary + ": " + lcClass endfor endfor return procedure ErrTrap * release laError* public array laError[1] aerror(laError) suspend