Discussion:
[Geiser-users] Cannot get autodoc to work with chicken
Erich Rast
2017-01-10 10:49:39 UTC
Permalink
Hi!

I'm both new to geiser and chicken and have troubles getting autodoc to
work with chicken. I have installed chicken 4.11.0 manually
in /usr/local/bin/ on Linux Mint 18. It runs if I run 'csi' in the
terminal. Geiser is installed via melpa. I've followed all installation
instructions including the curl to download and untar the docs.

When I open a scheme file, Geiser mode starts. After run-geiser a repl
opens in a buffer. It says "Scheme Chicken/A Paredit Undo-Tree AC Wrap"
above the buffer.

But whenever I move the cursor over a symbol like e.g. display or car,
it says "Autodoc not available (Symbol's function definition is void:
geiser-syntax--pop-to-top)".

Any advice on how to get this working?

Best,

Erich
Jose A. Ortega Ruiz
2017-01-11 00:17:58 UTC
Permalink
Hi Erich,
Post by Erich Rast
Hi!
I'm both new to geiser and chicken and have troubles getting autodoc to
work with chicken. I have installed chicken 4.11.0 manually
in /usr/local/bin/ on Linux Mint 18. It runs if I run 'csi' in the
terminal. Geiser is installed via melpa. I've followed all installation
instructions including the curl to download and untar the docs.
When I open a scheme file, Geiser mode starts. After run-geiser a repl
opens in a buffer. It says "Scheme Chicken/A Paredit Undo-Tree AC Wrap"
above the buffer.
But whenever I move the cursor over a symbol like e.g. display or car,
geiser-syntax--pop-to-top)".
Any advice on how to get this working?
The error seems to indicate that somehow geiser's elisp code is not
fully loaded. Do you have any specific configuration in your init files
(.emacs or similar)? The function geiser-syntax--pop-to-top is defined
in geiser-syntax: `M-x find-library RET geiser-syntax' should find it if
it's loaded. Does it? If it doesn't, a quick experiment is to open
geiser-syntax.el in geiser's directory, do an M-x eval-buffer and see if
that solves the problem.

Cheers,
jao
--
"When you come to a fork in the road, take it"
-Yogi Berra, baseball coach.
Erich Rast
2017-01-11 12:15:52 UTC
Permalink
Hi Jose,

On Wed, 11 Jan 2017 01:17:58 +0100
Post by Jose A. Ortega Ruiz
Post by Erich Rast
But whenever I move the cursor over a symbol like e.g. display or
car, it says "Autodoc not available (Symbol's function definition
is void: geiser-syntax--pop-to-top)".
Any advice on how to get this working?
The error seems to indicate that somehow geiser's elisp code is not
fully loaded. Do you have any specific configuration in your init
files (.emacs or similar)? The function geiser-syntax--pop-to-top is
defined in geiser-syntax: `M-x find-library RET geiser-syntax' should
find it if it's loaded. Does it?
Find-library finds geiser-syntax.el in /usr/local/share/emacs/site-lisp/
and opens it. When I evaluate it with eval-buffer and switch to the
source code buffer (after run-geiser), there is no change. Emacs
continues to crank "Autodoc not available (Symbol's function definition
is void: geiser-syntax--pop-to-top)" whenever I move the cursor over a
function like 'display' in (display "hello world").

But there is another hint that I've overlooked before: Right after
opening a scheme file, there is a short-lived message "File mode
specification error: (void-function geiser-syntax--simple-keywords)"

Does that help with troubleshooting? Maybe it has to do with the fact
that Melpa installs it site-wide?

I'd really like to get this working.

Best,

