help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: guix-edit shows "Autodoc not available..." w/ 2 REPLs


From: myglc2
Subject: Re: guix-edit shows "Autodoc not available..." w/ 2 REPLs
Date: Wed, 13 Jul 2016 20:12:47 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Alex Kost <address@hidden> writes:

> myglc2 (2016-07-12 17:22 +0300) wrote:
>
>> Alex Kost <address@hidden> writes:
>>
>>> myglc2 (2016-07-11 18:09 +0300) wrote:
>>>
>>>> Running guix/debian ...
>>>>
>>>> When I do 'M-x guix-edit RET screen RET' I get ...
>>>>
>>>> "Autodoc not available (No Geiser REPL for this buffer (try M-x 
>>>> run-geiser))"
>>>
>>> Ouch, I've just answered you on #guix (using sneek).
>>
>> Thanks, sorry I missed your IRC response. I'm not familiar with
>> sneek. Can you provide a reference?
>
> Just join #guix and say hello.  Sneek (the bot) will send you my answer.

Thank you.

>>> This error is harmless.  It comes from Geiser and happens when you work
>>> with any scheme file and did not start Geiser REPL.
>>>
>>> Guix REPL is used only by "M-x guix-..." commands (to show/install
>>> packages, open package files, etc.).  Guix REPL does not interfere with
>>> a usual editing of scheme files.  I mean "M-x guix-edit ..." just opens
>>> a scheme file with the package definition, and that's it.  If you need a
>>> Geiser REPL (but it's unlikely you need it) while working with this
>>> file, you can start it with C-c C-z.
>>
>> I was thinking autodoc might help me understand guix/guile. No?
>
> Probably.  I think Geiser is a big helper if you work with Scheme in
> Emacs.
>
>> I am trying to get all the bells and whistles working. In search of a
>> more perfect setup, I switched back to GuixSD, so comments below relate
>> to GuixSD. Now, when I 'M-x guix-edit RET screen' & 'M-x run-geiser' I
>> get auto doc works and I see these buffers:
>>
>>  MR Name                    Size Mode             Filename/Process
>>   -- ----                    ---- ----             ----------------
>>  *  * Guile REPL *           635 REPL             (Guile REPL<1> run)
>
> This is the Geiser REPL that you started manually.  It can be helful
> when you work with scheme files.  See the Geiser manual :-)
>
>>  *  *Guix REPL*              312 REPL             (Guile REPL run)
>>  *  *Guix Internal ...       312 REPL             (*Guix Internal REPL*
>
> These REPLs are started automatically when you run one of "M-x guix..."
> command.  They are used to get various info (on packages, generations,
> licenses), to install packages, etc.  They are not intended to be used
> as general Guile REPLs.  There is a reason why there are 2 REPLs instead
> of a single one (if you are interested you may "M-x find-library
> guix-backend" and read the starting commentary).  Although it would
> probably be better to hide the "internal" repl to make it less confusing
> for users.
>
>> Can you comment on whom/what each of these REPLs is used by/for?
>>
>> If I want to use a REPL, which one should I use?
>
> The Geiser one (by default it is called "* Guile REPL *").  Actually,
> you are free to do whatever you want (I do whatever I want all the
> time).
>
>> Would it make sense to add this info to the doc?
>
> Sorry, what info do you mean?

I mean add an explanation along the lines of what your wrote above to
the documentation.  Maybe in a background or how it works section.

>>> BTW, if you don't want to use Geiser at all, you can disable it with
>>> (setq geiser-mode-auto-p nil).  With this setting, scheme files will not
>>> enable 'geiser-mode', so you will not see that autodoc error anymore.
>>
>> OK, but I am going in the other direction, trying to get '8.3 The
>> Perfect Setup' working. Right now, unless I manually start the 3rd REPL,
>> these commands: ‘C-c . u’ ‘C-c . b’, ‘C-c . s’, ‘C-c . l’, all produce
>> 'or: Geiser REPL not found' in *Messages*.
>>
>> Is this normal?
>
> Yes, because the Geiser REPL is not started.  These commands are
> additions to the Geiser functionality, they work only when you have a
> running Geiser REPL.  The same will happen with usual Geiser commands,
> like 'C-x C-e' or 'M-.'.
>
>> If so, would it be a helpful enhancement if guix-emacs started the 3rd
>> REPL automatically?
>
> No!  This relates to a usual editing of .scm files.  When you open .scm
> file, the Geiser REPL is not started automatically, and it shouldn't!  I
> think this would be a malicious behavior.

I don't understand why this would be malicious. Could you explain?

> It's up to a user to decide how (s)he wants to edit his/her files (in
> this case: with or without a help of Geiser).

Agreed. But I would prefer for Guix by default to start the REPL and
provide a way for me to disable this behavior if I like ;-)

In general, I think it would be better for commands like 'C-c . l' to
work instead of: beeping and giving the message "or: Geiser REPL not
found".  Such messages tend to give the first impression that something
is not working properly :-(

In general, if there are commands that don't work in a vanilla install,
the doc should indicate that they don't work without additional
setup/action, what that setup/action is, and what a user sees if that
setup/action has not been done.

But, as far as possible, I think you should try to make everything work
in a vanilla install, even if it means setting some Guix options in a
way that a power user will not prefer. This way it will be a power user
changing an option and seeing a message like "or: Geiser REPL not
found" and he/she will be able to figure it out ;-)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]