Function: cider-jack-in-resolve-command

cider-jack-in-resolve-command is a byte-compiled function defined in cider.el.

Signature

(cider-jack-in-resolve-command PROJECT-TYPE)

Documentation

Determine the resolved file path to cider-jack-in-command.

Throws an error if PROJECT-TYPE is unknown.

Source Code

;; Defined in ~/.emacs.d/elpa/cider-20260414.1619/cider.el
(defun cider-jack-in-resolve-command (project-type)
  "Determine the resolved file path to `cider-jack-in-command'.
Throws an error if PROJECT-TYPE is unknown."
  (pcase project-type
    ('lein (cider--resolve-command cider-lein-command))
    ('clojure-cli (cider--resolve-command cider-clojure-cli-command))
    ('babashka (cider--resolve-command cider-babashka-command))
    ;; here we have to account for the possibility that the command is either
    ;; "npx shadow-cljs" or just "shadow-cljs"
    ('shadow-cljs (let ((parts (split-string cider-shadow-cljs-command)))
                    (when-let* ((command (cider--resolve-command (car parts))))
                      (mapconcat #'identity (cons command (cdr parts)) " "))))
    ;; TODO: Address the duplicated code below.
    ;; here we have to account for the possibility that the command is either
    ;; "nbb" (default) or "npx nbb".
    ('nbb (let ((parts (split-string cider-nbb-command)))
            (when-let* ((command (cider--resolve-command (car parts))))
              (mapconcat #'identity (cons command (cdr parts)) " "))))
    ;; here we have to account for use of the Gradle wrapper which is
    ;; a shell script within their project, so if they have a clearly
    ;; relative path like "./gradlew" use locate file instead of checking
    ;; the exec-path
    ('gradle (cider--resolve-project-command cider-gradle-command))
    ('basilisp (cider--resolve-command cider-basilisp-command))
    (_ (user-error "Unsupported project type `%S'" project-type))))