Subject: [bug#45011] [PATCH] add emacs-project and dependency

From: Jonathan <[email-masked]>
Date: Sat, 5 Dec 2020 13:41:42 -0600

---
 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 5eb8f7c1ea..8a3414d123 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -86,6 +86,7 @@
 ;;; Copyright © 2020 Tim Howes <[email-masked]>
 ;;; Copyright © 2020 Noah Landis <[email-masked]>
 ;;; Copyright © 2020 Nicolò Balzarotti <[email-masked]>
+;;; Copyright © 2020 Jonathan Rostran <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -25754,3 +25755,33 @@ syntax highlighting and UI components.")
        "This Emacs package provides a Janet REPL to evaluate
@code{janet-mode}
 s-expression.")
       (license license:expat))))
+
+(define-public emacs-xref
+  (package
+  (name "emacs-xref")
+  (version "1.0.3")
+  (source
+    (origin
+      (method url-fetch)
+      (uri (string-append
+             "https://elpa.gnu.org/packages/xref-"
+             version
+             ".el"))
+      (sha256
+        (base32
+          "1r531gl73y1br8g4n77gxbyj26yiaw7snjad21fgs5m80cka8fi3"))))
+  (build-system emacs-build-system)
+  (home-page
+    "http://elpa.gnu.org/packages/xref.html")
+  (synopsis "Cross-referencing commands")
+  (description
+    "NOTE: The xref API is still experimental and can change in major,
+backward-incompatible ways.  Everyone is encouraged to try it, and
+report to us any problems or use cases we hadn't anticipated, by
+sending an email to emacs-devel, or `M-x report-emacs-bug'.
+
+This file provides a somewhat generic infrastructure for cross
+referencing commands, in particular \"find-definition\".
+
+See the etags and elisp-mode implementations for full examples.")
+  (license license:gpl3+)))
-- 
2.29.2

On Fri, Dec 4, 2020 at 2:12 PM Nicolas Goaziou <[email-masked]>
wrote:

> Hello,
>
> Jonathan <[email-masked]> writes:
>
> >  gnu/packages/emacs-xyz.scm | 61 ++++++++++++++++++++++++++++++++++++++
> >  1 file changed, 61 insertions(+)
>
> Thank you!
>
> Could you write a commit message to introduce your changes? You can look
> at those starting with "Add ..." in the code base.
>
> Also, could you split it into two patches, one for each package?
>
> > +  (synopsis "Operations on the current project")
> > +  (description
> > +   "NOTE: The project API is still experimental and can change in major,
> > +backward-incompatible ways.  Everyone is encouraged to try it, and
> > +report to us any problems or use cases we hadn't anticipated, by
> > +sending an email to emacs-devel, or `M-x report-emacs-bug'.
> > +
> > +This file contains generic infrastructure for dealing with
> > +projects, some utility functions, and commands using that
> > +infrastructure.")
>
> The synopsis could be clarified, so could the description. In
> particular, the latter explains what the library is about.
>
> > +  (description
> > +    "NOTE: The xref API is still experimental and can change in major,
> > +backward-incompatible ways.  Everyone is encouraged to try it, and
> > +report to us any problems or use cases we hadn't anticipated, by
> > +sending an email to emacs-devel, or `M-x report-emacs-bug'.
> > +
> > +This file provides a somewhat generic infrastructure for cross
> > +referencing commands, in particular \"find-definition\".
> > +
> > +See the etags and elisp-mode implementations for full examples.")
>
> Ditto.
>
> Could you send an updated patch?
>
> Regards,
> --
> Nicolas Goaziou
>