On 04/12/2017 at 12:11 Alex Kost writes: > myglc2 (2017-04-12 00:21 -0400) wrote: > >> I am starting to wonder if something is horribly wrong. Why? Well, if I >> do 'M-x guix-edit emacs.scm', do 'M-x run-geiser', select >> 'define-module', and press M-. I see ... >> >> geiser-edit-symbol-at-point: Couldn’t find edit location for >> ’define-module’ >> >> If I select 'emacs-build-system' and press M-. I see ... >> >> geiser-edit-symbol-at-point: Couldn’t find edit location for >> ’emacs-build-system’ >> >> Is this how geiser works for others? > > Yes, it is, that's why I added "C-c . u" to Emacs-Guix: before you can > jump to a definition, you need to use the current module, so after > pressing "C-c . u", "M-." on 'emacs-build-system' should work. > > As for 'define-module', you'll never be able to "edit" it with "M-.", > because it is internal. See <https://github.com/jaor/geiser/issues/160>.
This puzzles me. If I use etags I can get *xref* to show ... /home/g1/src/guix/test-tmp/store/ywpd8i2s87fzmzfpl2h96m949p7rwmcd-guile-bootstrap-2.0/share/guile/2.0/ice-9/curried-definitions.scm 44: (define-syntax define-public /home/g1/src/guix/test-tmp/store/ywpd8i2s87fzmzfpl2h96m949p7rwmcd-guile-bootstrap-2.0/share/guile/2.0/ice-9/boot-9.scm 3576: (define-syntax define-public /home/g1/src/guix/test-tmp/store/v229gc83qn1j7c7l6r65bfw2b8j7rx2w-boot-9.scm 3685: (define-syntax define-public Isn't one of these what I want to look at? Thank you for helping me to get "C-c . u", "M-." working. For others that may care, here are fixes I needed: Problem: emacs-guix development mode (C-c . _) functions don't work: Fix: add in emacs `init ... (add-hook 'scheme-mode-hook 'guixlevell-mode) Problem: 'C-c . u' is horribly slow and 'M-.' produces ... geiser-ediot-symbol-at-point: Couldn’t find edit location for ’define-module’ As you explained off-list ... > guix is still compiled with Guile 2.0! (Ludovic plans to switch Guix > to Guile 2.2 really soon). And these two Guile versions are > incompatible! So whenever you start guile (no matter in a shell or > with "M-x run-guile" or via Guix REPL), guile 2.2 doesn't find > compatible .go files (that's where errors come from) and it compiles > .scm again for 2.2 version. Fix: remove guile from user and/or system profiles! Problem: 'C-c . u' is not so horribly slow and 'M-.' produces .... geiser-ediot-symbol-at-point: Couldn’t find edit location for ’define-module’ Fix: remove ... (with-eval-after-load 'geiser-guile (add-to-list 'geiser-guile-load-path "~/src/guix")) ... from emacs init. Add this to .bash_profile ... export GUILE_LOAD_PATH="$HOME/src/guix${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH" export GUILE_LOAD_COMPILED_PATH="$HOME/src/guix${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH"