emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/clojure-ts-mode b26d46e195 28/71: Add macros to imenu, de


From: ELPA Syncer
Subject: [nongnu] elpa/clojure-ts-mode b26d46e195 28/71: Add macros to imenu, declare used treesit C functions
Date: Fri, 25 Aug 2023 03:59:30 -0400 (EDT)

branch: elpa/clojure-ts-mode
commit b26d46e1950c1fc8aaed45c462f61b975aad9c0c
Author: dannyfreeman <danny@dfreeman.email>
Commit: dannyfreeman <danny@dfreeman.email>

    Add macros to imenu, declare used treesit C functions
---
 clojure-ts-mode.el | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/clojure-ts-mode.el b/clojure-ts-mode.el
index 23ad14eb55..f7fa67e4a8 100644
--- a/clojure-ts-mode.el
+++ b/clojure-ts-mode.el
@@ -52,6 +52,11 @@
 ;;; Code:
 (require 'treesit)
 
+(declare-function treesit-parser-create "treesit.c")
+(declare-function treesit-node-type "treesit.c")
+(declare-function treesit-node-child "treesit.c")
+(declare-function treesit-node-child-by-field-name "treesit.c")
+
 (defconst clojure-ts-mode-version
   (eval-when-compile
     (lm-version (or load-file-name buffer-file-name)))
@@ -361,6 +366,10 @@ DEFINITION-TYPE-NAME might be a string like defn, def, 
defmulti, etc."
   "Return non-nil if NODE is a defn form."
   (clojure-ts-mode--definition-node-p "defn" node))
 
+(defun clojure-ts-mode--defmacro-node-p (node)
+  "Return non-nil if NODE is a defmacro form."
+  (clojure-ts-mode--definition-node-p "defmacro" node))
+
 (defun clojure-ts-mode--ns-node-p (node)
   "Return non-nil if NODE is a ns form."
   (clojure-ts-mode--definition-node-p "ns" node))
@@ -383,7 +392,9 @@ The node representing (ns user) would return user."
 (defvar clojure-ts-mode--imenu-settings
   `(("Namespace" "list_lit" clojure-ts-mode--ns-node-p
      clojure-ts-mode--standard-definition-node-name)
-    ("Definition" "list_lit" clojure-ts-mode--defn-node-p
+    ("Function" "list_lit" clojure-ts-mode--defn-node-p
+     clojure-ts-mode--standard-definition-node-name)
+    ("Macro" "list_lit" clojure-ts-mode--defmacro-node-p
      clojure-ts-mode--standard-definition-node-name)
     ("Variable" "list_lit" clojure-ts-mode--def-node-p
      clojure-ts-mode--standard-definition-node-name)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]