Subject: [PATCH v4 30/31] gnu: Add emacs-tree-sitter.

From: Pierre Langlois <[email-masked]>
Date: Fri, 18 Feb 2022 14:39:47 +0000

* gnu/packages/tree-sitter.scm (emacs-tree-sitter): New variable.
---
 gnu/packages/tree-sitter.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/tree-sitter.scm b/gnu/packages/tree-sitter.scm
index e2af7cff5a..9a427bed7f 100644
--- a/gnu/packages/tree-sitter.scm
+++ b/gnu/packages/tree-sitter.scm
@@ -923,3 +923,30 @@ (module (string-append (assoc-ref inputs "tree-sitter-emacs-module")
     (description "This package provides core APIs of the Emacs binding for
 Tree-sitter, an incremental parsing system.")
     (license license:expat)))
+
+(define-public emacs-tree-sitter
+  (package
+    (name "emacs-tree-sitter")
+    (version (package-version emacs-tree-sitter-core))
+    (source (package-source emacs-tree-sitter-core))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     (list emacs-tree-sitter-core))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'chdir
+           (lambda _ (chdir "lisp"))))))
+    (home-page "https://github.com/emacs-tree-sitter/elisp-tree-sitter")
+    (synopsis "Tree-sitter bindings for Emacs Lisp")
+    (description "This package provides Emacs bindings for Tree-sitter, an
+incremental parsing library.  It aims to be the foundation for a new breed of
+Emacs packages that understand code structurally.  For example:
+
+@enumerate
+@item Faster, fine-grained code highlighting.
+@item More flexible code folding.
+@item Structural editing (like Paredit, or even better) for non-Lisp code.
+@item More informative indexing for imenu.
+@end enumerate")
+    (license license:expat)))
--
2.34.0