all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#57737] emacs-eval-in-repl patches
@ 2022-09-11 18:03 Nicolas Graves via Guix-patches via
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                   ` (11 more replies)
  0 siblings, 12 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:03 UTC (permalink / raw)
  To: 57737


This series of patches introduces all different files included in the
eval-in-repl repo, as well as the org-babel-eval-in-repl package.

Each file is taken individually so people can download a subset of them
depending on their use.

emacs-js-comint and emacs-alchemist are necessary packages for some of
them.

-- 
Best regards,
Nicolas Graves




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15 ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 02/22] gnu: Add emacs-eval-in-repl-ielm Nicolas Graves via Guix-patches via
                     ` (10 more replies)
  2022-09-11 18:19 ` [bug#57737] [PATCH 01/10] gnu: Add emacs-eval-in-repl-prolog Nicolas Graves via Guix-patches via
                   ` (10 subsequent siblings)
  11 siblings, 11 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 50 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 074d4d1c4c..2013a23fe8 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27038,6 +27038,56 @@ (define-public emacs-info-plus
 nodes, and more.")
       (license license:gpl2+))))
 
+(define-public emacs-eval-in-repl
+  (package
+    (name "emacs-eval-in-repl")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl.el"))
+       (sha256
+        (base32
+         "15k2ks034hq2dmm8n70xl7f4cdw57zqb36s871j7kycpkblclg3n"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-dash emacs-paredit emacs-ace-window))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for various REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+various REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.
+
+This package along with REPL/shell specific packages implement similar work flow
+for various REPLs.
+
+This package alone is not functional.  It also requires the following packages
+depending on your needs :
+@itemize
+@item eval-in-repl-ielm       for Emacs Lisp
+@item eval-in-repl-cider      for Clojure
+@item eval-in-repl-slime      for Common Lisp
+@item eval-in-repl-geiser     for Racket/Scheme
+@item eval-in-repl-racket     for Racket
+@item eval-in-repl-scheme     for Scheme
+@item eval-in-repl-hy         for Hy
+@item eval-in-repl-python     for Python
+@item eval-in-repl-ruby       for Ruby
+@item eval-in-repl-sml        for Standard ML
+@item eval-in-repl-ocaml      for OCaml
+@item eval-in-repl-prolog     for Prolog
+@item eval-in-repl-javascript for Javascript
+@item eval-in-repl-shell      for Shell
+@item eval-in-repl-iex        for Elixir
+@item eval-in-repl-erlang     for Erlang
+@item eval-in-repl-elm        for Elm
+@end itemize")
+    (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 02/22] gnu: Add emacs-eval-in-repl-ielm.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 03/22] gnu: Add emacs-eval-in-repl-cider Nicolas Graves via Guix-patches via
                     ` (9 subsequent siblings)
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-ielm): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 2013a23fe8..1fcfedede6 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27088,6 +27088,32 @@ (define-public emacs-eval-in-repl
 @item eval-in-repl-elm        for Elm
 @end itemize")
     (license license:expat)))
+
+(define-public emacs-eval-in-repl-ielm
+  (package
+    (name "emacs-eval-in-repl-ielm")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-ielm.el"))
+       (sha256
+          (base32
+           "1inm0siq0ybgcrdi1pqzawqqvx1f2540yk3s8r5cd2m6fnrjwllv"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Emacs Lisp REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Emacs Lisp REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 03/22] gnu: Add emacs-eval-in-repl-cider.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 02/22] gnu: Add emacs-eval-in-repl-ielm Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 04/22] gnu: Add emacs-eval-in-repl-slime Nicolas Graves via Guix-patches via
                     ` (8 subsequent siblings)
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-cider): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 1fcfedede6..fad450fb25 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27112,6 +27112,32 @@ (define-public emacs-eval-in-repl-ielm
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-cider
+  (package
+    (name "emacs-eval-in-repl-cider")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-cider.el"))
+       (sha256
+          (base32
+           "047sv99iv2zimv26wncnq7r8x1gjncfcmrxnprgx6s4vm5y217qj"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-cider))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Clojure REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Clojure REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 04/22] gnu: Add emacs-eval-in-repl-slime.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 02/22] gnu: Add emacs-eval-in-repl-ielm Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 03/22] gnu: Add emacs-eval-in-repl-cider Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 05/22] gnu: Add emacs-eval-in-repl-geiser Nicolas Graves via Guix-patches via
                     ` (7 subsequent siblings)
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-slime): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index fad450fb25..26ba6f2c85 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27138,6 +27138,32 @@ (define-public emacs-eval-in-repl-cider
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-slime
+  (package
+    (name "emacs-eval-in-repl-slime")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-slime.el"))
+       (sha256
+          (base32
+           "0qj4dkkkf1xgvcy6wz537w5d2aqnwc75w8g9qzdsfyadaiycgrsd"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-slime))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Common Lisp REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Common Lisp REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 05/22] gnu: Add emacs-eval-in-repl-geiser.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (2 preceding siblings ...)
  2022-09-11 18:15   ` [bug#57737] [PATCH 04/22] gnu: Add emacs-eval-in-repl-slime Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 06/22] gnu: Add emacs-eval-in-repl-racket Nicolas Graves via Guix-patches via
                     ` (6 subsequent siblings)
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-geiser): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 26ba6f2c85..baee5851a8 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27166,6 +27166,32 @@ (define-public emacs-eval-in-repl-slime
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
+
+(define-public emacs-eval-in-repl-geiser
+  (package
+    (name "emacs-eval-in-repl-geiser")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl-geiser.el"))
+       (sha256
+        (base32
+         "0x2v51hwm1iaa0r8mn34i08vck5y32njfwfiq0c0blbfmjsqlyz2"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-geiser))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Racket/Scheme REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Racket/Scheme REPLs, relying on @code{emacs-geiser}.  Emacs Speaks Statistics
+(ESS) package has a nice function called
+@code{ess-eval-region-or-line-and-step}, which is assigned to C-RET.  This
+function sends a line or a selected region to the corresponding shell (R,
+Julia, Stata, etc) visibly.  It also start up a shell if there is none.")
+    (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 06/22] gnu: Add emacs-eval-in-repl-racket.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (3 preceding siblings ...)
  2022-09-11 18:15   ` [bug#57737] [PATCH 05/22] gnu: Add emacs-eval-in-repl-geiser Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 07/22] gnu: Add emacs-eval-in-repl-scheme Nicolas Graves via Guix-patches via
                     ` (5 subsequent siblings)
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-racket): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index baee5851a8..20f4553902 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27192,6 +27192,32 @@ (define-public emacs-eval-in-repl-geiser
 function sends a line or a selected region to the corresponding shell (R,
 Julia, Stata, etc) visibly.  It also start up a shell if there is none.")
     (license license:expat)))
+
+(define-public emacs-eval-in-repl-racket
+  (package
+    (name "emacs-eval-in-repl-racket")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-racket.el"))
+       (sha256
+          (base32
+           "0wpkig2z2vfyv08i444fi2yhjy2mk0la8mpyg0z6zywjm19kyir3"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-racket-mode))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Racket REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Racket REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 07/22] gnu: Add emacs-eval-in-repl-scheme.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (4 preceding siblings ...)
  2022-09-11 18:15   ` [bug#57737] [PATCH 06/22] gnu: Add emacs-eval-in-repl-racket Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 08/22] gnu: Add emacs-eval-in-repl-hy Nicolas Graves via Guix-patches via
                     ` (4 subsequent siblings)
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-scheme): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 20f4553902..b58fcf1c50 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27216,6 +27216,32 @@ (define-public emacs-eval-in-repl-racket
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-scheme
+  (package
+    (name "emacs-eval-in-repl-scheme")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-scheme.el"))
+       (sha256
+          (base32
+           "0qc2gipr2pm80d3jjxzwbca4wbl0jhb5mp6gfz0qkagffwiv9dpi"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Scheme REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Scheme REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 08/22] gnu: Add emacs-eval-in-repl-hy.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (5 preceding siblings ...)
  2022-09-11 18:15   ` [bug#57737] [PATCH 07/22] gnu: Add emacs-eval-in-repl-scheme Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 09/22] gnu: Add emacs-eval-in-repl-python Nicolas Graves via Guix-patches via
                     ` (3 subsequent siblings)
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-hy): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index b58fcf1c50..0c50cfdcb7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27242,6 +27242,32 @@ (define-public emacs-eval-in-repl-scheme
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-hy
+  (package
+    (name "emacs-eval-in-repl-hy")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-hy.el"))
+       (sha256
+          (base32
+           "1fcf2a6vrmwvd2blh97mfdrzmym2g6q0b63s51p1k5gw7ijz0i4r"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-hy-mode))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Hy REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Hy REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 09/22] gnu: Add emacs-eval-in-repl-python.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (6 preceding siblings ...)
  2022-09-11 18:15   ` [bug#57737] [PATCH 08/22] gnu: Add emacs-eval-in-repl-hy Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:15   ` [bug#57737] [PATCH 10/22] gnu: Add emacs-eval-in-repl-ruby Nicolas Graves via Guix-patches via
                     ` (2 subsequent siblings)
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-python): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 0c50cfdcb7..c1c817ab15 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27268,6 +27268,32 @@ (define-public emacs-eval-in-repl-hy
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-python
+  (package
+    (name "emacs-eval-in-repl-python")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl-python.el"))
+       (sha256
+        (base32
+         "06abhykzz41wz8h3gr0x0ljiva9rfgpagija24afpdg8l2w0b3jn"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Python REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Python REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 10/22] gnu: Add emacs-eval-in-repl-ruby.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (7 preceding siblings ...)
  2022-09-11 18:15   ` [bug#57737] [PATCH 09/22] gnu: Add emacs-eval-in-repl-python Nicolas Graves via Guix-patches via
@ 2022-09-11 18:15   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:16   ` [bug#57737] [PATCH 11/22] gnu: Add emacs-eval-in-repl-sml Nicolas Graves via Guix-patches via
  2022-09-11 18:16   ` [bug#57737] [PATCH 12/22] gnu: Add emacs-eval-in-repl-ocaml Nicolas Graves via Guix-patches via
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:15 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-ruby): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index c1c817ab15..1a14635f9c 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27294,6 +27294,32 @@ (define-public emacs-eval-in-repl-python
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-ruby
+  (package
+    (name "emacs-eval-in-repl-ruby")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl-ruby.el"))
+       (sha256
+        (base32
+         "05yrv9pj91yfxk46g5ky9xixndgmzv0c4nhn4qsn85mx3jy9x915"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-inf-ruby))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Ruby REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Ruby REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 11/22] gnu: Add emacs-eval-in-repl-sml.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (8 preceding siblings ...)
  2022-09-11 18:15   ` [bug#57737] [PATCH 10/22] gnu: Add emacs-eval-in-repl-ruby Nicolas Graves via Guix-patches via
@ 2022-09-11 18:16   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:16   ` [bug#57737] [PATCH 12/22] gnu: Add emacs-eval-in-repl-ocaml Nicolas Graves via Guix-patches via
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:16 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-sml): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 1a14635f9c..7ba5ea262b 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27320,6 +27320,32 @@ (define-public emacs-eval-in-repl-ruby
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-sml
+  (package
+    (name "emacs-eval-in-repl-sml")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl-sml.el"))
+       (sha256
+        (base32
+         "0g36fmc5khdkcyax7rnxmnvir43mig9s4mlgr8fkcffxvb2asw7d"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-sml-mode))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Standard ML REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Standard ML REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 12/22] gnu: Add emacs-eval-in-repl-ocaml.
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (9 preceding siblings ...)
  2022-09-11 18:16   ` [bug#57737] [PATCH 11/22] gnu: Add emacs-eval-in-repl-sml Nicolas Graves via Guix-patches via
@ 2022-09-11 18:16   ` Nicolas Graves via Guix-patches via
  10 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:16 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-ocaml): New variable.
---
 gnu/packages/emacs-xyz.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 7ba5ea262b..d95b2f2e20 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -239,6 +239,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages uml)
   #:use-module (gnu packages finance)
+  #:use-module (gnu packages ocaml)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27346,6 +27347,32 @@ (define-public emacs-eval-in-repl-sml
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-ocaml
+  (package
+    (name "emacs-eval-in-repl-ocaml")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl-ocaml.el"))
+       (sha256
+        (base32
+         "0y36x59adjf87ypfj62rrhdf6lg8qxyahvx9f7p1svblhryg7fr0"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-tuareg))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for OCaml REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+OCaml REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 01/10] gnu: Add emacs-eval-in-repl-prolog.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
@ 2022-09-11 18:19 ` Nicolas Graves via Guix-patches via
  2022-09-11 18:19   ` [bug#57737] [PATCH 02/10] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
  2022-09-11 18:19   ` [bug#57737] [PATCH 03/10] gnu: Add emacs-eval-in-repl-javascript Nicolas Graves via Guix-patches via
  2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
                   ` (9 subsequent siblings)
  11 siblings, 2 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:19 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-prolog): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d95b2f2e20..ee196d88c8 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27373,6 +27373,32 @@ (define-public emacs-eval-in-repl-ocaml
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-prolog
+  (package
+    (name "emacs-eval-in-repl-prolog")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl-prolog.el"))
+       (sha256
+        (base32
+         "0plbi5jrcpzd8jphrsha3ng707qhdysng8xf1ypg4qi0xg9qkh0c"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Prolog REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Prolog REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 02/10] gnu: Add emacs-js-comint.
  2022-09-11 18:19 ` [bug#57737] [PATCH 01/10] gnu: Add emacs-eval-in-repl-prolog Nicolas Graves via Guix-patches via
@ 2022-09-11 18:19   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:19   ` [bug#57737] [PATCH 03/10] gnu: Add emacs-eval-in-repl-javascript Nicolas Graves via Guix-patches via
  1 sibling, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:19 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-js-comint): New variable.
---
 gnu/packages/emacs-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index ee196d88c8..c1fae127d2 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -10871,6 +10871,28 @@ (define-public emacs-js2-mode
 strings, and code folding.")
     (license license:gpl3+)))
 
+(define-public emacs-js-comint
+  (package
+    (name "emacs-js-comint")
+    (version "1.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/js-comint-"
+             version
+             ".el"))
+       (sha256
+        (base32 "1qin0hclm3ly62nl5ddiim64bcd2k74b1yqsqqc61cf9k2q8k287"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/redguardtoo/js-comint")
+    (synopsis "JavaScript interpreter in window")
+    (description
+     "This program is a comint mode for Emacs which allows you to run a compatible
+javascript repl like Node.js/Spidermonkey/Rhino inside Emacs. It also defines a
+few functions for sending javascript input to it quickly.")
+    (license license:gpl3+)))
+
 (define-public emacs-nodejs-repl
   (package
     (name "emacs-nodejs-repl")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 03/10] gnu: Add emacs-eval-in-repl-javascript.
  2022-09-11 18:19 ` [bug#57737] [PATCH 01/10] gnu: Add emacs-eval-in-repl-prolog Nicolas Graves via Guix-patches via
  2022-09-11 18:19   ` [bug#57737] [PATCH 02/10] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
@ 2022-09-11 18:19   ` Nicolas Graves via Guix-patches via
  1 sibling, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:19 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-javascript): New variable.
---
 gnu/packages/emacs-xyz.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index c1fae127d2..9eaf252063 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27421,6 +27421,34 @@ (define-public emacs-eval-in-repl-prolog
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-javascript
+  (package
+    (name "emacs-eval-in-repl-javascript")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl-javascript.el"))
+       (sha256
+        (base32
+         "09gfd184waa3w4wlz36ys3rj79ms0584j6jibrqww6313h81ny2x"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl
+                             emacs-js2-mode
+                             emacs-js-comint))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Javascript REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Javascript REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
  2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-11 18:19 ` [bug#57737] [PATCH 01/10] gnu: Add emacs-eval-in-repl-prolog Nicolas Graves via Guix-patches via
@ 2022-09-11 18:21 ` Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 2/7] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
                     ` (5 more replies)
  2022-09-11 20:02 ` [bug#57737] emacs-eval-in-repl patches Liliana Marie Prikler
                   ` (8 subsequent siblings)
  11 siblings, 6 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:21 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-shell): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 9eaf252063..dd9c58e373 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27449,6 +27449,32 @@ (define-public emacs-eval-in-repl-javascript
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-shell
+  (package
+    (name "emacs-eval-in-repl-shell")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl-shell.el"))
+       (sha256
+        (base32
+         "1jsi8wjibx4v4ysb2xf96g03vqg7n41sxyg5bp8w82qlfjszdnix"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Shell REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Shell REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 2/7] gnu: Add emacs-alchemist.
  2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
@ 2022-09-11 18:21   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 3/7] gnu: Add emacs-eval-in-repl-iex Nicolas Graves via Guix-patches via
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:21 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-alchemist): New variable.
---
 gnu/packages/emacs-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index dd9c58e373..dc988be47c 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -28937,6 +28937,41 @@ (define-public emacs-spacemacs-theme
 and it should work well with 256 color terminals.")
     (license license:gpl3+)))
 
+(define-public emacs-alchemist
+  (package
+    (name "emacs-alchemist")
+    (version "1.8.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/alchemist-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0ygwf9d739zqc8dcckw0j0bqkipw7cmxbrx3l281x237a3d384yw"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     (list emacs-elixir-mode emacs-dash emacs-company emacs-pkg-info))
+    (home-page "http://www.github.com/tonini/alchemist.el")
+  (synopsis "Elixir tooling integration into Emacs")
+  (description
+   "This package brings you all the Elixir tooling and power inside your Emacs
+editor.  Alchemist comes with a bunch of features, which are:
+@itemize
+@item Mix integration
+@item Compile & Execution of Elixir code
+@item Inline code evaluation
+@item Inline macro expanding
+@item Documentation lookup
+@item Definition lookup
+@item Powerful IEx integration
+@item Smart code completion
+@item Elixir project management
+@item Phoenix support
+@end itemize")
+  (license license:gpl3+)))
+
 (define-public emacs-elixir-mode
   (package
     (name "emacs-elixir-mode")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 3/7] gnu: Add emacs-eval-in-repl-iex.
  2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 2/7] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
@ 2022-09-11 18:21   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 4/7] gnu: Add emacs-eval-in-repl-erlang Nicolas Graves via Guix-patches via
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:21 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-iex): New variable.
---
 gnu/packages/emacs-xyz.scm | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index dc988be47c..7ffff04262 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27475,6 +27475,34 @@ (define-public emacs-eval-in-repl-shell
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-iex
+  (package
+    (name "emacs-eval-in-repl-iex")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-iex.el"))
+       (sha256
+          (base32
+           "1qj943bv7vx6rhahkwl619zwjal7agq6ry1cdqwlcvq0mz1ds00r"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl
+                             emacs-elixir-mode
+                             emacs-alchemist))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Elixir REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Elixir REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 4/7] gnu: Add emacs-eval-in-repl-erlang.
  2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 2/7] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 3/7] gnu: Add emacs-eval-in-repl-iex Nicolas Graves via Guix-patches via
@ 2022-09-11 18:21   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 5/7] gnu: Add emacs-eval-in-repl-elm Nicolas Graves via Guix-patches via
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:21 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-erlang): New variable.
---
 gnu/packages/emacs-xyz.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 7ffff04262..6caf7f53c9 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -240,6 +240,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages uml)
   #:use-module (gnu packages finance)
   #:use-module (gnu packages ocaml)
+  #:use-module (gnu packages erlang)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27503,6 +27504,32 @@ (define-public emacs-eval-in-repl-iex
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-erlang
+  (package
+    (name "emacs-eval-in-repl-erlang")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-erlang.el"))
+       (sha256
+          (base32
+           "1gk0kgi5j22lszjrna4l79pq8zqyq6g35pk5issacw9jx179nb7n"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-erlang))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Erlang REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Erlang REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 5/7] gnu: Add emacs-eval-in-repl-elm.
  2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
                     ` (2 preceding siblings ...)
  2022-09-11 18:21   ` [bug#57737] [PATCH 4/7] gnu: Add emacs-eval-in-repl-erlang Nicolas Graves via Guix-patches via
@ 2022-09-11 18:21   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 6/7] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 7/7] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:21 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl-elm): New variable.
---
 gnu/packages/emacs-xyz.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 6caf7f53c9..acf4843181 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27530,6 +27530,32 @@ (define-public emacs-eval-in-repl-erlang
 called @code{ess-eval-region-or-line-and-step}, which is assigned to
 C-RET.  This function sends a line or a selected region to the corresponding
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")
+    (license license:expat)))
+
+(define-public emacs-eval-in-repl-elm
+  (package
+    (name "emacs-eval-in-repl-elm")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+               version "/eval-in-repl-elm.el"))
+       (sha256
+          (base32
+           "0ca6070y7s86xs4y1dibq6b1rz143z5i17s7ifra0afgib10a5hb"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-elm-mode))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for Elm REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+Elm REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 6/7] gnu: Add emacs-ob-elm.
  2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
                     ` (3 preceding siblings ...)
  2022-09-11 18:21   ` [bug#57737] [PATCH 5/7] gnu: Add emacs-eval-in-repl-elm Nicolas Graves via Guix-patches via
@ 2022-09-11 18:21   ` Nicolas Graves via Guix-patches via
  2022-09-11 18:21   ` [bug#57737] [PATCH 7/7] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:21 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-ob-elm): New variable.
---
 gnu/packages/emacs-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index acf4843181..d4f2382b89 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27558,6 +27558,31 @@ (define-public emacs-eval-in-repl-elm
 shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
 none.")
     (license license:expat)))
+
+(define-public emacs-ob-elm
+  (let ((commit "d3a9fbc2f56416894c9aed65ea9a20cc1d98f15d")
+        (revision "0"))
+    (package
+      (name "emacs-ob-elm")
+      (version (git-version "0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/BonfaceKilz/ob-elm")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "1wdlr0cbsb2drdmcn2bnivjkj1f2v52l6yizwsnjgi4xq3w6k56h"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/BonfaceKilz/ob-elm")
+      (synopsis "Org-Babel support for evaluating Elm code")
+      (description
+"This package adds Org-Babel support for evaluating Elm code, which can be
+enabled by adding @code{(elm . t)} to the variable
+@code{org-babel-do-load-languages}.")
+      (license license:gpl3+))))
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 7/7] gnu: Add emacs-org-babel-eval-in-repl.
  2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
                     ` (4 preceding siblings ...)
  2022-09-11 18:21   ` [bug#57737] [PATCH 6/7] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
@ 2022-09-11 18:21   ` Nicolas Graves via Guix-patches via
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-11 18:21 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-org-babel-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d4f2382b89..ea5953ca4f 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -241,6 +241,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages finance)
   #:use-module (gnu packages ocaml)
   #:use-module (gnu packages erlang)
+  #:use-module (gnu packages statistics)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27583,6 +27584,36 @@ (define-public emacs-ob-elm
 enabled by adding @code{(elm . t)} to the variable
 @code{org-babel-do-load-languages}.")
       (license license:gpl3+))))
+
+(define-public emacs-org-babel-eval-in-repl
+  (package
+    (name "emacs-org-babel-eval-in-repl")
+    (version "1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/org-babel-eval-in-repl-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0bdnps6m3kcvsagz8cfm3kf2rvxzl2p252pfggwbdbl43kzvl35h"))
+       (modules '((guix build utils)))
+       ;; Remove matlab
+       (snippet
+        '(begin (delete-file "eval-in-repl-matlab.el")))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-ess))
+    (home-page "https://github.com/diadochos/org-babel-eval-in-repl")
+    (synopsis "Eval org-mode babel code blocks in various REPLs")
+    (description
+     "This package allows you to execute org-mode (babel) source code blocks with
+eval-in-repl.  It features async execution (because it uses an external
+process) and babel execution without the output written in the buffer (less
+visual distraction, and the output is reproducible as long as the code is
+saved).")
+    (license license:expat)))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] emacs-eval-in-repl patches
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (2 preceding siblings ...)
  2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
@ 2022-09-11 20:02 ` Liliana Marie Prikler
  2022-09-13 13:47 ` [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 59+ messages in thread
From: Liliana Marie Prikler @ 2022-09-11 20:02 UTC (permalink / raw)
  To: Nicolas Graves, 57737

Hi

Am Sonntag, dem 11.09.2022 um 20:03 +0200 schrieb Nicolas Graves:
> This series of patches introduces all different files included in the
> eval-in-repl repo, as well as the org-babel-eval-in-repl package.
> 
> Each file is taken individually so people can download a subset of
> them
> depending on their use.
> 
> emacs-js-comint and emacs-alchemist are necessary packages for some
> of them.
I'd personally avoid raw github links.  Use an origin with git-fetch,
then use #:include or #:exclude to only install what's needed.  You
might want to abstract the package definition into a procedure to make
things easier.

Cheers





^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (3 preceding siblings ...)
  2022-09-11 20:02 ` [bug#57737] emacs-eval-in-repl patches Liliana Marie Prikler
@ 2022-09-13 13:47 ` Nicolas Graves via Guix-patches via
  2022-09-13 13:47   ` [bug#57737] [PATCH 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
                     ` (4 more replies)
  2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
                   ` (6 subsequent siblings)
  11 siblings, 5 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 13:47 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 50 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 074d4d1c4c..2013a23fe8 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27038,6 +27038,56 @@ (define-public emacs-info-plus
 nodes, and more.")
       (license license:gpl2+))))
 
+(define-public emacs-eval-in-repl
+  (package
+    (name "emacs-eval-in-repl")
+    (version "0.9.7")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://raw.githubusercontent.com/kaz-yos/eval-in-repl/"
+             version "/eval-in-repl.el"))
+       (sha256
+        (base32
+         "15k2ks034hq2dmm8n70xl7f4cdw57zqb36s871j7kycpkblclg3n"))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-dash emacs-paredit emacs-ace-window))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for various REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+various REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.
+
+This package along with REPL/shell specific packages implement similar work flow
+for various REPLs.
+
+This package alone is not functional.  It also requires the following packages
+depending on your needs :
+@itemize
+@item eval-in-repl-ielm       for Emacs Lisp
+@item eval-in-repl-cider      for Clojure
+@item eval-in-repl-slime      for Common Lisp
+@item eval-in-repl-geiser     for Racket/Scheme
+@item eval-in-repl-racket     for Racket
+@item eval-in-repl-scheme     for Scheme
+@item eval-in-repl-hy         for Hy
+@item eval-in-repl-python     for Python
+@item eval-in-repl-ruby       for Ruby
+@item eval-in-repl-sml        for Standard ML
+@item eval-in-repl-ocaml      for OCaml
+@item eval-in-repl-prolog     for Prolog
+@item eval-in-repl-javascript for Javascript
+@item eval-in-repl-shell      for Shell
+@item eval-in-repl-iex        for Elixir
+@item eval-in-repl-erlang     for Erlang
+@item eval-in-repl-elm        for Elm
+@end itemize")
+    (license license:expat)))
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 2/6] gnu: Add emacs-js-comint.
  2022-09-13 13:47 ` [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
@ 2022-09-13 13:47   ` Nicolas Graves via Guix-patches via
  2022-09-13 13:47   ` [bug#57737] [PATCH 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
                     ` (3 subsequent siblings)
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 13:47 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-js-comint): New variable.
---
 gnu/packages/emacs-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 2013a23fe8..1b1dcf789f 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -10870,6 +10870,28 @@ (define-public emacs-js2-mode
 strings, and code folding.")
     (license license:gpl3+)))
 
