The following command does not exist that I know of.
Not being a programmer, I can only give the idea of what the EXT
command should do. As to the specific use of the options, it may
a bit different than say EXT -t <filename>. This might work better
in a different syntax, then again maybe not. Please do give me some
feedback as to what you think of the following. Tim Rue
EXT command specs.
EXT <filename> [arg1 arg2,,,] <opt .extname>
Looks at the extention in the filename and follows the processes
in the EXT-Ref. file according to a user defined process, passing
the filename and any optional arguments to the EXT-Ref file. If
no extenion is found in current user defined EXT-Ref. file then
prints to screen "No EXT-Referance found for <Filename>". The
<opt .ext name> is optional and is used instead of filename
extention or in the case of no extention in filename.
EXT -t <filename> ( -t = Tell )
Disreguards extention (if any) and does string(s) search of
file in an effort to determine file type, via searching for
user defined string(s), via an EXT-String file. If string
found, prints to screen "<String>=<user defined extention(s)>
for <Filename>". If no string found, prints to screen "No string
match found for <Filename>".
EXT -w <Ext-Referance filename> ( -w = With )
Changes the EXT-Ref. Default (RAM:) file to another user defined
EXT-Ref. File. User can create as many EXT-Ref. files as needed.
EXT -c <extention> <user defined process> ( -c = Change )
When the EXT command is first used it copies to RAM: the EXT-Ref.
file to be used. The -c opt only changes or adds to the file in
RAM:. If an extention is already being used it replaces it with
the new process to follow.
EXT -s <filename> ( -s = Save )
Saves to disk the RAM:EXT-Ref. file as <filename>. If no filename
is specified it saves it as the filename in RAM: overwriting
file. The file is (unless otherwise noted) saved to the same Dir
path.
EXT -d ( -d = Delete )
Deletes the EXT-Ref. file from RAM: releasing the memory used by
the EXT-Ref. file.
EXT ? (standard use of the ?)
EXT-String File format (User definable)
The listing of File character strings to search for is in the
format of a text file and works on a line by line bases as follows:
<Character string 1> = < opt user defined extention(s)> (*return key*)
< " " 2> = < " " " " > "
< " " 3> = < " " " " > etc...
Standard file formats, such as IFF, have common character strings
for the different formats (ie. IFF pictures file have a common string
amoung themselves but different than the common string of IFF sound
files.) However, different programs can use different or no file
extentions for the IFF files it uses. The EXT-String file is only a
listing of character strings to look for, for the -t opt. Also giving
a listing of extentions the user may be using in the EXT-Ref. file(s)
EXT-Referance File format (User definable)
Like the EXT-String file, the EXT-Ref. file is a text file and
works on a line by line bases as follows:
<.extention 1> = <user defined process> (*return key*)
< " 2> = < " " " >
< " 3> = < " " " > etc...
Upon finding a filename extention match, the EXT command simply
treats the <user defined process> as a standard Cli command line,
passing the filename and any arguments to this command line. If more
than one line is needed, than the user would need to write a command
sequence file and have the <user defined process> read as an example:
<execute (command seq. filename) <filename> [passed arg1 arg2,,,]>
Why AmigaDos can't Do it, yet!
If the IF-ELSE-ENDIF statement would recognize pattern matching
characters as PATTERN MATCHING CHARACTERS, then it would be possible
to write a command sequence file that would act as an EXT command to
some degree. However this is not the case, the IF-ELSE-ENDIF
statement treats Pattern Matching Characters only as actual string
characters. (ie: #?.pic does not EQ dog.pic but does EQ #?.pic)
Usefullness of the EXT Command.
Besides the basic use of determining what type of file a file is,
the following examples should give a much better idea of the uses of
such a command as EXT.
1) EXT-Ref file:
.pic = copy <filename> to pictures:
.doc = copy <filename> to Documents:
.anim = copy <filename> to Animation:
.smus = copy <filename> to Music:
This would not only copy the file to the proper Devs: (or disk) but
would also request the proper Devs: (or disk) if not present. This
EXT-Ref. file would make it easy to sort out files to the proper
place without sorting such a file as test.exp.
unless the <opt .extname> is used.
2) EXT-Ref file:
.pic = show <filename>
.doc = blitz <filename>
.anim = player <filename>
.smus = SMUS.player <filename> [args]
This would automatically use the command needed to process the
file. Saving the user the time typing in the proper command or even
remembering the command. (a listing of C: takes time!)
3) This next example is in using the EXT command in a command sequence file.
command sequence file (named fun):
.K subname1,subname2,subname3,subname4,subname5,etc...
EXT <subname1>
EXT <subname2>
EXT <subname3>
EXT-Ref. file:
.pic = newcli from <show <filename>>
.doc = newcli from <con:hpos/vpos/width/height type <filename>>
.smus = smus.player <filename> [args-subname4 & 5]
Entered in the cli:
Execute fun cat.pic cat.doc cat.smus catsound1 catsound2
What this would do is to first bring-up the cat.pic, then open a
cli window and type the cat.doc in it, then while you can both see
the .pic and read the .doc file it will play the cat.smus song.
These are only a few simple examples of the use of such a command
as EXT (extention). One might first use the example #2 to determine
which file to use with the "fun" sequence file, then -c (change) to
the EXT-Ref file in example in #3 before executing "fun" file.
Much more complex use of the EXT command and command sequence
files might be that of producing magizine disks or educational disk.
The use of such filename.extention as .quiz and .score might run a
quiz program and then show the .score file or compared scores.
Lets not forget other commands as sort, wait, join, search, etc...
and the uses of EXT with these commands. The EXT command doesn't
have to use the filename in the <user defined process>!
Another useful command?
How about a Prompt+ command. This command would simply change the
cli prompt to whatever (as prompt does), but would also type in the
command(s) specified by the user for the user. Exp. Prompt+ 1> Run
would result in:
1> Run [crusor ready for user input]
Kinda like command history, but automatic.
Hope someone will make these commands, and PD.
Timothy Rue (AAi member)