Skip to content

Commit d630cd6

Browse files
committed
Implement clojure-ts-find-ns function
1 parent 5125a56 commit d630cd6

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
## main (unreleased)
44

5+
- Implement clojure-ts-find-ns function (mostly as a demonstration).
6+
57
## 0.1.4
68

79
- Fix misplaced defcustom form in hastily release 0.1.3 [6cba90c556c7e658b815cdbb9b4243bde3273203](https://github.com/clojure-emacs/clojure-ts-mode/commit/6cba90c556c7e658b815cdbb9b4243bde3273203)

clojure-ts-mode.el

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -670,6 +670,19 @@ See `clojure-ts--standard-definition-node-name' for the implementation used.")
670670
(add-to-list 'interpreter-mode-alist '("nbb" . clojurescript-ts-mode))
671671
(clojure-ts--register-novel-modes))
672672

673+
(defvar clojure-ts--find-ns-query
674+
(treesit-query-compile
675+
'clojure
676+
'(((source (list_lit
677+
:anchor (sym_lit name: (sym_name) @ns)
678+
:anchor (sym_lit name: (sym_name) @ns-name)))
679+
(:equal @ns "ns")))))
680+
681+
(defun clojure-ts-find-ns ()
682+
"Return the name of the current namespace."
683+
(let ((nodes (treesit-query-capture 'clojure clojure-ts--find-ns-query)))
684+
(treesit-node-text (cdr (assoc 'ns-name nodes)))))
685+
673686
(provide 'clojure-ts-mode)
674687

675688
;;; clojure-ts-mode.el ends here

0 commit comments

Comments
 (0)