[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Is this the way geiser works for others?
From: |
myglc2 |
Subject: |
Re: Is this the way geiser works for others? |
Date: |
Fri, 14 Apr 2017 12:38:28 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) |
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"