summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorjao <jao@gnu.org>2025-09-23 23:00:15 +0100
committerjao <jao@gnu.org>2025-09-23 23:00:15 +0100
commit09f814c07e1a7b5d97ac63831644e0f439c1aefd (patch)
treee2c841de2361f02dfb91fe90352615b8bd7528c4
parent890686ca37d49c308be7257d7a20ea03e29a6582 (diff)
downloadelibs-09f814c07e1a7b5d97ac63831644e0f439c1aefd.tar.gz
elibs-09f814c07e1a7b5d97ac63831644e0f439c1aefd.tar.bz2
jao-clojure: fixes for test/implementation jumps
-rw-r--r--custom/jao-custom-programming.el3
-rw-r--r--lib/prog/jao-clojure.el15
2 files changed, 12 insertions, 6 deletions
diff --git a/custom/jao-custom-programming.el b/custom/jao-custom-programming.el
index b88c43c..7fe3e7f 100644
--- a/custom/jao-custom-programming.el
+++ b/custom/jao-custom-programming.el
@@ -269,6 +269,8 @@
jao-kaocha-compilation-error)))
(use-package jao-clojure
+ :demand t
+ :after cider-test
:bind (:map clojure-mode-map (("C-c o" . jao-clojure-other-file))))
(use-package cider
@@ -277,6 +279,7 @@
:init (setq cider-annotate-completion-candidates t
cider-auto-select-error-buffer nil
cider-auto-select-test-report-buffer nil
+ cider-clojure-cli-aliases ":test"
cider-eldoc-display-for-symbol-at-point t
cider-eldoc-ns-function #'identity ;; #'cider-last-ns-segment
cider-enrich-classpath nil
diff --git a/lib/prog/jao-clojure.el b/lib/prog/jao-clojure.el
index e044f9e..827c47d 100644
--- a/lib/prog/jao-clojure.el
+++ b/lib/prog/jao-clojure.el
@@ -51,7 +51,7 @@
(jao-clojure--test-namespace-p (clojure-find-ns)))
(defun jao-clojure--test-for (namespace sep)
- (funcall cider-test-infer-test-ns namespace))
+ (replace-regexp-in-string "\\." sep (cider-test-default-test-ns-fn namespace)))
(defun jao-clojure--infer-test-ns (ns)
(if (jao-clojure--test-namespace-p ns)
@@ -65,20 +65,23 @@
(interactive)
(let* ((f (format "%s/%s/%s.%s"
(jao-clojure--root)
- (jao-clojure--ext-dir "test")
+ "test"
(jao-clojure--test-for (clojure-find-ns) "/")
(file-name-extension buffer-file-name)))
(f (replace-regexp-in-string "-" "_" f)))
(find-file f)))
(defun jao-clojure--implementation-for (namespace)
- (let ((n (replace-regexp-in-string "-test$" "" namespace)))
- (replace-regexp-in-string "\\.test\\." "." n)))
+ (thread-last (replace-regexp-in-string "-test$" "" namespace)
+ (replace-regexp-in-string "\\.test\\." ".")
+ (replace-regexp-in-string "-" "_")
+ (replace-regexp-in-string "\\." "/")
+ (substring-no-properties)))
(defun jao-clojure--find-implementation (src)
- (let ((f (format "%s/%s/%s.%s"
+ (let ((f (format "%s%s/%s.%s"
(jao-clojure--root)
- (jao-clojure--ext-dir src)
+ src
(jao-clojure--implementation-for (clojure-find-ns))
(file-name-extension buffer-file-name))))
(and (file-exists-p f) f)))