Erich
Jose A. Ortega Ruiz
2017-01-11 17:25:50 UTC
Permalink
Post by Erich Rast
Hi Jose,
On Wed, 11 Jan 2017 01:17:58 +0100
Post by Jose A. Ortega Ruiz
Post by Erich Rast
But whenever I move the cursor over a symbol like e.g. display or
car, it says "Autodoc not available (Symbol's function definition
is void: geiser-syntax--pop-to-top)".
Any advice on how to get this working?
The error seems to indicate that somehow geiser's elisp code is not
fully loaded. Do you have any specific configuration in your init
files (.emacs or similar)? The function geiser-syntax--pop-to-top is
defined in geiser-syntax: `M-x find-library RET geiser-syntax' should
find it if it's loaded. Does it?
Find-library finds geiser-syntax.el in /usr/local/share/emacs/site-lisp/
and opens it. When I evaluate it with eval-buffer and switch to the
source code buffer (after run-geiser), there is no change. Emacs
continues to crank "Autodoc not available (Symbol's function definition
is void: geiser-syntax--pop-to-top)" whenever I move the cursor over a
function like 'display' in (display "hello world").
But there is another hint that I've overlooked before: Right after
opening a scheme file, there is a short-lived message "File mode
specification error: (void-function geiser-syntax--simple-keywords)"
Does that help with troubleshooting? Maybe it has to do with the fact
that Melpa installs it site-wide?
Maybe. I've never seen MELPA writing in my
/usr/local/share/emacs/site-lisp directory. How do you do that?
Post by Erich Rast
I'd really like to get this working.
A thing you could try is to uninstall geiser completely from MELPA,
getting a git clone and then follow the instructions here:
http://geiser.nongnu.org/geiser_2.html#From-the-source_0027s-mouth
(it's really simple if you have git at hand).

Ceers,
jao
--
"In the beginning the Universe was created. This has made a lot of people
very angry and been widely regarded as a bad move."
- Douglas Adams
Erich Rast
2017-01-13 17:11:44 UTC
Permalink
On Wed, 11 Jan 2017 18:25:50 +0100
Post by Jose A. Ortega Ruiz
Post by Erich Rast
On Wed, 11 Jan 2017 01:17:58 +0100
you could try is to uninstall geiser completely from MELPA,
Post by Jose A. Ortega Ruiz
http://geiser.nongnu.org/geiser_2.html#From-the-source_0027s-mouth
(it's really simple if you have git at hand).
I did that, first uninstalled geiser via Melpa, then installed geiser
from git exactly like in the docs (into ~/lisp/geiser), put into
~/.emacs:

(load-file "~/lisp/geiser/elisp/geiser.el")

and also made sure the chicken docs are installed (the directory
is /usr/local/share/chicken). The result is exactly the same as before,
geiser loads but emacs states that "Autodoc not available...".

Apparently my emacs is cursed. :/

Best,

Erich
Jose A. Ortega Ruiz
2017-01-15 21:55:02 UTC
Permalink
Post by Erich Rast
On Wed, 11 Jan 2017 18:25:50 +0100
Post by Jose A. Ortega Ruiz
Post by Erich Rast
On Wed, 11 Jan 2017 01:17:58 +0100
you could try is to uninstall geiser completely from MELPA,
Post by Jose A. Ortega Ruiz
http://geiser.nongnu.org/geiser_2.html#From-the-source_0027s-mouth
(it's really simple if you have git at hand).
I did that, first uninstalled geiser via Melpa, then installed geiser
from git exactly like in the docs (into ~/lisp/geiser), put into
(load-file "~/lisp/geiser/elisp/geiser.el")
and also made sure the chicken docs are installed (the directory
is /usr/local/share/chicken).
I take it that means that you performed the actions described in the
installation instructions, namely:

$ chicken-install -s apropos chicken-doc
$ cd `csi -p '(chicken-home)'`
$ curl http://3e8.org/pub/chicken-doc/chicken-doc-repo.tgz | sudo tar zx

right?
Post by Erich Rast
The result is exactly the same as before, geiser loads but emacs
states that "Autodoc not available...".
And does any other scheme (Guile, Racket, etc.) work?

Cheers,
jao
--
Beauty is the purgation of superfluities.
-Michelangelo Buonarroti (1475-1564)
Mario Domenech Goulart
2017-01-27 08:17:46 UTC
Permalink
Hi,
Post by Jose A. Ortega Ruiz
Post by Erich Rast
On Wed, 11 Jan 2017 18:25:50 +0100
Post by Jose A. Ortega Ruiz
Post by Erich Rast
On Wed, 11 Jan 2017 01:17:58 +0100
you could try is to uninstall geiser completely from MELPA,
Post by Jose A. Ortega Ruiz
http://geiser.nongnu.org/geiser_2.html#From-the-source_0027s-mouth
(it's really simple if you have git at hand).
I did that, first uninstalled geiser via Melpa, then installed geiser
from git exactly like in the docs (into ~/lisp/geiser), put into
(load-file "~/lisp/geiser/elisp/geiser.el")
and also made sure the chicken docs are installed (the directory
is /usr/local/share/chicken).
I take it that means that you performed the actions described in the
$ chicken-install -s apropos chicken-doc
$ cd `csi -p '(chicken-home)'`
$ curl http://3e8.org/pub/chicken-doc/chicken-doc-repo.tgz | sudo tar zx
right?
Documentation works for me using the following code in .emacs and geiser
from git (cloned under ~/.elisp):

(load-file "~/.elisp/geiser/elisp/geiser.el")
(setq geiser-active-implementations '(chicken))
(setq geiser-default-implementation 'chicken)

I'm on Emacs 24.5.1.

All the best.
Mario
--
http://parenteses.org/mario
Loading...