Hi,
Some time ago I could put the point on a function and press Alt-. and slime would take me to the function definition (or a list of possibilities in the case of generics, etc). After one of the updates I did awhile back it stopped working in many circumstances although it contines to work in others.
The case it doesn't work in is the one that effects me on a daily basis. Here's two examples:
1. I have a piece of development code with multiple files. The main file loads the other lisp files wherein functions are defined. The only way I can get the operation to work is if I manually compile each function individually. Simply loading the file at any point will reset slime back to not knowing where they are again.
2. Similar situation, only this time using ASD:
(in-package :cl-user) (defpackage :ftis-v43-asd (:use :cl :asdf)) (in-package :ftis-v43-asd) (defparameter *ftis-v43-directory* (make-pathname :name nil :type nil :version nil :defaults (parse-namestring *load-truename*))) (asdf:defsystem #:ftis-v43 :depends-on (:cl-extra :cl-ppcre :graham :cl-fad :json-pt :html5 :cl-who :cl-gd-ext) :serial t :components ((:file "ftis-v43-package") (:file "common") (:file "vectors") (:file "waveforms") (:file "interface") (:file "model") (:file "post-processing") (:file "octave") (:file "verify") (:file "make-html-pages")))
And the package.lisp file like this:
(defpackage :ftis-v43 (:use :cl :cl-extra :cl-ppcre :cl-fad :graham :cl-gd-ext :json-pt :html5 :cl-who) (:shadowing-import-from :cl-who :str :htm :fmt) (:export #:gen-vhdl-vectors #:gen-1ping-per-setname #:gen-vhdl-mping-vectors #:gen-mping-per-setname #:run-verification #:compare-model-octave #:compare-model-octave-all #:unpack-new-tarball #:process-vhdl-tarball #:process-all-vhdl-tarballs))
The behavior is identical: Alt-. does not work until I manually open one of the source files and compile that function.
Other packages I've written and load through ASD work as they should. I can't see any difference in the way they are constructed.
Is there any remedy for this? Using grep to move around works but is annoyingly cumbersome and time consuming.
Regards,
--Jeff