2019-05-14 06:17 sirga...@zoho.com:
I'm getting a "No prompt found!" error when I try to connect
Geiser to a Guile REPL like this:
1. In a terminal, run "$ guile --listen=/tmp/guile-socket"
2. In Emacs, "M-x geiser-connect-local", then "guile", and
finally "/tmp/guile-socket"
When the Guile REPL start in Emacs, I get a "No prompt found!"
in the echo area, and the prompt in the REPL looks like this:
https://multimedialib.files.wordpress.com/2019/05/emacs-geiser-guile-repl-no-prompt-found-2019-05-13.png
After trying some things out with help from str1ngs on #guix, we
found out that the problem is related to the ".guile" file that
seems to be generated by the system by default. In my case,
".guile" looks like this:
##########
(cond ((false-if-exception (resolve-interface '(ice-9
readline)))
=>
(lambda (module)
;; Enable completion and input history at the REPL.
((module-ref module 'activate-readline))))
(else
(display "Consider installing the 'guile-readline'
package for
convenient interactive line editing and input history.\n\n")))
(unless (getenv "INSIDE_EMACS")
(cond ((false-if-exception (resolve-interface '(ice-9
colorized)))
=>
(lambda (module)
;; Enable completion and input history at the
REPL.
((module-ref module 'activate-colorized))))
(else
(display "Consider installing the
'guile-colorized' package
for a colorful Guile experience.\n\n"))))
##########
When I remove this file and try to connect again, the "No prompt
found!" error disappears, and the prompt looks normal.
Does it work when you start the Guile REPL with an
environment-variable called INSIDE_EMACS? That way, it worked fine
for me:
#+begin_src sh
INSIDE_EMACS=true guix repl --listen=tcp:37146
#+end_src
If this works, then I'd suggest that this is not a bug but rather
you got to know that you need to deliver that environment variable
to guix/guile. We could then close this ticket.
Personally, I think this is only a bug in Geiser which should be
able to parse colored prompts.