+(define-public emacs-js-comint
+  (package
+    (name "emacs-js-comint")
+    (version "1.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/js-comint-"
+             version
+             ".el"))
+       (sha256
+        (base32 "1qin0hclm3ly62nl5ddiim64bcd2k74b1yqsqqc61cf9k2q8k287"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/redguardtoo/js-comint")
+    (synopsis "JavaScript interpreter in window")
+    (description
+     "This program is a comint mode for Emacs which allows you to run a compatible
+javascript repl like Node.js/Spidermonkey/Rhino inside Emacs. It also defines a
+few functions for sending javascript input to it quickly.")
+    (license license:gpl3+)))
+
 (define-public emacs-nodejs-repl
   (package
     (name "emacs-nodejs-repl")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 3/6] gnu: Add emacs-alchemist.
  2022-09-13 13:47 ` [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-13 13:47   ` [bug#57737] [PATCH 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
@ 2022-09-13 13:47   ` Nicolas Graves via Guix-patches via
  2022-09-13 13:47   ` [bug#57737] [PATCH 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
                     ` (2 subsequent siblings)
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 13:47 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-alchemist): New variable.
---
 gnu/packages/emacs-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 1b1dcf789f..9dfb2cfdb7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -28570,6 +28570,41 @@ (define-public emacs-spacemacs-theme
 and it should work well with 256 color terminals.")
     (license license:gpl3+)))
 
+(define-public emacs-alchemist
+  (package
+    (name "emacs-alchemist")
+    (version "1.8.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/alchemist-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0ygwf9d739zqc8dcckw0j0bqkipw7cmxbrx3l281x237a3d384yw"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     (list emacs-elixir-mode emacs-dash emacs-company emacs-pkg-info))
+    (home-page "http://www.github.com/tonini/alchemist.el")
+  (synopsis "Elixir tooling integration into Emacs")
+  (description
+   "This package brings you all the Elixir tooling and power inside your Emacs
+editor.  Alchemist comes with a bunch of features, which are:
+@itemize
+@item Mix integration
+@item Compile & Execution of Elixir code
+@item Inline code evaluation
+@item Inline macro expanding
+@item Documentation lookup
+@item Definition lookup
+@item Powerful IEx integration
+@item Smart code completion
+@item Elixir project management
+@item Phoenix support
+@end itemize")
+  (license license:gpl3+)))
+
 (define-public emacs-elixir-mode
   (package
     (name "emacs-elixir-mode")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 4/6] gnu: Add emacs-eval-in-repl packages.
  2022-09-13 13:47 ` [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-13 13:47   ` [bug#57737] [PATCH 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
  2022-09-13 13:47   ` [bug#57737] [PATCH 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
@ 2022-09-13 13:47   ` Nicolas Graves via Guix-patches via
  2022-09-13 17:20     ` Maxime Devos
  2022-09-13 13:47   ` [bug#57737] [PATCH 5/6] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
  2022-09-13 13:47   ` [bug#57737] [PATCH 6/6] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  4 siblings, 1 reply; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 13:47 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm
  (emacs-eval-in-repl): New variable.
  (emacs-eval-in-repl-ielm): New variable.
  (emacs-eval-in-repl-cider): New variable.
  (emacs-eval-in-repl-slime): New variable.
  (emacs-eval-in-repl-geiser): New variable.
  (emacs-eval-in-repl-racket): New variable.
  (emacs-eval-in-repl-scheme): New variable.
  (emacs-eval-in-repl-hy): New variable.
  (emacs-eval-in-repl-python): New variable.
  (emacs-eval-in-repl-ruby): New variable.
  (emacs-eval-in-repl-sml): New variable.
  (emacs-eval-in-repl-ocaml): New variable.
  (emacs-eval-in-repl-prolog): New variable.
  (emacs-eval-in-repl-javascript): New variable.
  (emacs-eval-in-repl-shell): New variable.
  (emacs-eval-in-repl-iex): New variable.
  (emacs-eval-in-repl-erlang): New variable.
  (emacs-eval-in-repl-elm): New variable.
---
 gnu/packages/emacs-xyz.scm | 77 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 77 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 9dfb2cfdb7..d7b79d30b8 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27110,6 +27110,83 @@ (define-public emacs-eval-in-repl
 @item eval-in-repl-elm        for Elm
 @end itemize")
     (license license:expat)))
+
+(define (repl->lang s)
+    (cond
+     ((string= s "ielm") "Emacs Lisp")
+     ((string= s "cider") "Clojure")
+     ((string= s "slime") "Common Lisp")
+     ((string= s "geiser") "Racket/Scheme")
+     ((string= s "sml") "Standard ML")
+     ((string= s "iex") "Elixir")
+     ((string= s "ocaml") "OCaml")
+     (else (string-capitalize s))))
+
+(define (lang->inputs s)
+    (cond
+     ((string= s "Clojure") (list emacs-cider))
+     ((string= s "Common Lisp") (list emacs-slime))
+     ((string= s "Racket/Scheme") (list emacs-geiser))
+     ((string= s "Racket") (list emacs-racket-mode))
+     ((string= s "Hy") (list emacs-hy-mode))
+     ((string= s "Ruby") (list emacs-inf-ruby))
+     ((string= s "Standard ML") (list emacs-sml-mode))
+     ((string= s "OCaml") (list emacs-tuareg))
+     ((string= s "Javascript") (list emacs-js2-mode emacs-js-comint))
+     ((string= s "Elixir") (list emacs-elixir-mode emacs-alchemist))
+     ((string= s "Erlang") (list emacs-erlang))
+     ((string= s "Elm") (list emacs-elm-mode))
+     (else '())))
+
+(define (pack-eval-in-repl repl)
+  (let* ((lang (repl->lang repl))
+         (inputs (lang->inputs lang)))
+    (package
+      (name (string-append "emacs-eval-in-repl-" repl))
+      (version "0.9.7")
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/kaz-yos/eval-in-repl")
+               (commit (string-append "v" version))))
+
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1mrssbl0wyc6iij8zk1y3h9bd3rv53nnrxsij7fn67l1m4z0clyn"))))
+      (build-system emacs-build-system)
+      (arguments
+       `(#:include (list (string-append "eval-in-repl-" ,repl "\\.el"))))
+      (propagated-inputs (append (list emacs-eval-in-repl) inputs))
+      (home-page "https://github.com/kaz-yos/eval-in-repl")
+      (synopsis "Consistent evaluation interface for Emacs Lisp REPLs for emacs")
+      (description (string-append "\
+This package provides a consistent ESS-like evaluation interface for
+" lang " REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none."))
+      (license license:expat))))
+
+(define-public emacs-eval-in-repl-ielm       (pack-eval-in-repl "ielm"))
+(define-public emacs-eval-in-repl-cider      (pack-eval-in-repl "cider"))
+(define-public emacs-eval-in-repl-slime      (pack-eval-in-repl "slime"))
+(define-public emacs-eval-in-repl-geiser     (pack-eval-in-repl "geiser"))
+(define-public emacs-eval-in-repl-racket     (pack-eval-in-repl "racket"))
+(define-public emacs-eval-in-repl-scheme     (pack-eval-in-repl "scheme"))
+(define-public emacs-eval-in-repl-hy         (pack-eval-in-repl "hy"))
+(define-public emacs-eval-in-repl-python     (pack-eval-in-repl "python"))
+(define-public emacs-eval-in-repl-ruby       (pack-eval-in-repl "ruby"))
+(define-public emacs-eval-in-repl-sml        (pack-eval-in-repl "sml"))
+(define-public emacs-eval-in-repl-ocaml      (pack-eval-in-repl "ocaml"))
+(define-public emacs-eval-in-repl-prolog     (pack-eval-in-repl "prolog"))
+(define-public emacs-eval-in-repl-javascript (pack-eval-in-repl "javascript"))
+(define-public emacs-eval-in-repl-shell      (pack-eval-in-repl "shell"))
+(define-public emacs-eval-in-repl-iex        (pack-eval-in-repl "iex"))
+(define-public emacs-eval-in-repl-erlang     (pack-eval-in-repl "erlang"))
+(define-public emacs-eval-in-repl-elm        (pack-eval-in-repl "elm"))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 5/6] gnu: Add emacs-ob-elm.
  2022-09-13 13:47 ` [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (2 preceding siblings ...)
  2022-09-13 13:47   ` [bug#57737] [PATCH 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
@ 2022-09-13 13:47   ` Nicolas Graves via Guix-patches via
  2022-09-13 13:47   ` [bug#57737] [PATCH 6/6] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 13:47 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-ob-elm): New variable.
---
 gnu/packages/emacs-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d7b79d30b8..82eaaf53df 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27187,6 +27187,31 @@ (define-public emacs-eval-in-repl-iex        (pack-eval-in-repl "iex"))
 (define-public emacs-eval-in-repl-erlang     (pack-eval-in-repl "erlang"))
 (define-public emacs-eval-in-repl-elm        (pack-eval-in-repl "elm"))
 
+(define-public emacs-ob-elm
+  (let ((commit "d3a9fbc2f56416894c9aed65ea9a20cc1d98f15d")
+        (revision "0"))
+    (package
+      (name "emacs-ob-elm")
+      (version (git-version "0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/BonfaceKilz/ob-elm")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "1wdlr0cbsb2drdmcn2bnivjkj1f2v52l6yizwsnjgi4xq3w6k56h"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/BonfaceKilz/ob-elm")
+      (synopsis "Org-Babel support for evaluating Elm code")
+      (description
+"This package adds Org-Babel support for evaluating Elm code, which can be
+enabled by adding @code{(elm . t)} to the variable
+@code{org-babel-do-load-languages}.")
+      (license license:gpl3+))))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 6/6] gnu: Add emacs-org-babel-eval-in-repl.
  2022-09-13 13:47 ` [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (3 preceding siblings ...)
  2022-09-13 13:47   ` [bug#57737] [PATCH 5/6] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
@ 2022-09-13 13:47   ` Nicolas Graves via Guix-patches via
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 13:47 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-org-babel-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 82eaaf53df..95d88cfd70 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -239,6 +239,9 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages uml)
   #:use-module (gnu packages finance)
+  #:use-module (gnu packages ocaml)
+  #:use-module (gnu packages erlang)
+  #:use-module (gnu packages statistics)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27212,6 +27215,35 @@ (define-public emacs-ob-elm
 @code{org-babel-do-load-languages}.")
       (license license:gpl3+))))
 
+(define-public emacs-org-babel-eval-in-repl
+  (package
+    (name "emacs-org-babel-eval-in-repl")
+    (version "1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/org-babel-eval-in-repl-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0bdnps6m3kcvsagz8cfm3kf2rvxzl2p252pfggwbdbl43kzvl35h"))
+       (modules '((guix build utils)))
+       ;; Remove matlab
+       (snippet
+        '(begin (delete-file "eval-in-repl-matlab.el")))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-ess))
+    (home-page "https://github.com/diadochos/org-babel-eval-in-repl")
+    (synopsis "Eval org-mode babel code blocks in various REPLs")
+    (description
+     "This package allows you to execute org-mode (babel) source code blocks with
+eval-in-repl.  It features async execution (because it uses an external
+process) and babel execution without the output written in the buffer (less
+visual distraction, and the output is reproducible as long as the code is
+saved).")
+    (license license:expat)))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 4/6] gnu: Add emacs-eval-in-repl packages.
  2022-09-13 13:47   ` [bug#57737] [PATCH 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
@ 2022-09-13 17:20     ` Maxime Devos
  2022-09-13 17:22       ` ( via Guix-patches via
  0 siblings, 1 reply; 59+ messages in thread
From: Maxime Devos @ 2022-09-13 17:20 UTC (permalink / raw)
  To: Nicolas Graves, 57737


[-- Attachment #1.1.1: Type: text/plain, Size: 600 bytes --]



On 13-09-2022 15:47, Nicolas Graves via Guix-patches via wrote:
> +      (description (string-append "\
> +This package provides a consistent ESS-like evaluation interface for
> +" lang " REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
> +called @code{ess-eval-region-or-line-and-step}, which is assigned to
> +C-RET.  This function sends a line or a selected region to the corresponding
> +shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
> +none."))

As-is, this is not translatable. Proposal: use 'format' and 'G_'.

Greetings,
Maxime

[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 929 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 4/6] gnu: Add emacs-eval-in-repl packages.
  2022-09-13 17:20     ` Maxime Devos
@ 2022-09-13 17:22       ` ( via Guix-patches via
  2022-09-13 19:51         ` Liliana Marie Prikler
  0 siblings, 1 reply; 59+ messages in thread
From: ( via Guix-patches via @ 2022-09-13 17:22 UTC (permalink / raw)
  To: Maxime Devos, Nicolas Graves, 57737

On Tue Sep 13, 2022 at 6:20 PM BST, Maxime Devos wrote:
> As-is, this is not translatable. Proposal: use 'format' and 'G_'.

Isn't this a package, which usually isn't translated anyway?

    -- (




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 4/6] gnu: Add emacs-eval-in-repl packages.
  2022-09-13 17:22       ` ( via Guix-patches via
@ 2022-09-13 19:51         ` Liliana Marie Prikler
  0 siblings, 0 replies; 59+ messages in thread
From: Liliana Marie Prikler @ 2022-09-13 19:51 UTC (permalink / raw)
  To: (, Maxime Devos, Nicolas Graves, 57737

Am Dienstag, dem 13.09.2022 um 18:22 +0100 schrieb (:
> On Tue Sep 13, 2022 at 6:20 PM BST, Maxime Devos wrote:
> > As-is, this is not translatable. Proposal: use 'format' and 'G_'.
> 
> Isn't this a package, which usually isn't translated anyway?
Package descriptions are marked as translatable, we're just running
short on translators :)

Also bikeshedding time: I think "make-emacs-eval-in-repl" or "emacs-
eval-in-repl-for-language" are more understandable names than "pack-
eval-in-repl".

Cheers




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (4 preceding siblings ...)
  2022-09-13 13:47 ` [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
@ 2022-09-13 21:41 ` Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 2/7] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (5 more replies)
  2022-09-13 21:50 ` [bug#57737] Thanks for your reviews! Nicolas Graves via Guix-patches via
                   ` (5 subsequent siblings)
  11 siblings, 6 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 21:41 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-elixir-mode): Move package in the same
file.
---
 gnu/packages/emacs-xyz.scm | 47 +++++++++++++++++++-------------------
 1 file changed, 24 insertions(+), 23 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 074d4d1c4c..4f0113a70c 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -6532,6 +6532,30 @@ (define-public emacs-elisp-demos
 respective @code{*Help*} buffers.")
     (license license:gpl3+)))
 
+(define-public emacs-elixir-mode
+  (package
+    (name "emacs-elixir-mode")
+    (version "2.3.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/elixir-editors/emacs-elixir")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0f2a360h8bizvqk6bmgxm59g8n7id5rzwlbv6d383h15w298mcga"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     (list emacs-pkg-info))
+    (home-page
+     "https://github.com/elixir-editors/emacs-elixir")
+    (synopsis "Major mode for editing Elixir files")
+    (description
+     "Elixir-Mode provides font-locking, indentation and navigation support
+ for the Elixir programming language.")
+    (license license:gpl3+)))
+
 (define-public emacs-docker-compose-mode
   (package
     (name "emacs-docker-compose-mode")
@@ -28498,29 +28522,6 @@ (define-public emacs-spacemacs-theme
 and it should work well with 256 color terminals.")
     (license license:gpl3+)))
 
-(define-public emacs-elixir-mode
-  (package
-    (name "emacs-elixir-mode")
-    (version "2.3.2")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/elixir-editors/emacs-elixir")
-             (commit (string-append "v" version))))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32 "0f2a360h8bizvqk6bmgxm59g8n7id5rzwlbv6d383h15w298mcga"))))
-    (build-system emacs-build-system)
-    (propagated-inputs
-     (list emacs-pkg-info))
-    (home-page
-     "https://github.com/elixir-editors/emacs-elixir")
-    (synopsis "Major mode for editing Elixir files")
-    (description
-     "Elixir-Mode provides font-locking, indentation and navigation support
- for the Elixir programming language.")
-    (license license:gpl3+)))
 
 (define-public emacs-dimmer
   (let ((commit "2f915b100044e09dd647b22085e1696249c4b115")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 2/7] gnu: Add emacs-eval-in-repl.
  2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
@ 2022-09-13 21:41   ` Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 3/7] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 21:41 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=y, Size: 3144 bytes --]

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 57 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 4f0113a70c..0cbea46280 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -116,6 +116,7 @@
 ;;; Copyright © 2022 Haider Mirza <haider@haider.gq>
 ;;; Copyright © 2022 Jose G Perez Taveras <josegpt27@gmail.com>
 ;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
+;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27062,6 +27063,62 @@ (define-public emacs-info-plus
 nodes, and more.")
       (license license:gpl2+))))
 
+(define-public emacs-eval-in-repl
+  (package
+    (name "emacs-eval-in-repl")
+    (version "0.9.7")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/kaz-yos/eval-in-repl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1mrssbl0wyc6iij8zk1y3h9bd3rv53nnrxsij7fn67l1m4z0clyn"))))
+    (build-system emacs-build-system)
+    (arguments
+     `(#:include
+       (list "eval-in-repl.el" "eval-in-repl-test.el" "README.md")))
+    (propagated-inputs (list emacs-dash emacs-paredit emacs-ace-window))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for various REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+various REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.
+
+This package along with REPL/shell specific packages implement similar work flow
+for various REPLs.
+
+This package alone is not functional.  It also requires the following packages
+depending on your needs :
+@itemize
+@item eval-in-repl-ielm       for Emacs Lisp
+@item eval-in-repl-cider      for Clojure
+@item eval-in-repl-slime      for Common Lisp
+@item eval-in-repl-sly        for Common Lisp
+@item eval-in-repl-geiser     for Racket/Scheme
+@item eval-in-repl-racket     for Racket
+@item eval-in-repl-scheme     for Scheme
+@item eval-in-repl-hy         for Hy
+@item eval-in-repl-python     for Python
+@item eval-in-repl-ruby       for Ruby
+@item eval-in-repl-sml        for Standard ML
+@item eval-in-repl-ocaml      for OCaml
+@item eval-in-repl-prolog     for Prolog
+@item eval-in-repl-javascript for Javascript
+@item eval-in-repl-shell      for Shell
+@item eval-in-repl-iex        for Elixir
+@item eval-in-repl-erlang     for Erlang
+@item eval-in-repl-elm        for Elm
+@item eval-in-repl-lua        for Lua
+@end itemize")
+    (license license:expat)))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 3/7] gnu: Add emacs-js-comint.
  2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 2/7] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
@ 2022-09-13 21:41   ` Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 4/7] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 21:41 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-js-comint): New variable.
---
 gnu/packages/emacs-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 0cbea46280..292da6267a 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -10895,6 +10895,28 @@ (define-public emacs-js2-mode
 strings, and code folding.")
     (license license:gpl3+)))
 
+(define-public emacs-js-comint
+  (package
+    (name "emacs-js-comint")
+    (version "1.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/js-comint-"
+             version
+             ".el"))
+       (sha256
+        (base32 "1qin0hclm3ly62nl5ddiim64bcd2k74b1yqsqqc61cf9k2q8k287"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/redguardtoo/js-comint")
+    (synopsis "JavaScript interpreter in window")
+    (description
+     "This program is a comint mode for Emacs which allows you to run a compatible
+javascript repl like Node.js/Spidermonkey/Rhino inside Emacs. It also defines a
+few functions for sending javascript input to it quickly.")
+    (license license:gpl3+)))
+
 (define-public emacs-nodejs-repl
   (package
     (name "emacs-nodejs-repl")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 4/7] gnu: Add emacs-alchemist.
  2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 2/7] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 3/7] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
@ 2022-09-13 21:41   ` Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 5/7] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
                     ` (2 subsequent siblings)
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 21:41 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-alchemist): New variable.
---
 gnu/packages/emacs-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 292da6267a..59acc6a24d 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -2580,6 +2580,41 @@ (define-public emacs-ace-link
 letter to each link using avy.")
     (license license:gpl3+)))
 
+(define-public emacs-alchemist
+  (package
+    (name "emacs-alchemist")
+    (version "1.8.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/alchemist-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0ygwf9d739zqc8dcckw0j0bqkipw7cmxbrx3l281x237a3d384yw"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     (list emacs-elixir-mode emacs-dash emacs-company emacs-pkg-info))
+    (home-page "http://www.github.com/tonini/alchemist.el")
+  (synopsis "Elixir tooling integration into Emacs")
+  (description
+   "This package brings you all the Elixir tooling and power inside your Emacs
+editor.  Alchemist comes with a bunch of features, which are:
+@itemize
+@item Mix integration
+@item Compile & Execution of Elixir code
+@item Inline code evaluation
+@item Inline macro expanding
+@item Documentation lookup
+@item Definition lookup
+@item Powerful IEx integration
+@item Smart code completion
+@item Elixir project management
+@item Phoenix support
+@end itemize")
+  (license license:gpl3+)))
+
 (define-public emacs-auto-sudoedit
   (package
     (name "emacs-auto-sudoedit")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 5/7] gnu: Add emacs-eval-in-repl packages.
  2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
                     ` (2 preceding siblings ...)
  2022-09-13 21:41   ` [bug#57737] [PATCH 4/7] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
@ 2022-09-13 21:41   ` Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 6/7] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 7/7] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 21:41 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm
  (emacs-eval-in-repl): New variable.
  (emacs-eval-in-repl-ielm): New variable.
  (emacs-eval-in-repl-cider): New variable.
  (emacs-eval-in-repl-slime): New variable.
  (emacs-eval-in-repl-sly): New variable.
  (emacs-eval-in-repl-geiser): New variable.
  (emacs-eval-in-repl-racket): New variable.
  (emacs-eval-in-repl-scheme): New variable.
  (emacs-eval-in-repl-hy): New variable.
  (emacs-eval-in-repl-python): New variable.
  (emacs-eval-in-repl-ruby): New variable.
  (emacs-eval-in-repl-sml): New variable.
  (emacs-eval-in-repl-ocaml): New variable.
  (emacs-eval-in-repl-prolog): New variable.
  (emacs-eval-in-repl-javascript): New variable.
  (emacs-eval-in-repl-shell): New variable.
  (emacs-eval-in-repl-iex): New variable.
  (emacs-eval-in-repl-erlang): New variable.
  (emacs-eval-in-repl-elm): New variable.
  (emacs-eval-in-repl-lua): New variable.
---
 gnu/packages/emacs-xyz.scm | 85 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 85 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 59acc6a24d..ca7597dfde 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -240,6 +240,8 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages uml)
   #:use-module (gnu packages finance)
