Alex Kost <alez...@gmail.com> writes: > myglc2 (2016-07-12 17:22 +0300) wrote: > >> Alex Kost <alez...@gmail.com> 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 ;-)