Defining file_type extensions



On 2/13/11 5:34 AM, andre maute wrote:
> On 02/13/2011 01:39 AM, Raymond Toy wrote:
>> On 2/12/11 6:25 PM, David Billinghurst wrote:
>>>
>>> The file suffixes used by load are hard coded in function $file_type
>>> in mload.lisp.
>>>
>>>     (defun $file_type (fil)
>>>        (let ((typ ($pathname_type fil)))
>>>          (cond
>>>            ((member typ '("l" "lsp" "lisp") :test #'string=)
>>>             '$lisp)
>>>            ((member typ '("mac" "mc" "demo" "dem" "dm1" "dm2" "dm3"
>>> "dmt")
>>>                 :test #'string=)
>>>             '$maxima)
>>>            (t
>>>             '$object))))
>>>
>>> You could put a modified version of this function in your
>>> maxima-init.lisp file - see
>>> http://maxima.sourceforge.net/ui-tips.html
>> This has come up several times now.  Perhaps it's time to allow the user
>> to change this easily.
>>
>> I propose adding two new variables $file_type_lisp and
>> $file_type_maxima, defaulting to the values above.  Then the user can
>> change them however they want.
> Yes please. That would be great.
Done. 

file_type_lisp and file_type_maxima are lists that the user can change
to add whatever extension he wants.
No checking is done on the elements, or if there are duplicates, but
file_type_lisp is checked first for a match, as before.

Ray