+  #:use-module (gnu packages ocaml)
+  #:use-module (gnu packages erlang)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27176,6 +27178,89 @@ (define-public emacs-eval-in-repl
 @end itemize")
     (license license:expat)))
 
+(define (repl->lang s)
+    (cond
+     ((string= s "ielm")   "Emacs Lisp")
+     ((string= s "cider")  "Clojure")
+     ((string= s "slime")  "Common Lisp")
+     ((string= s "sly")    "Common Lisp")
+     ((string= s "geiser") "Racket/Scheme")
+     ((string= s "sml")    "Standard ML")
+     ((string= s "iex")    "Elixir")
+     ((string= s "ocaml")  "OCaml")
+     (else (string-capitalize s))))
+
+(define (repl->inputs s)
+    (cond
+     ((string= s "cider")      (list emacs-cider))
+     ((string= s "slime")      (list emacs-slime))
+     ((string= s "sly")        (list emacs-sly))
+     ((string= s "geiser")     (list emacs-geiser))
+     ((string= s "racket")     (list emacs-racket-mode))
+     ((string= s "hy")         (list emacs-hy-mode))
+     ((string= s "ruby")       (list emacs-inf-ruby))
+     ((string= s "sml")        (list emacs-sml-mode))
+     ((string= s "ocaml")      (list emacs-tuareg))
+     ((string= s "javascript") (list emacs-js2-mode emacs-js-comint))
+     ((string= s "iex")        (list emacs-elixir-mode emacs-alchemist))
+     ((string= s "erlang")     (list emacs-erlang))
+     ((string= s "elm")        (list emacs-elm-mode))
+     ((string= s "lua")        (list emacs-lua-mode))
+     (else '())))
+
+(define (make-emacs-eval-in-repl repl)
+  (let* ((lang (repl->lang repl))
+         (inputs (repl->inputs repl)))
+    (package
+      (name (string-append "emacs-eval-in-repl-" repl))
+      (version "0.9.7")
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/kaz-yos/eval-in-repl")
+               (commit (string-append "v" version))))
+
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1mrssbl0wyc6iij8zk1y3h9bd3rv53nnrxsij7fn67l1m4z0clyn"))))
+      (build-system emacs-build-system)
+      (arguments
+       `(#:include (list (string-append "eval-in-repl-" ,repl "\\.el"))))
+      (propagated-inputs (append (list emacs-eval-in-repl) inputs))
+      (home-page "https://github.com/kaz-yos/eval-in-repl")
+      (synopsis "Consistent evaluation interface for Emacs Lisp REPLs for emacs")
+      (description (string-append "\
+This package provides a consistent ESS-like evaluation interface for
+" lang " REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none."))
+      (license license:expat))))
+
+(define-public emacs-eval-in-repl-ielm   (make-emacs-eval-in-repl "ielm"))
+(define-public emacs-eval-in-repl-cider  (make-emacs-eval-in-repl "cider"))
+(define-public emacs-eval-in-repl-slime  (make-emacs-eval-in-repl "slime"))
+(define-public emacs-eval-in-repl-sly    (make-emacs-eval-in-repl "sly"))
+(define-public emacs-eval-in-repl-geiser (make-emacs-eval-in-repl "geiser"))
+(define-public emacs-eval-in-repl-racket (make-emacs-eval-in-repl "racket"))
+(define-public emacs-eval-in-repl-scheme (make-emacs-eval-in-repl "scheme"))
+(define-public emacs-eval-in-repl-hy     (make-emacs-eval-in-repl "hy"))
+(define-public emacs-eval-in-repl-python (make-emacs-eval-in-repl "python"))
+(define-public emacs-eval-in-repl-ruby   (make-emacs-eval-in-repl "ruby"))
+(define-public emacs-eval-in-repl-sml    (make-emacs-eval-in-repl "sml"))
+(define-public emacs-eval-in-repl-ocaml  (make-emacs-eval-in-repl "ocaml"))
+(define-public emacs-eval-in-repl-prolog (make-emacs-eval-in-repl "prolog"))
+(define-public emacs-eval-in-repl-shell  (make-emacs-eval-in-repl "shell"))
+(define-public emacs-eval-in-repl-iex    (make-emacs-eval-in-repl "iex"))
+(define-public emacs-eval-in-repl-erlang (make-emacs-eval-in-repl "erlang"))
+(define-public emacs-eval-in-repl-elm    (make-emacs-eval-in-repl "elm"))
+(define-public emacs-eval-in-repl-lua    (make-emacs-eval-in-repl "lua"))
+(define-public emacs-eval-in-repl-javascript
+  (make-emacs-eval-in-repl "javascript"))
+
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 6/7] gnu: Add emacs-ob-elm.
  2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
                     ` (3 preceding siblings ...)
  2022-09-13 21:41   ` [bug#57737] [PATCH 5/7] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
@ 2022-09-13 21:41   ` Nicolas Graves via Guix-patches via
  2022-09-13 21:41   ` [bug#57737] [PATCH 7/7] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 21:41 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-ob-elm): New variable.
---
 gnu/packages/emacs-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index ca7597dfde..5a1b3864c4 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27261,6 +27261,31 @@ (define-public emacs-eval-in-repl-javascript
   (make-emacs-eval-in-repl "javascript"))
 
 
+(define-public emacs-ob-elm
+  (let ((commit "d3a9fbc2f56416894c9aed65ea9a20cc1d98f15d")
+        (revision "0"))
+    (package
+      (name "emacs-ob-elm")
+      (version (git-version "0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/BonfaceKilz/ob-elm")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "1wdlr0cbsb2drdmcn2bnivjkj1f2v52l6yizwsnjgi4xq3w6k56h"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/BonfaceKilz/ob-elm")
+      (synopsis "Org-Babel support for evaluating Elm code")
+      (description
+"This package adds Org-Babel support for evaluating Elm code, which can be
+enabled by adding @code{(elm . t)} to the variable
+@code{org-babel-do-load-languages}.")
+      (license license:gpl3+))))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH 7/7] gnu: Add emacs-org-babel-eval-in-repl.
  2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
                     ` (4 preceding siblings ...)
  2022-09-13 21:41   ` [bug#57737] [PATCH 6/7] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
@ 2022-09-13 21:41   ` Nicolas Graves via Guix-patches via
  5 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 21:41 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-org-babel-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 5a1b3864c4..1717746f72 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -242,6 +242,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages finance)
   #:use-module (gnu packages ocaml)
   #:use-module (gnu packages erlang)
+  #:use-module (gnu packages statistics)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27286,6 +27287,35 @@ (define-public emacs-ob-elm
 @code{org-babel-do-load-languages}.")
       (license license:gpl3+))))
 
+(define-public emacs-org-babel-eval-in-repl
+  (package
+    (name "emacs-org-babel-eval-in-repl")
+    (version "1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/org-babel-eval-in-repl-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0bdnps6m3kcvsagz8cfm3kf2rvxzl2p252pfggwbdbl43kzvl35h"))
+       (modules '((guix build utils)))
+       ;; Remove matlab
+       (snippet
+        '(begin (delete-file "eval-in-repl-matlab.el")))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-ess))
+    (home-page "https://github.com/diadochos/org-babel-eval-in-repl")
+    (synopsis "Eval org-mode babel code blocks in various REPLs")
+    (description
+     "This package allows you to execute org-mode (babel) source code blocks with
+eval-in-repl.  It features async execution (because it uses an external
+process) and babel execution without the output written in the buffer (less
+visual distraction, and the output is reproducible as long as the code is
+saved).")
+    (license license:expat)))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] Thanks for your reviews!
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (5 preceding siblings ...)
  2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
@ 2022-09-13 21:50 ` Nicolas Graves via Guix-patches via
  2022-09-14  7:09   ` zimoun
  2022-09-16 12:30 ` [bug#57737] [PATCH v4 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                   ` (4 subsequent siblings)
  11 siblings, 1 reply; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-13 21:50 UTC (permalink / raw)
  To: 57737; +Cc: (, maximedevos, Liliana Marie Prikler


Thanks for your reviews!
Some remarks about this series  :

- I added a patch to move the definition fo emacs-elixir-mode above its
  first call, local guix compilation was complaining about it as an
  undefined package.

- I added also the missing lua and sly REPLs. Seems like they were
  forgotten in the README, but they seem to work. Also changed the name,
  as advised by Liliana.

- I might have some issues testing builds (see restartd discussion),
  would be happy if someone could confirm these all compile.

@Maxime: would be happy to change that to format, but I haven't used
that much and don't understand what the _G refers to -- I don't see it
in the documentation either at first glance.

-- 
Best regards,
Nicolas Graves




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] Thanks for your reviews!
  2022-09-13 21:50 ` [bug#57737] Thanks for your reviews! Nicolas Graves via Guix-patches via
@ 2022-09-14  7:09   ` zimoun
  0 siblings, 0 replies; 59+ messages in thread
From: zimoun @ 2022-09-14  7:09 UTC (permalink / raw)
  To: Nicolas Graves, 57737; +Cc: (, maximedevos, Liliana Marie Prikler

Hi Nicolas,

Thank you for your contribution.  Neat!

Next time, if I might, I would suggest the use of the option
--reroll-count from ’git format-patch’ and increases the number at each
new revision of the patch series.  It helps for following, IMHO. :-)



On Tue, 13 Sep 2022 at 23:50, Nicolas Graves via Guix-patches via <guix-patches@gnu.org> wrote:

> @Maxime: would be happy to change that to format, but I haven't used
> that much and don't understand what the _G refers to -- I don't see it
> in the documentation either at first glance.

Indeed, it is not well-documented.  The definition from (guix i18n)
reads,

        (define G_ (cut gettext <> %gettext-domain))

which allows to extract the string and then process it for translation.
Although it is huge task, package synopsis and description are
translated too! ;-)

Usually, you just need to wraps the resulting string with (G_ …).  Does
it not work if instead you write,

--8<---------------cut here---------------start------------->8---
(description (G_ (string-append "\
This package provides a consistent ESS-like evaluation interface for
" lang " REPLs. [...]")))
--8<---------------cut here---------------end--------------->8---

?  Well, I think,

--8<---------------cut here---------------start------------->8---
(description (G_ "\
This package provides a consistent ESS-like evaluation interface for
~s REPLs. [...]"
lang))
--8<---------------cut here---------------end--------------->8---

should fit the bill; or something along these lines. :-)


Cheers,
simon




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v4 1/6] gnu: Add emacs-eval-in-repl.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (6 preceding siblings ...)
  2022-09-13 21:50 ` [bug#57737] Thanks for your reviews! Nicolas Graves via Guix-patches via
@ 2022-09-16 12:30 ` Nicolas Graves via Guix-patches via
  2022-09-16 12:30   ` [bug#57737] [PATCH v4 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
  2022-09-16 12:30   ` [bug#57737] [PATCH v4 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
  2022-09-16 12:31 ` [bug#57737] [PATCH v4 1/2] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
                   ` (3 subsequent siblings)
  11 siblings, 2 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-16 12:30 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 57 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 074d4d1c4c..47a834f91f 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -116,6 +116,7 @@
 ;;; Copyright © 2022 Haider Mirza <haider@haider.gq>
 ;;; Copyright © 2022 Jose G Perez Taveras <josegpt27@gmail.com>
 ;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
+;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27038,6 +27039,62 @@ (define-public emacs-info-plus
 nodes, and more.")
       (license license:gpl2+))))
 
+(define-public emacs-eval-in-repl
+  (package
+    (name "emacs-eval-in-repl")
+    (version "0.9.7")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/kaz-yos/eval-in-repl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1mrssbl0wyc6iij8zk1y3h9bd3rv53nnrxsij7fn67l1m4z0clyn"))))
+    (build-system emacs-build-system)
+    (arguments
+     `(#:include
+       (list "eval-in-repl\\.el" "eval-in-repl-test\\.el" "README\\.md")))
+    (propagated-inputs (list emacs-dash emacs-paredit emacs-ace-window))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for various REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+various REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.
+
+This package along with REPL/shell specific packages implement similar work flow
+for various REPLs.
+
+This package alone is not functional.  It also requires the following packages
+depending on your needs :
+@itemize
+@item eval-in-repl-ielm       for Emacs Lisp
+@item eval-in-repl-cider      for Clojure
+@item eval-in-repl-slime      for Common Lisp
+@item eval-in-repl-sly        for Common Lisp
+@item eval-in-repl-geiser     for Racket/Scheme
+@item eval-in-repl-racket     for Racket
+@item eval-in-repl-scheme     for Scheme
+@item eval-in-repl-hy         for Hy
+@item eval-in-repl-python     for Python
+@item eval-in-repl-ruby       for Ruby
+@item eval-in-repl-sml        for Standard ML
+@item eval-in-repl-ocaml      for OCaml
+@item eval-in-repl-prolog     for Prolog
+@item eval-in-repl-javascript for Javascript
+@item eval-in-repl-shell      for Shell
+@item eval-in-repl-iex        for Elixir
+@item eval-in-repl-erlang     for Erlang
+@item eval-in-repl-elm        for Elm
+@item eval-in-repl-lua        for Lua
+@end itemize")
+    (license license:expat)))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v4 2/6] gnu: Add emacs-js-comint.
  2022-09-16 12:30 ` [bug#57737] [PATCH v4 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
@ 2022-09-16 12:30   ` Nicolas Graves via Guix-patches via
  2022-09-16 12:30   ` [bug#57737] [PATCH v4 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
  1 sibling, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-16 12:30 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-js-comint): New variable.
---
 gnu/packages/emacs-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 47a834f91f..41174aab02 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -10871,6 +10871,28 @@ (define-public emacs-js2-mode
 strings, and code folding.")
     (license license:gpl3+)))
 
+(define-public emacs-js-comint
+  (package
+    (name "emacs-js-comint")
+    (version "1.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/js-comint-"
+             version
+             ".el"))
+       (sha256
+        (base32 "1qin0hclm3ly62nl5ddiim64bcd2k74b1yqsqqc61cf9k2q8k287"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/redguardtoo/js-comint")
+    (synopsis "JavaScript interpreter in window")
+    (description
+     "This program is a comint mode for Emacs which allows you to run a compatible
+javascript repl like Node.js/Spidermonkey/Rhino inside Emacs. It also defines a
+few functions for sending javascript input to it quickly.")
+    (license license:gpl3+)))
+
 (define-public emacs-nodejs-repl
   (package
     (name "emacs-nodejs-repl")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v4 3/6] gnu: Add emacs-alchemist.
  2022-09-16 12:30 ` [bug#57737] [PATCH v4 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-16 12:30   ` [bug#57737] [PATCH v4 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
@ 2022-09-16 12:30   ` Nicolas Graves via Guix-patches via
  1 sibling, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-16 12:30 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-alchemist): New variable.
---
 gnu/packages/emacs-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 41174aab02..ac35e57773 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -2580,6 +2580,41 @@ (define-public emacs-ace-link
 letter to each link using avy.")
     (license license:gpl3+)))
 
+(define-public emacs-alchemist
+  (package
+    (name "emacs-alchemist")
+    (version "1.8.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/alchemist-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0ygwf9d739zqc8dcckw0j0bqkipw7cmxbrx3l281x237a3d384yw"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     (list emacs-elixir-mode emacs-dash emacs-company emacs-pkg-info))
+    (home-page "http://www.github.com/tonini/alchemist.el")
+  (synopsis "Elixir tooling integration into Emacs")
+  (description
+   "This package brings you all the Elixir tooling and power inside your Emacs
+editor.  Alchemist comes with a bunch of features, which are:
+@itemize
+@item Mix integration
+@item Compile & Execution of Elixir code
+@item Inline code evaluation
+@item Inline macro expanding
+@item Documentation lookup
+@item Definition lookup
+@item Powerful IEx integration
+@item Smart code completion
+@item Elixir project management
+@item Phoenix support
+@end itemize")
+  (license license:gpl3+)))
+
 (define-public emacs-auto-sudoedit
   (package
     (name "emacs-auto-sudoedit")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v4 1/2] gnu: Add emacs-ob-elm.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (7 preceding siblings ...)
  2022-09-16 12:30 ` [bug#57737] [PATCH v4 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
@ 2022-09-16 12:31 ` Nicolas Graves via Guix-patches via
  2022-09-16 12:31   ` [bug#57737] [PATCH v4 2/2] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-16 12:44 ` [bug#57737] sorry again for the broken sent Nicolas Graves via Guix-patches via
                   ` (2 subsequent siblings)
  11 siblings, 1 reply; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-16 12:31 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-ob-elm): New variable.
---
 gnu/packages/emacs-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 9db49cd8a7..cb133a9d91 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27238,6 +27238,31 @@ (define-public emacs-eval-in-repl-javascript
   (make-emacs-eval-in-repl "javascript"))
 
 
+(define-public emacs-ob-elm
+  (let ((commit "d3a9fbc2f56416894c9aed65ea9a20cc1d98f15d")
+        (revision "0"))
+    (package
+      (name "emacs-ob-elm")
+      (version (git-version "0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/BonfaceKilz/ob-elm")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "1wdlr0cbsb2drdmcn2bnivjkj1f2v52l6yizwsnjgi4xq3w6k56h"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/BonfaceKilz/ob-elm")
+      (synopsis "Org-Babel support for evaluating Elm code")
+      (description
+"This package adds Org-Babel support for evaluating Elm code, which can be
+enabled by adding @code{(elm . t)} to the variable
+@code{org-babel-do-load-languages}.")
+      (license license:gpl3+))))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v4 2/2] gnu: Add emacs-org-babel-eval-in-repl.
  2022-09-16 12:31 ` [bug#57737] [PATCH v4 1/2] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
@ 2022-09-16 12:31   ` Nicolas Graves via Guix-patches via
  0 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-16 12:31 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-org-babel-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index cb133a9d91..267c7c0095 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -243,6 +243,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages finance)
   #:use-module (gnu packages ocaml)
   #:use-module (gnu packages erlang)
+  #:use-module (gnu packages statistics)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27263,6 +27264,35 @@ (define-public emacs-ob-elm
 @code{org-babel-do-load-languages}.")
       (license license:gpl3+))))
 
+(define-public emacs-org-babel-eval-in-repl
+  (package
+    (name "emacs-org-babel-eval-in-repl")
+    (version "1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/org-babel-eval-in-repl-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0bdnps6m3kcvsagz8cfm3kf2rvxzl2p252pfggwbdbl43kzvl35h"))
+       (modules '((guix build utils)))
+       ;; Remove matlab
+       (snippet
+        '(begin (delete-file "eval-in-repl-matlab.el")))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-ess))
+    (home-page "https://github.com/diadochos/org-babel-eval-in-repl")
+    (synopsis "Eval org-mode babel code blocks in various REPLs")
+    (description
+     "This package allows you to execute org-mode (babel) source code blocks with
+eval-in-repl.  It features async execution (because it uses an external
+process) and babel execution without the output written in the buffer (less
+visual distraction, and the output is reproducible as long as the code is
+saved).")
+    (license license:expat)))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] sorry again for the broken sent
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (8 preceding siblings ...)
  2022-09-16 12:31 ` [bug#57737] [PATCH v4 1/2] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
@ 2022-09-16 12:44 ` Nicolas Graves via Guix-patches via
  2022-09-23 16:34   ` Liliana Marie Prikler
  2022-09-16 12:47 ` [bug#57737] [PATCH v4 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
  2022-09-23 18:34 ` [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  11 siblings, 1 reply; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-16 12:44 UTC (permalink / raw)
  To: 57737; +Cc: maximedevos, Liliana Marie Prikler, zimoun


Sorry, I'm having some trouble to send everything properly. The fourth
patch didn't make it through, I'll resend it after this one.

Just a quick follow up on changes :
- I made advised changes for localization.
- I've deleted the part about moving emacs-elixir-mode, switched the
list of packages to a list of strings with name packages, so that we use
the more reliable transformation to define the packages. This way, I can
build the packages (which was not the case before, I had a strange error).

-- 
Best regards,
Nicolas Graves




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v4 4/6] gnu: Add emacs-eval-in-repl packages.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (9 preceding siblings ...)
  2022-09-16 12:44 ` [bug#57737] sorry again for the broken sent Nicolas Graves via Guix-patches via
@ 2022-09-16 12:47 ` Nicolas Graves via Guix-patches via
  2022-09-23 18:34 ` [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  11 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-16 12:47 UTC (permalink / raw)
  To: 57737


* gnu/packages/emacs-xyz.scm
  (emacs-eval-in-repl): New variable.
  (emacs-eval-in-repl-ielm): New variable.
  (emacs-eval-in-repl-cider): New variable.
  (emacs-eval-in-repl-slime): New variable.
  (emacs-eval-in-repl-sly): New variable.
  (emacs-eval-in-repl-geiser): New variable.
  (emacs-eval-in-repl-racket): New variable.
  (emacs-eval-in-repl-scheme): New variable.
  (emacs-eval-in-repl-hy): New variable.
  (emacs-eval-in-repl-python): New variable.
  (emacs-eval-in-repl-ruby): New variable.
  (emacs-eval-in-repl-sml): New variable.
  (emacs-eval-in-repl-ocaml): New variable.
  (emacs-eval-in-repl-prolog): New variable.
  (emacs-eval-in-repl-javascript): New variable.
  (emacs-eval-in-repl-shell): New variable.
  (emacs-eval-in-repl-iex): New variable.
  (emacs-eval-in-repl-erlang): New variable.
  (emacs-eval-in-repl-elm): New variable.
  (emacs-eval-in-repl-lua): New variable.
---
 gnu/packages/emacs-xyz.scm | 86 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 86 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index ac35e57773..9db49cd8a7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -140,6 +140,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (guix download)
   #:use-module (guix bzr-download)
   #:use-module (guix gexp)
+  #:use-module (guix i18n)
   #:use-module (guix git-download)
   #:use-module (guix hg-download)
   #:use-module (guix build-system gnu)
@@ -240,6 +241,8 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages uml)
   #:use-module (gnu packages finance)
+  #:use-module (gnu packages ocaml)
+  #:use-module (gnu packages erlang)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27152,6 +27155,89 @@ (define-public emacs-eval-in-repl
 @end itemize")
     (license license:expat)))

+(define (repl->lang s)
+    (cond
+     ((string= s "ielm")   "Emacs Lisp")
+     ((string= s "cider")  "Clojure")
+     ((string= s "slime")  "Common Lisp")
+     ((string= s "sly")    "Common Lisp")
+     ((string= s "geiser") "Racket/Scheme")
+     ((string= s "sml")    "Standard ML")
+     ((string= s "iex")    "Elixir")
+     ((string= s "ocaml")  "OCaml")
+     (else (string-capitalize s))))
+
+(define (repl->inputs s)
+    (cond
+     ((string= s "cider")      '("emacs-cider"))
+     ((string= s "slime")      '("emacs-slime"))
+     ((string= s "sly")        '("emacs-sly"))
+     ((string= s "geiser")     '("emacs-geiser"))
+     ((string= s "racket")     '("emacs-racket-mode"))
+     ((string= s "hy")         '("emacs-hy-mode"))
+     ((string= s "ruby")       '("emacs-inf-ruby"))
+     ((string= s "sml")        '("emacs-sml-mode"))
+     ((string= s "ocaml")      '("emacs-tuareg"))
+     ((string= s "javascript") '("emacs-js2-mode" "emacs-js-comint"))
+     ((string= s "iex")        '("emacs-elixir-mode" "emacs-alchemist"))
+     ((string= s "erlang")     '("emacs-erlang"))
+     ((string= s "elm")        '("emacs-elm-mode"))
+     ((string= s "lua")        '("emacs-lua-mode"))
+     (else '())))
+
+(define (make-emacs-eval-in-repl repl)
+  (let* ((lang (repl->lang repl))
+         (inputs (repl->inputs repl)))
+    (package
+      (name (string-append "emacs-eval-in-repl-" repl))
+      (version "0.9.7")
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/kaz-yos/eval-in-repl")
+               (commit (string-append "v" version))))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1mrssbl0wyc6iij8zk1y3h9bd3rv53nnrxsij7fn67l1m4z0clyn"))))
+      (build-system emacs-build-system)
+      (arguments
+       `(#:include (list ,(string-append "eval-in-repl-" repl "\\.el"))))
+      (propagated-inputs (append (list emacs-eval-in-repl)
+                                 (map specification->package+output inputs)))
+      (home-page "https://github.com/kaz-yos/eval-in-repl")
+      (synopsis "Consistent evaluation interface for Emacs Lisp REPLs for emacs")
+      (description (G_ (string-append "\
+This package provides a consistent ESS-like evaluation interface for
+" lang " REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")))
+      (license license:expat))))
+
+(define-public emacs-eval-in-repl-ielm   (make-emacs-eval-in-repl "ielm"))
+(define-public emacs-eval-in-repl-cider  (make-emacs-eval-in-repl "cider"))
+(define-public emacs-eval-in-repl-slime  (make-emacs-eval-in-repl "slime"))
+(define-public emacs-eval-in-repl-sly    (make-emacs-eval-in-repl "sly"))
+(define-public emacs-eval-in-repl-geiser (make-emacs-eval-in-repl "geiser"))
+(define-public emacs-eval-in-repl-racket (make-emacs-eval-in-repl "racket"))
+(define-public emacs-eval-in-repl-scheme (make-emacs-eval-in-repl "scheme"))
+(define-public emacs-eval-in-repl-hy     (make-emacs-eval-in-repl "hy"))
+(define-public emacs-eval-in-repl-python (make-emacs-eval-in-repl "python"))
+(define-public emacs-eval-in-repl-ruby   (make-emacs-eval-in-repl "ruby"))
+(define-public emacs-eval-in-repl-sml    (make-emacs-eval-in-repl "sml"))
+(define-public emacs-eval-in-repl-ocaml  (make-emacs-eval-in-repl "ocaml"))
+(define-public emacs-eval-in-repl-prolog (make-emacs-eval-in-repl "prolog"))
+(define-public emacs-eval-in-repl-shell  (make-emacs-eval-in-repl "shell"))
+(define-public emacs-eval-in-repl-iex    (make-emacs-eval-in-repl "iex"))
+(define-public emacs-eval-in-repl-erlang (make-emacs-eval-in-repl "erlang"))
+(define-public emacs-eval-in-repl-elm    (make-emacs-eval-in-repl "elm"))
+(define-public emacs-eval-in-repl-lua    (make-emacs-eval-in-repl "lua"))
+(define-public emacs-eval-in-repl-javascript
+  (make-emacs-eval-in-repl "javascript"))
+
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
--
2.37.3


<#secure method=pgpmime mode=sign>

--
Best regards,
Nicolas Graves




^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] sorry again for the broken sent
  2022-09-16 12:44 ` [bug#57737] sorry again for the broken sent Nicolas Graves via Guix-patches via
@ 2022-09-23 16:34   ` Liliana Marie Prikler
  2022-09-23 18:29     ` Nicolas Graves via Guix-patches via
  0 siblings, 1 reply; 59+ messages in thread
From: Liliana Marie Prikler @ 2022-09-23 16:34 UTC (permalink / raw)
  To: Nicolas Graves, 57737; +Cc: maximedevos, zimoun

Am Freitag, dem 16.09.2022 um 14:44 +0200 schrieb Nicolas Graves:
> 
> Sorry, I'm having some trouble to send everything properly. The
> fourth
> patch didn't make it through, I'll resend it after this one.
> 
> Just a quick follow up on changes :
> - I made advised changes for localization.
> - I've deleted the part about moving emacs-elixir-mode, switched the
> list of packages to a list of strings with name packages, so that we
> use
> the more reliable transformation to define the packages. This way, I
> can
> build the packages (which was not the case before, I had a strange
> error).
Could you do a clean send of everything with reroll count 5?




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] sorry again for the broken sent
  2022-09-23 16:34   ` Liliana Marie Prikler
@ 2022-09-23 18:29     ` Nicolas Graves via Guix-patches via
  2022-09-23 23:53       ` bug#57737: " Liliana Marie Prikler
  2022-09-25 14:34       ` [bug#57737] " zimoun
  0 siblings, 2 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-23 18:29 UTC (permalink / raw)
  To: Liliana Marie Prikler, 57737; +Cc: maximedevos, zimoun


> Could you do a clean send of everything with reroll count 5?
I'm using emacs-git-email, which doesn't provide the option. But it's
the first patch series for which I have this error. If that happens
again, I'll consider switching.

I'm resending it then after this email. Last news / changes:
- tested building every package. Works for every package except lua,
because of the broken emacs-lua-mode dependency.
- tiny commit message edit.

-- 
Best regards,
Nicolas Graves




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl.
  2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
                   ` (10 preceding siblings ...)
  2022-09-16 12:47 ` [bug#57737] [PATCH v4 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
@ 2022-09-23 18:34 ` Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
                     ` (4 more replies)
  11 siblings, 5 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-23 18:34 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 57 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 074d4d1c4c..47a834f91f 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -116,6 +116,7 @@
 ;;; Copyright © 2022 Haider Mirza <haider@haider.gq>
 ;;; Copyright © 2022 Jose G Perez Taveras <josegpt27@gmail.com>
 ;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
+;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27038,6 +27039,62 @@ (define-public emacs-info-plus
 nodes, and more.")
       (license license:gpl2+))))
 
+(define-public emacs-eval-in-repl
+  (package
+    (name "emacs-eval-in-repl")
+    (version "0.9.7")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/kaz-yos/eval-in-repl")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1mrssbl0wyc6iij8zk1y3h9bd3rv53nnrxsij7fn67l1m4z0clyn"))))
+    (build-system emacs-build-system)
+    (arguments
+     `(#:include
+       (list "eval-in-repl\\.el" "eval-in-repl-test\\.el" "README\\.md")))
+    (propagated-inputs (list emacs-dash emacs-paredit emacs-ace-window))
+    (home-page "https://github.com/kaz-yos/eval-in-repl")
+    (synopsis "Consistent evaluation interface for various REPLs for emacs")
+    (description"\
+This package provides a consistent ESS-like evaluation interface for
+various REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.
+
+This package along with REPL/shell specific packages implement similar work flow
+for various REPLs.
+
+This package alone is not functional.  It also requires the following packages
+depending on your needs :
+@itemize
+@item eval-in-repl-ielm       for Emacs Lisp
+@item eval-in-repl-cider      for Clojure
+@item eval-in-repl-slime      for Common Lisp
+@item eval-in-repl-sly        for Common Lisp
+@item eval-in-repl-geiser     for Racket/Scheme
+@item eval-in-repl-racket     for Racket
+@item eval-in-repl-scheme     for Scheme
+@item eval-in-repl-hy         for Hy
+@item eval-in-repl-python     for Python
+@item eval-in-repl-ruby       for Ruby
+@item eval-in-repl-sml        for Standard ML
+@item eval-in-repl-ocaml      for OCaml
+@item eval-in-repl-prolog     for Prolog
+@item eval-in-repl-javascript for Javascript
+@item eval-in-repl-shell      for Shell
+@item eval-in-repl-iex        for Elixir
+@item eval-in-repl-erlang     for Erlang
+@item eval-in-repl-elm        for Elm
+@item eval-in-repl-lua        for Lua
+@end itemize")
+    (license license:expat)))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v5 2/6] gnu: Add emacs-js-comint.
  2022-09-23 18:34 ` [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
@ 2022-09-23 18:34   ` Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
                     ` (3 subsequent siblings)
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-23 18:34 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-js-comint): New variable.
---
 gnu/packages/emacs-xyz.scm | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 47a834f91f..41174aab02 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -10871,6 +10871,28 @@ (define-public emacs-js2-mode
 strings, and code folding.")
     (license license:gpl3+)))
 
+(define-public emacs-js-comint
+  (package
+    (name "emacs-js-comint")
+    (version "1.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/js-comint-"
+             version
+             ".el"))
+       (sha256
+        (base32 "1qin0hclm3ly62nl5ddiim64bcd2k74b1yqsqqc61cf9k2q8k287"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/redguardtoo/js-comint")
+    (synopsis "JavaScript interpreter in window")
+    (description
+     "This program is a comint mode for Emacs which allows you to run a compatible
+javascript repl like Node.js/Spidermonkey/Rhino inside Emacs. It also defines a
+few functions for sending javascript input to it quickly.")
+    (license license:gpl3+)))
+
 (define-public emacs-nodejs-repl
   (package
     (name "emacs-nodejs-repl")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v5 3/6] gnu: Add emacs-alchemist.
  2022-09-23 18:34 ` [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
@ 2022-09-23 18:34   ` Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
                     ` (2 subsequent siblings)
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-23 18:34 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-alchemist): New variable.
---
 gnu/packages/emacs-xyz.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 41174aab02..ac35e57773 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -2580,6 +2580,41 @@ (define-public emacs-ace-link
 letter to each link using avy.")
     (license license:gpl3+)))
 
+(define-public emacs-alchemist
+  (package
+    (name "emacs-alchemist")
+    (version "1.8.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/alchemist-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0ygwf9d739zqc8dcckw0j0bqkipw7cmxbrx3l281x237a3d384yw"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     (list emacs-elixir-mode emacs-dash emacs-company emacs-pkg-info))
+    (home-page "http://www.github.com/tonini/alchemist.el")
+  (synopsis "Elixir tooling integration into Emacs")
+  (description
+   "This package brings you all the Elixir tooling and power inside your Emacs
+editor.  Alchemist comes with a bunch of features, which are:
+@itemize
+@item Mix integration
+@item Compile & Execution of Elixir code
+@item Inline code evaluation
+@item Inline macro expanding
+@item Documentation lookup
+@item Definition lookup
+@item Powerful IEx integration
+@item Smart code completion
+@item Elixir project management
+@item Phoenix support
+@end itemize")
+  (license license:gpl3+)))
+
 (define-public emacs-auto-sudoedit
   (package
     (name "emacs-auto-sudoedit")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v5 4/6] gnu: Add emacs-eval-in-repl packages.
  2022-09-23 18:34 ` [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
@ 2022-09-23 18:34   ` Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 5/6] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 6/6] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-23 18:34 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm
  (emacs-eval-in-repl-ielm): New variable.
  (emacs-eval-in-repl-cider): New variable.
  (emacs-eval-in-repl-slime): New variable.
  (emacs-eval-in-repl-sly): New variable.
  (emacs-eval-in-repl-geiser): New variable.
  (emacs-eval-in-repl-racket): New variable.
  (emacs-eval-in-repl-scheme): New variable.
  (emacs-eval-in-repl-hy): New variable.
  (emacs-eval-in-repl-python): New variable.
  (emacs-eval-in-repl-ruby): New variable.
  (emacs-eval-in-repl-sml): New variable.
  (emacs-eval-in-repl-ocaml): New variable.
  (emacs-eval-in-repl-prolog): New variable.
  (emacs-eval-in-repl-javascript): New variable.
  (emacs-eval-in-repl-shell): New variable.
  (emacs-eval-in-repl-iex): New variable.
  (emacs-eval-in-repl-erlang): New variable.
  (emacs-eval-in-repl-elm): New variable.
  (emacs-eval-in-repl-lua): New variable.
---
 gnu/packages/emacs-xyz.scm | 86 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 86 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index ac35e57773..9db49cd8a7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -140,6 +140,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (guix download)
   #:use-module (guix bzr-download)
   #:use-module (guix gexp)
+  #:use-module (guix i18n)
   #:use-module (guix git-download)
   #:use-module (guix hg-download)
   #:use-module (guix build-system gnu)
@@ -240,6 +241,8 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages photo)
   #:use-module (gnu packages uml)
   #:use-module (gnu packages finance)
+  #:use-module (gnu packages ocaml)
+  #:use-module (gnu packages erlang)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27152,6 +27155,89 @@ (define-public emacs-eval-in-repl
 @end itemize")
     (license license:expat)))
 
+(define (repl->lang s)
+    (cond
+     ((string= s "ielm")   "Emacs Lisp")
+     ((string= s "cider")  "Clojure")
+     ((string= s "slime")  "Common Lisp")
+     ((string= s "sly")    "Common Lisp")
+     ((string= s "geiser") "Racket/Scheme")
+     ((string= s "sml")    "Standard ML")
+     ((string= s "iex")    "Elixir")
+     ((string= s "ocaml")  "OCaml")
+     (else (string-capitalize s))))
+
+(define (repl->inputs s)
+    (cond
+     ((string= s "cider")      '("emacs-cider"))
+     ((string= s "slime")      '("emacs-slime"))
+     ((string= s "sly")        '("emacs-sly"))
+     ((string= s "geiser")     '("emacs-geiser"))
+     ((string= s "racket")     '("emacs-racket-mode"))
+     ((string= s "hy")         '("emacs-hy-mode"))
+     ((string= s "ruby")       '("emacs-inf-ruby"))
+     ((string= s "sml")        '("emacs-sml-mode"))
+     ((string= s "ocaml")      '("emacs-tuareg"))
+     ((string= s "javascript") '("emacs-js2-mode" "emacs-js-comint"))
+     ((string= s "iex")        '("emacs-elixir-mode" "emacs-alchemist"))
+     ((string= s "erlang")     '("emacs-erlang"))
+     ((string= s "elm")        '("emacs-elm-mode"))
+     ((string= s "lua")        '("emacs-lua-mode"))
+     (else '())))
+
+(define (make-emacs-eval-in-repl repl)
+  (let* ((lang (repl->lang repl))
+         (inputs (repl->inputs repl)))
+    (package
+      (name (string-append "emacs-eval-in-repl-" repl))
+      (version "0.9.7")
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/kaz-yos/eval-in-repl")
+               (commit (string-append "v" version))))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1mrssbl0wyc6iij8zk1y3h9bd3rv53nnrxsij7fn67l1m4z0clyn"))))
+      (build-system emacs-build-system)
+      (arguments
+       `(#:include (list ,(string-append "eval-in-repl-" repl "\\.el"))))
+      (propagated-inputs (append (list emacs-eval-in-repl)
+                                 (map specification->package+output inputs)))
+      (home-page "https://github.com/kaz-yos/eval-in-repl")
+      (synopsis "Consistent evaluation interface for Emacs Lisp REPLs for emacs")
+      (description (G_ (string-append "\
+This package provides a consistent ESS-like evaluation interface for
+" lang " REPLs.  Emacs Speaks Statistics (ESS) package has a nice function
+called @code{ess-eval-region-or-line-and-step}, which is assigned to
+C-RET.  This function sends a line or a selected region to the corresponding
+shell (R, Julia, Stata, etc) visibly.  It also start up a shell if there is
+none.")))
+      (license license:expat))))
+
+(define-public emacs-eval-in-repl-ielm   (make-emacs-eval-in-repl "ielm"))
+(define-public emacs-eval-in-repl-cider  (make-emacs-eval-in-repl "cider"))
+(define-public emacs-eval-in-repl-slime  (make-emacs-eval-in-repl "slime"))
+(define-public emacs-eval-in-repl-sly    (make-emacs-eval-in-repl "sly"))
+(define-public emacs-eval-in-repl-geiser (make-emacs-eval-in-repl "geiser"))
+(define-public emacs-eval-in-repl-racket (make-emacs-eval-in-repl "racket"))
+(define-public emacs-eval-in-repl-scheme (make-emacs-eval-in-repl "scheme"))
+(define-public emacs-eval-in-repl-hy     (make-emacs-eval-in-repl "hy"))
+(define-public emacs-eval-in-repl-python (make-emacs-eval-in-repl "python"))
+(define-public emacs-eval-in-repl-ruby   (make-emacs-eval-in-repl "ruby"))
+(define-public emacs-eval-in-repl-sml    (make-emacs-eval-in-repl "sml"))
+(define-public emacs-eval-in-repl-ocaml  (make-emacs-eval-in-repl "ocaml"))
+(define-public emacs-eval-in-repl-prolog (make-emacs-eval-in-repl "prolog"))
+(define-public emacs-eval-in-repl-shell  (make-emacs-eval-in-repl "shell"))
+(define-public emacs-eval-in-repl-iex    (make-emacs-eval-in-repl "iex"))
+(define-public emacs-eval-in-repl-erlang (make-emacs-eval-in-repl "erlang"))
+(define-public emacs-eval-in-repl-elm    (make-emacs-eval-in-repl "elm"))
+(define-public emacs-eval-in-repl-lua    (make-emacs-eval-in-repl "lua"))
+(define-public emacs-eval-in-repl-javascript
+  (make-emacs-eval-in-repl "javascript"))
+
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v5 5/6] gnu: Add emacs-ob-elm.
  2022-09-23 18:34 ` [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (2 preceding siblings ...)
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
@ 2022-09-23 18:34   ` Nicolas Graves via Guix-patches via
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 6/6] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-23 18:34 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-ob-elm): New variable.
---
 gnu/packages/emacs-xyz.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 9db49cd8a7..cb133a9d91 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -27238,6 +27238,31 @@ (define-public emacs-eval-in-repl-javascript
   (make-emacs-eval-in-repl "javascript"))
 
 
+(define-public emacs-ob-elm
+  (let ((commit "d3a9fbc2f56416894c9aed65ea9a20cc1d98f15d")
+        (revision "0"))
+    (package
+      (name "emacs-ob-elm")
+      (version (git-version "0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/BonfaceKilz/ob-elm")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "1wdlr0cbsb2drdmcn2bnivjkj1f2v52l6yizwsnjgi4xq3w6k56h"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/BonfaceKilz/ob-elm")
+      (synopsis "Org-Babel support for evaluating Elm code")
+      (description
+"This package adds Org-Babel support for evaluating Elm code, which can be
+enabled by adding @code{(elm . t)} to the variable
+@code{org-babel-do-load-languages}.")
+      (license license:gpl3+))))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* [bug#57737] [PATCH v5 6/6] gnu: Add emacs-org-babel-eval-in-repl.
  2022-09-23 18:34 ` [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
                     ` (3 preceding siblings ...)
  2022-09-23 18:34   ` [bug#57737] [PATCH v5 5/6] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
@ 2022-09-23 18:34   ` Nicolas Graves via Guix-patches via
  4 siblings, 0 replies; 59+ messages in thread
From: Nicolas Graves via Guix-patches via @ 2022-09-23 18:34 UTC (permalink / raw)
  To: 57737; +Cc: ngraves

* gnu/packages/emacs-xyz.scm (emacs-org-babel-eval-in-repl): New variable.
---
 gnu/packages/emacs-xyz.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index cb133a9d91..267c7c0095 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -243,6 +243,7 @@ (define-module (gnu packages emacs-xyz)
   #:use-module (gnu packages finance)
   #:use-module (gnu packages ocaml)
   #:use-module (gnu packages erlang)
+  #:use-module (gnu packages statistics)
   #:use-module (guix utils)
   #:use-module (srfi srfi-1)
   #:use-module (ice-9 match))
@@ -27263,6 +27264,35 @@ (define-public emacs-ob-elm
 @code{org-babel-do-load-languages}.")
       (license license:gpl3+))))
 
+(define-public emacs-org-babel-eval-in-repl
+  (package
+    (name "emacs-org-babel-eval-in-repl")
+    (version "1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://stable.melpa.org/packages/org-babel-eval-in-repl-"
+             version
+             ".tar"))
+       (sha256
+        (base32 "0bdnps6m3kcvsagz8cfm3kf2rvxzl2p252pfggwbdbl43kzvl35h"))
+       (modules '((guix build utils)))
+       ;; Remove matlab
+       (snippet
+        '(begin (delete-file "eval-in-repl-matlab.el")))))
+    (build-system emacs-build-system)
+    (propagated-inputs (list emacs-eval-in-repl emacs-ess))
+    (home-page "https://github.com/diadochos/org-babel-eval-in-repl")
+    (synopsis "Eval org-mode babel code blocks in various REPLs")
+    (description
+     "This package allows you to execute org-mode (babel) source code blocks with
+eval-in-repl.  It features async execution (because it uses an external
+process) and babel execution without the output written in the buffer (less
+visual distraction, and the output is reproducible as long as the code is
+saved).")
+    (license license:expat)))
+
 (define-public emacs-eval-sexp-fu-el
   (package
     (name "emacs-eval-sexp-fu-el")
-- 
2.37.3





^ permalink raw reply related	[flat|nested] 59+ messages in thread

* bug#57737: sorry again for the broken sent
  2022-09-23 18:29     ` Nicolas Graves via Guix-patches via
@ 2022-09-23 23:53       ` Liliana Marie Prikler
  2022-09-25 14:34       ` [bug#57737] " zimoun
  1 sibling, 0 replies; 59+ messages in thread
From: Liliana Marie Prikler @ 2022-09-23 23:53 UTC (permalink / raw)
  To: Nicolas Graves, 57737-done; +Cc: maximedevos, zimoun

Am Freitag, dem 23.09.2022 um 20:29 +0200 schrieb Nicolas Graves:
> 
> > Could you do a clean send of everything with reroll count 5?
> I'm using emacs-git-email, which doesn't provide the option. But it's
> the first patch series for which I have this error. If that happens
> again, I'll consider switching.
I cleaned up your commits and pushed them; have fun REPL'ing in
everything but lua.




^ permalink raw reply	[flat|nested] 59+ messages in thread

* [bug#57737] sorry again for the broken sent
  2022-09-23 18:29     ` Nicolas Graves via Guix-patches via
  2022-09-23 23:53       ` bug#57737: " Liliana Marie Prikler
@ 2022-09-25 14:34       ` zimoun
  1 sibling, 0 replies; 59+ messages in thread
From: zimoun @ 2022-09-25 14:34 UTC (permalink / raw)
  To: Nicolas Graves, Liliana Marie Prikler, 57737; +Cc: maximedevos

Hi Nicolas,

Thanks for your patches.


On Fri, 23 Sep 2022 at 20:29, Nicolas Graves via Guix-patches via <guix-patches@gnu.org> wrote:

>> Could you do a clean send of everything with reroll count 5?
> I'm using emacs-git-email, which doesn't provide the option.

Why is it not possible to provide the option ’--reroll-count=5’ as
additional arguments to ’git-email-format-patch’?  Or via
’git-email-format-patch-default-args'?  Note that it reads,

--8<---------------cut here---------------start------------->8---
(defcustom git-email-format-patch-extra-args
  '("--cover-letter"
[...]
    "--reroll-count="
    "--in-reply-to=")
  "List of arguments to display in `git-email-format-patch'."
  :type '(string)
  :group 'git-email
  :package-version '(git-email . "0.2.0"))
--8<---------------cut here---------------end--------------->8---

therefore, it should be possible to use the equivalent of the command
“git format-patch --reroll-count=5“ via the package emacs-git-email. :-)


> - tested building every package. Works for every package except lua,
> because of the broken emacs-lua-mode dependency.

emacs-lua-mode is fixed by 7ab5c85f4c06ef35c85f38672f5dcbecc65c8906; see:

    https://ci.guix.gnu.org/build/1495157/details

Maybe it could help. :-)


Cheers,
simon






^ permalink raw reply	[flat|nested] 59+ messages in thread

end of thread, other threads:[~2022-09-25 14:42 UTC | newest]

Thread overview: 59+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-09-11 18:03 [bug#57737] emacs-eval-in-repl patches Nicolas Graves via Guix-patches via
2022-09-11 18:15 ` [bug#57737] [PATCH 01/22] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 02/22] gnu: Add emacs-eval-in-repl-ielm Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 03/22] gnu: Add emacs-eval-in-repl-cider Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 04/22] gnu: Add emacs-eval-in-repl-slime Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 05/22] gnu: Add emacs-eval-in-repl-geiser Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 06/22] gnu: Add emacs-eval-in-repl-racket Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 07/22] gnu: Add emacs-eval-in-repl-scheme Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 08/22] gnu: Add emacs-eval-in-repl-hy Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 09/22] gnu: Add emacs-eval-in-repl-python Nicolas Graves via Guix-patches via
2022-09-11 18:15   ` [bug#57737] [PATCH 10/22] gnu: Add emacs-eval-in-repl-ruby Nicolas Graves via Guix-patches via
2022-09-11 18:16   ` [bug#57737] [PATCH 11/22] gnu: Add emacs-eval-in-repl-sml Nicolas Graves via Guix-patches via
2022-09-11 18:16   ` [bug#57737] [PATCH 12/22] gnu: Add emacs-eval-in-repl-ocaml Nicolas Graves via Guix-patches via
2022-09-11 18:19 ` [bug#57737] [PATCH 01/10] gnu: Add emacs-eval-in-repl-prolog Nicolas Graves via Guix-patches via
2022-09-11 18:19   ` [bug#57737] [PATCH 02/10] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
2022-09-11 18:19   ` [bug#57737] [PATCH 03/10] gnu: Add emacs-eval-in-repl-javascript Nicolas Graves via Guix-patches via
2022-09-11 18:21 ` [bug#57737] [PATCH 1/7] gnu: Add emacs-eval-in-repl-shell Nicolas Graves via Guix-patches via
2022-09-11 18:21   ` [bug#57737] [PATCH 2/7] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
2022-09-11 18:21   ` [bug#57737] [PATCH 3/7] gnu: Add emacs-eval-in-repl-iex Nicolas Graves via Guix-patches via
2022-09-11 18:21   ` [bug#57737] [PATCH 4/7] gnu: Add emacs-eval-in-repl-erlang Nicolas Graves via Guix-patches via
2022-09-11 18:21   ` [bug#57737] [PATCH 5/7] gnu: Add emacs-eval-in-repl-elm Nicolas Graves via Guix-patches via
2022-09-11 18:21   ` [bug#57737] [PATCH 6/7] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
2022-09-11 18:21   ` [bug#57737] [PATCH 7/7] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-11 20:02 ` [bug#57737] emacs-eval-in-repl patches Liliana Marie Prikler
2022-09-13 13:47 ` [bug#57737] [PATCH 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-13 13:47   ` [bug#57737] [PATCH 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
2022-09-13 13:47   ` [bug#57737] [PATCH 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
2022-09-13 13:47   ` [bug#57737] [PATCH 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
2022-09-13 17:20     ` Maxime Devos
2022-09-13 17:22       ` ( via Guix-patches via
2022-09-13 19:51         ` Liliana Marie Prikler
2022-09-13 13:47   ` [bug#57737] [PATCH 5/6] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
2022-09-13 13:47   ` [bug#57737] [PATCH 6/6] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-13 21:41 ` [bug#57737] [PATCH 1/7] gnu: emacs-elixir-mode: Move package for eval-in-repl definition Nicolas Graves via Guix-patches via
2022-09-13 21:41   ` [bug#57737] [PATCH 2/7] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-13 21:41   ` [bug#57737] [PATCH 3/7] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
2022-09-13 21:41   ` [bug#57737] [PATCH 4/7] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
2022-09-13 21:41   ` [bug#57737] [PATCH 5/7] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
2022-09-13 21:41   ` [bug#57737] [PATCH 6/7] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
2022-09-13 21:41   ` [bug#57737] [PATCH 7/7] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-13 21:50 ` [bug#57737] Thanks for your reviews! Nicolas Graves via Guix-patches via
2022-09-14  7:09   ` zimoun
2022-09-16 12:30 ` [bug#57737] [PATCH v4 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-16 12:30   ` [bug#57737] [PATCH v4 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
2022-09-16 12:30   ` [bug#57737] [PATCH v4 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
2022-09-16 12:31 ` [bug#57737] [PATCH v4 1/2] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
2022-09-16 12:31   ` [bug#57737] [PATCH v4 2/2] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-16 12:44 ` [bug#57737] sorry again for the broken sent Nicolas Graves via Guix-patches via
2022-09-23 16:34   ` Liliana Marie Prikler
2022-09-23 18:29     ` Nicolas Graves via Guix-patches via
2022-09-23 23:53       ` bug#57737: " Liliana Marie Prikler
2022-09-25 14:34       ` [bug#57737] " zimoun
2022-09-16 12:47 ` [bug#57737] [PATCH v4 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
2022-09-23 18:34 ` [bug#57737] [PATCH v5 1/6] gnu: Add emacs-eval-in-repl Nicolas Graves via Guix-patches via
2022-09-23 18:34   ` [bug#57737] [PATCH v5 2/6] gnu: Add emacs-js-comint Nicolas Graves via Guix-patches via
2022-09-23 18:34   ` [bug#57737] [PATCH v5 3/6] gnu: Add emacs-alchemist Nicolas Graves via Guix-patches via
2022-09-23 18:34   ` [bug#57737] [PATCH v5 4/6] gnu: Add emacs-eval-in-repl packages Nicolas Graves via Guix-patches via
2022-09-23 18:34   ` [bug#57737] [PATCH v5 5/6] gnu: Add emacs-ob-elm Nicolas Graves via Guix-patches via
2022-09-23 18:34   ` [bug#57737] [PATCH v5 6/6] gnu: Add emacs-org-babel-eval-in-repl Nicolas Graves via Guix-patches via

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.