diff mbox series

[bug#66343] Add more setups to Guix docs

Message ID ZR3QVVyYZ6cyYc4a@3900XT
State New
Headers show
Series [bug#66343] Add more setups to Guix docs | expand

Commit Message

Efraim Flashner Oct. 4, 2023, 8:51 p.m. UTC
On Wed, Oct 04, 2023 at 06:47:51PM +0000, Ekaitz Zarraga wrote:
> 
> ------- Original Message -------
> On Wednesday, October 4th, 2023 at 18:35, Efraim Flashner <efraim@flashner.co.il> wrote:
> 
> 
> > On Wed, Oct 04, 2023 at 06:15:53PM +0000, Ekaitz Zarraga wrote:
> > 
> > > ------- Original Message -------
> > > On Wednesday, October 4th, 2023 at 16:18, Efraim Flashner efraim@flashner.co.il wrote:
> > > 
> > > > I think we can mention guix.vim also
> > > 
> > > Certainly, do you want to add it yourself?
> > > 
> > > Nobody is going to explain it better than you.
> > 
> > 
> > I tossed in a line or two in the middle of the patch
> 
> But you didn't attach, did you?
> 
> Or you directly commited?

I commented directly in the middle of the patch.

> +@example
> +guix install vim-fugitive
> +@end example
> +

And of course if you want to interact with Guix directly from inside of
vim, using the built-in terminal emulator, we have our very own
@code{guix.vim} package!

@example
guix install vim-guix-vim
@end example

> +In NeoVim you can even make a similar setup to Geiser using
> +@url{https://conjure.fun/, Conjure} that lets you connect to a running Guile

Comments

Ekaitz Zarraga Oct. 4, 2023, 8:55 p.m. UTC | #1
ElenQ Technology


------- Original Message -------
On Wednesday, October 4th, 2023 at 20:51, Efraim Flashner <efraim@flashner.co.il> wrote:


> On Wed, Oct 04, 2023 at 06:47:51PM +0000, Ekaitz Zarraga wrote:
> 
> > ------- Original Message -------
> > On Wednesday, October 4th, 2023 at 18:35, Efraim Flashner efraim@flashner.co.il wrote:
> > 
> > > On Wed, Oct 04, 2023 at 06:15:53PM +0000, Ekaitz Zarraga wrote:
> > > 
> > > > ------- Original Message -------
> > > > On Wednesday, October 4th, 2023 at 16:18, Efraim Flashner efraim@flashner.co.il wrote:
> > > > 
> > > > > I think we can mention guix.vim also
> > > > 
> > > > Certainly, do you want to add it yourself?
> > > > 
> > > > Nobody is going to explain it better than you.
> > > 
> > > I tossed in a line or two in the middle of the patch
> > 
> > But you didn't attach, did you?
> > 
> > Or you directly commited?
> 
> 
> I commented directly in the middle of the patch.
> 
> > +@example
> > +guix install vim-fugitive
> > +@end example
> > +
> 
> 
> And of course if you want to interact with Guix directly from inside of
> vim, using the built-in terminal emulator, we have our very own
> @code{guix.vim} package!
> 
> @example
> guix install vim-guix-vim
> @end example
> 
> > +In NeoVim you can even make a similar setup to Geiser using
> > +@url{https://conjure.fun/, Conjure} that lets you connect to a running Guile
> 
> 
> --
> Efraim Flashner efraim@flashner.co.il רנשלפ םירפא
> 
> GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
> Confidentiality cannot be guaranteed on emails sent or received unencrypted

It looks good to me.

Commit?
Efraim Flashner Oct. 5, 2023, 12:07 p.m. UTC | #2
On Wed, Oct 04, 2023 at 08:55:32PM +0000, Ekaitz Zarraga wrote:
> 
> It looks good to me.
> 
> Commit?

Looks good to me too. Patch pushed!
Ekaitz Zarraga Oct. 5, 2023, 12:12 p.m. UTC | #3
Thank you all for the collaboration!
diff mbox series

Patch

diff --git a/doc/contributing.texi b/doc/contributing.texi
index 0de47a403b..f7c72634e7 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -23,6 +23,7 @@  Contributing
 * Building from Git::           The latest and greatest.
 * Running Guix Before It Is Installed::  Hacker tricks.
 * The Perfect Setup::           The right tools.
+* Alternative Setups::          Other posible tools that do the job.
 * Packaging Guidelines::        Growing the distribution.
 * Coding Style::                Hygiene of the contributor.
 * Submitting Patches::          Share your work.
@@ -453,6 +454,83 @@  The Perfect Setup
 Emacs Manual} and @ref{Minor Mode,,, debbugs-ug, The Debbugs User
 Guide}.
 
+@node Alternative Setups
+@section Alternative Setups
+
+Alternative setups than Emacs may let you work on Guix with a
+similar development experience and they might work better with the
+tools you currently use or help you make the transition to Emacs.
+
+The options listed below only provide the alternatives to the Emacs
+based setup, which is the most widely used in the Guix community. If
+you want to really understand how is the perfect setup for Guix
+development supposed to work, we encourage you to read the section
+before this regardless the editor you choose to use.
+
+@menu
+* Guile Studio::                First step in your transition to Emacs.
+* Vim and NeoVim::              When you are evil to the root.
+@end menu
+
+@node Guile Studio
+@subsection Guile Studio
+
+Guile Studio is a pre-configured Emacs with mostly everything you need
+to start hacking in Guile. If you are not familiar with Emacs it makes
+the transition easier for you.
+
+@example
+guix install guile-studio
+@end example
+
+Guile Studio comes with Geiser preinstalled and prepared for action.
+
+@node Vim and NeoVim
+@subsection Vim and NeoVim
+
+
+Vim (and NeoVim) are also packaged in Guix, just in case you decided
+to go for the evil path.
+
+@example
+guix install vim
+@end example
+
+If you want to enjoy a similar development experience to that in the perfect
+setup, you should install several plugins to configure the editor. Vim (and
+NeoVim) have the equivalent to Paredit,
+@uref{https://www.vim.org/scripts/script.php?script_id=3998,
+@code{paredit.vim}}, that will help you with the structural editing of Scheme
+files (the support for very large files is not great, though).
+
+@example
+guix install vim-paredit
+@end example
+
+We also recommend that you run @code{:set autoindent} so that your code is
+automatically indented as you type.
+
+For the interaction with Git,
+@uref{https://www.vim.org/scripts/script.php?script_id=2975
+@code{fugitive.vim}} is the most commonly used plugin:
+
+@example
+guix install vim-fugitive
+@end example
+
+And of course if you want to interact with Guix directly from inside of
+vim, using the built-in terminal emulator, we have our very own
+@code{guix.vim} package!
+
+@example
+guix install vim-guix-vim
+@end example
+
+In NeoVim you can even make a similar setup to Geiser using
+@url{https://conjure.fun/, Conjure} that lets you connect to a running Guile
+process and inject your code there live (sadly it's not packaged in Guix yet).
+
+
 @node Packaging Guidelines
 @section Packaging Guidelines
 
@@ -1257,13 +1335,6 @@  Formatting Code
 @noindent
 @xref{Invoking guix style}, for more information.
 
-@cindex Vim, Scheme code editing
-If you are editing code with Vim, we recommend that you run @code{:set
-autoindent} so that your code is automatically indented as you type.
-Additionally,
-@uref{https://www.vim.org/scripts/script.php?script_id=3998,
-@code{paredit.vim}} may help you deal with all these parentheses.
-
 We require all top-level procedures to carry a docstring.  This
 requirement can be relaxed for simple private procedures in the
 @code{(guix build @dots{})} name space, though.