From patchwork Wed Oct 4 15:36:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Ekaitz Zarraga X-Patchwork-Id: 54480 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id E308127BBEA; Wed, 4 Oct 2023 16:37:08 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,PDS_OTHER_BAD_TLD,SPF_HELO_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 3118827BBE9 for ; Wed, 4 Oct 2023 16:37:07 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qo3va-0007U3-Ho; Wed, 04 Oct 2023 11:36:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qo3vZ-0007TU-BG for guix-patches@gnu.org; Wed, 04 Oct 2023 11:36:45 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qo3vZ-0003jE-2l for guix-patches@gnu.org; Wed, 04 Oct 2023 11:36:45 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qo3vq-0000VJ-NO for guix-patches@gnu.org; Wed, 04 Oct 2023 11:37:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#66343] Add more setups to Guix docs Resent-From: Ekaitz Zarraga Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 04 Oct 2023 15:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 66343 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 66343@debbugs.gnu.org Cc: "guix-devel\\\\@gnu.org" , Ludovic =?utf-8?q?Court?= =?utf-8?q?=C3=A8s?= , Simon Tournier X-Debbugs-Original-To: "guix-patches@gnu.org" Received: via spool by submit@debbugs.gnu.org id=B.16964338201926 (code B ref -1); Wed, 04 Oct 2023 15:37:02 +0000 Received: (at submit) by debbugs.gnu.org; 4 Oct 2023 15:37:00 +0000 Received: from localhost ([127.0.0.1]:45129 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qo3vn-0000Uz-VC for submit@debbugs.gnu.org; Wed, 04 Oct 2023 11:37:00 -0400 Received: from lists.gnu.org ([2001:470:142::17]:39252) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qo3vl-0000Ui-00 for submit@debbugs.gnu.org; Wed, 04 Oct 2023 11:36:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qo3vN-0007LY-Rc; Wed, 04 Oct 2023 11:36:33 -0400 Received: from mail-4323.proton.ch ([185.70.43.23]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qo3vJ-0003Yq-UI; Wed, 04 Oct 2023 11:36:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=elenq.tech; s=protonmail2; t=1696433784; x=1696692984; bh=pnjnOqf9les6gJyqOw6uB+tN4y/Qnd5ibaDntdi58So=; h=Date:To:From:Cc:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=GI04a4uHcOb28wrixrLspTsuGmW+QI4NI7AwFoaMrIAnf9FYlGjtvv/Pz9Xep9xKr ZbHjq8Ic7YpXVFf86vnBcBZCd+9BW+k4sGJdC6PeGSpcisobwRaasf6crQoHzP9NRz lIToxHg2iCo/1iBcBT8XCL9OI9jxO6H0z/MXRRVJFHnZn6kS3hbiLsfaYzYnLFgB3g tyYzNCJLNlwEp9szRIJykCoE4/lG7q9ppR64RBblktirUALrnfndh/azfsFM9tqxpg HGoTPmkK/Ppnv8XJuadHI6HaTLwIDAjosRO6VpYQIWVH6EEqAHgx/CBZFkN+6Ln4nd A0GiRHLfy0JIw== Date: Wed, 04 Oct 2023 15:36:18 +0000 From: Ekaitz Zarraga Message-ID: Feedback-ID: 3263582:user:proton MIME-Version: 1.0 Received-SPF: pass client-ip=185.70.43.23; envelope-from=ekaitz@elenq.tech; helo=mail-4323.proton.ch X-Spam_score_int: 0 X-Spam_score: -0.1 X-Spam_bar: / X-Spam_report: (-0.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, PDS_OTHER_BAD_TLD=1.999, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches ------- Original Message ------- On Wednesday, October 4th, 2023 at 15:27, Ludovic Courtès wrote: > Hi, > > Ekaitz Zarraga ekaitz@elenq.tech skribis: > > > From 0c2be98f05bb288699a8e39dcef6428eb5a9dc3f Mon Sep 17 00:00:00 2001 > > Message-ID: 0c2be98f05bb288699a8e39dcef6428eb5a9dc3f.1695679042.git.ekaitz@elenq.tech > > From: Ekaitz Zarraga ekaitz@elenq.tech > > Date: Mon, 25 Sep 2023 16:16:28 +0200 > > Subject: [PATCH] WIP: doc: contributing: Add alternative setups section > > > > Start with Guile Studio and Vim/NeoVim. > > > > * doc/contributing.texi (Alternative Setups): Add section explaining > > other setups that are similar to the one in The Perfect Setup > > > Not a maintainer either but I like it! > > > +@node Alternative Setups > > + > > > I think you’re missing an @section here. > > > +@node Vim and NeoVim > > +@subsection Vim and Neovim > > > Which spelling is the right one? :-) > > Maybe send it to guix-patches@gnu.org so it passes on everyone’s radar, > but otherwise LGTM! > > Ludo’. Great! Thanks Ludo. Fixed! I add guix-patches in the loop. Thanks all, Ekaitz From 8ea037b7d8f3472323682594266f5810fd87f291 Mon Sep 17 00:00:00 2001 Message-ID: <8ea037b7d8f3472323682594266f5810fd87f291.1696433643.git.ekaitz@elenq.tech> From: Ekaitz Zarraga Date: Mon, 25 Sep 2023 16:16:28 +0200 Subject: [PATCH] doc: contributing: Add alternative setups section Start with Guile Studio and Vim/NeoVim. * doc/contributing.texi (Alternative Setups): Add section explaining other setups that are similar to the one in The Perfect Setup --- doc/contributing.texi | 77 +++++++++++++++++++++++++++++++++++++++---- 1 file changed, 70 insertions(+), 7 deletions(-) diff --git a/doc/contributing.texi b/doc/contributing.texi index 0de47a403b..c476097bf5 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,75 @@ 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 + +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 +1327,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. base-commit: 284f8508bebcae510261c7c223dc28f9badf87ce -- 2.41.0