aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/emacs-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/emacs-xyz.scm')
-rw-r--r--gnu/packages/emacs-xyz.scm51
1 files changed, 51 insertions, 0 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index ab052badbd..2eb5a66fb7 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -17779,6 +17779,57 @@ like @code{company}, @code{flycheck}, and @code{projectile}.")
processes for Emacs")
(license license:gpl3+))))
+(define-public emacs-treemacs
+ (package
+ (name "emacs-treemacs")
+ (version "2.6")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Alexander-Miller/treemacs.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "13gs8g05xj7np3i2q3bbxg6zgdiazzn1spxii4x0cyd4pg83c0i1"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)
+ ("emacs-s" ,emacs-s)
+ ("emacs-f" ,emacs-f)
+ ("emacs-ace-window" ,emacs-ace-window)
+ ("emacs-pfuture" ,emacs-pfuture)
+ ("emacs-hydra" ,emacs-hydra)
+ ("emacs-ht" ,emacs-ht)))
+ (native-inputs
+ `(("emacs-buttercup" ,emacs-buttercup)
+ ("emacs-el-mock" ,emacs-el-mock)))
+ (arguments
+ `(#:tests? #t ;TODO: Investigate ‘treemacs--parse-collapsed-dirs’ test failure.
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-makefile
+ (lambda _
+ (substitute* "Makefile"
+ (("@\\$\\(CASK\\) exec ") ""))
+ #t))
+ (add-after 'fix-makefile 'chdir-elisp
+ ;; Elisp directory is not in root of the source.
+ (lambda _
+ (chdir "src/elisp")))
+ (replace 'check
+ (lambda _
+ (with-directory-excursion "../.." ;treemacs root
+ (chmod "test/test-treemacs.el" #o644)
+ (emacs-substitute-sexps "test/test-treemacs.el"
+ ("(describe \"treemacs--parse-collapsed-dirs\""
+ ""))
+ (invoke "make" "test")))))))
+ (home-page "https://github.com/Alexander-Miller/treemacs")
+ (synopsis "Emacs tree style file explorer")
+ (description "Powerful and flexible file tree project explorer.")
+ (license license:gpl3+)))
+
(define-public emacs-lsp-ui
(package
(name "emacs-lsp-ui")