[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/inf-clojure 9a0323d 028/313: [Fix #4] Start subprocess in
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/inf-clojure 9a0323d 028/313: [Fix #4] Start subprocess in the root of lein and boot projects |
Date: |
Wed, 11 Aug 2021 09:59:39 -0400 (EDT) |
branch: elpa/inf-clojure
commit 9a0323d5a2777a0d7b4b611b12d4c6af65ae8d30
Author: Bozhidar Batsov <bozhidar@batsov.com>
Commit: Bozhidar Batsov <bozhidar@batsov.com>
[Fix #4] Start subprocess in the root of lein and boot projects
---
inf-clojure.el | 30 +++++++++++++++++++++++-------
1 file changed, 23 insertions(+), 7 deletions(-)
diff --git a/inf-clojure.el b/inf-clojure.el
index 37ab3b1..b5d4e28 100644
--- a/inf-clojure.el
+++ b/inf-clojure.el
@@ -265,6 +265,21 @@ to continue it."
(inf-clojure-chomp (concat "\n" str)))
(t str)))
+(defvar inf-clojure-project-root-files
+ '("project.clj" "build.boot")
+ "A list of files that can be considered project markers.")
+
+(defun inf-clojure-project-root ()
+ "Retrieve the root directory of a project if available.
+
+Fallback to `default-directory.' if not within a project."
+ (or (car (remove nil
+ (mapcar (lambda
+ (file)
+ (locate-dominating-file default-directory file))
+ inf-clojure-project-root-files)))
+ default-directory))
+
;;;###autoload
(defun inf-clojure (cmd)
"Run an inferior Clojure process, input and output via buffer
`*inf-clojure*'.
@@ -277,13 +292,14 @@ of `inf-clojure-program'). Runs the hooks from
(interactive (list (if current-prefix-arg
(read-string "Run Clojure: " inf-clojure-program)
inf-clojure-program)))
- (if (not (comint-check-proc "*inf-clojure*"))
- (let ((cmdlist (split-string cmd)))
- (set-buffer (apply (function make-comint)
- "inf-clojure" (car cmdlist) nil (cdr cmdlist)))
- (inf-clojure-mode)))
- (setq inf-clojure-buffer "*inf-clojure*")
- (pop-to-buffer-same-window "*inf-clojure*"))
+ (let ((default-directory (inf-clojure-project-root)))
+ (if (not (comint-check-proc "*inf-clojure*"))
+ (let ((cmdlist (split-string cmd)))
+ (set-buffer (apply (function make-comint)
+ "inf-clojure" (car cmdlist) nil (cdr cmdlist)))
+ (inf-clojure-mode)))
+ (setq inf-clojure-buffer "*inf-clojure*")
+ (pop-to-buffer-same-window "*inf-clojure*")))
;;;###autoload
(defalias 'run-clojure 'inf-clojure)
- [nongnu] elpa/inf-clojure 89035ee 033/313: Merge pull request #9 from mavbozo/ms-windows-hang, (continued)
- [nongnu] elpa/inf-clojure 89035ee 033/313: Merge pull request #9 from mavbozo/ms-windows-hang, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure dd2b4fc 038/313: Code style, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 898a319 041/313: Improve the README a bit, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure ff20773 044/313: Release 1.2.0, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 0652692 012/313: Preprocess the output from interactive commands, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 85d3d41 014/313: Extract a chomp helper, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure abb5a53 017/313: Add macroexpand command, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 3c2a1ed 022/313: Rename switch-to-clojure to inf-clojure-switch-to-repl, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure f00b2b5 026/313: Add a menu for inf-clojure-minor-mode, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 0d5f715 027/313: Unify the style of the REPL and minor mode menus, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 9a0323d 028/313: [Fix #4] Start subprocess in the root of lein and boot projects,
ELPA Syncer <=
- [nongnu] elpa/inf-clojure b2d6d0e 009/313: Add a command to show a var's source, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 52f9404 016/313: Add apropos command, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure ecf614e 018/313: Use inf-clojure prefix consistently, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 2627825 025/313: Move inf-clojure-mode menu definition, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure de88e4f 032/313: Solution to unresponsive repl in Windows OS, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure c3a9283 035/313: Use #' in the keymaps, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure c23e13a 040/313: Minor readability improvement, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 44f3f97 047/313: Improve a docstring, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 286b935 059/313: Release 1.3.0, ELPA Syncer, 2021/08/11
- [nongnu] elpa/inf-clojure 6c18b2c 052/313: Remove a bit of legacy from inferior-lisp, ELPA Syncer, 2021/08/11