Returning to our example definer
(defmacro parameterdef (value name)
`(defparameter ,name ,value))
foo.lisp
containing
*foo*
. Notice that LispWorks knows which file the definition is in, but cannot find the defining top level form.
*foo*
. This is because the Editor does not recognise
parameterdef
as a definer. When the LispWorks editor looks at the definitions in a buffer, it needs to know the dspecs that each defining form will generate when evaluated. You can tell the editor how to parse a defining form to generate the dspec by using define-form-parser.
parameterdef
and inform the dspec system that
parameterdef
is another way of naming a
defparameter
dspec:(dspec:define-form-parser parameterdef (value name)
`(parameterdef ,name))
(dspec:define-dspec-alias parameterdef (name)
`(defparameter ,name))
*foo*
again. Notice that the source of the definition of
*foo*
is displayed correctly in the text tab of the Editor tool, and that the Definitions tab displays the definition as
(parameterdef *foo*)