88 lines
2.7 KiB
EmacsLisp
88 lines
2.7 KiB
EmacsLisp
;;; base-treemacs.el --- Extensiones/paquetes instalados y su configuración -*- lexical-binding: t -*-
|
|
|
|
;; Author: kj <webmaster@outcontrol.net>
|
|
;; URL: https://git.kj2.me/kj/confi-emacs-actual
|
|
|
|
;;; Commentary:
|
|
|
|
;;; Code:
|
|
|
|
(use-package treemacs
|
|
:defer t
|
|
:straight t
|
|
:commands (treemacs-follow-mode
|
|
treemacs-filewatch-mode
|
|
treemacs-fringe-indicator-mode
|
|
treemacs-git-mode)
|
|
:custom-face
|
|
(cfrs-border-color ((t (:background ,(face-foreground 'font-lock-comment-face nil t)))))
|
|
:bind (([f9] . treemacs)
|
|
([f8] . treemacs-display-current-project-exclusively)
|
|
([f7] . treemacs-add-and-display-current-project)
|
|
("C-x t 1" . treemacs-delete-other-windows)
|
|
("C-x t b" . treemacs-bookmark)
|
|
("C-x t C-f" . treemacs-find-file)
|
|
("C-x t C-t" . treemacs-find-tag)
|
|
:map treemacs-mode-map
|
|
([mouse-1] . treemacs-single-click-expand-action))
|
|
:config
|
|
(setq treemacs-collapse-dirs (if treemacs-python-executable 3 0)
|
|
treemacs-missing-project-action 'remove
|
|
treemacs-sorting 'alphabetic-asc
|
|
treemacs-follow-after-init t
|
|
treemacs-width 30)
|
|
:config
|
|
(treemacs-follow-mode t)
|
|
(treemacs-filewatch-mode t)
|
|
(pcase (cons (not (null (executable-find "git")))
|
|
(not (null (executable-find "python3"))))
|
|
(`(t . t)
|
|
(treemacs-git-mode 'deferred))
|
|
(`(t . _)
|
|
(treemacs-git-mode 'simple))))
|
|
|
|
(use-package treemacs-projectile
|
|
:defer t
|
|
:straight t
|
|
:after projectile
|
|
:bind (:map projectile-command-map
|
|
("h" . treemacs-projectile)))
|
|
|
|
(use-package treemacs-magit
|
|
:defer t
|
|
:straight t
|
|
:after magit
|
|
:commands treemacs-magit--schedule-update
|
|
:hook ((magit-post-commit
|
|
git-commit-post-finish
|
|
magit-post-stage
|
|
magit-post-unstage)
|
|
. treemacs-magit--schedule-update))
|
|
|
|
(use-package treemacs-persp
|
|
:defer t
|
|
:straight t
|
|
:after persp-mode
|
|
:demand t
|
|
:functions treemacs-set-scope-type
|
|
:config (treemacs-set-scope-type 'Perspectives))
|
|
|
|
;; `lsp-mode' and `treemacs' integration
|
|
(use-package lsp-treemacs
|
|
:defer t
|
|
:straight t
|
|
:after lsp-mode
|
|
:bind (:map lsp-mode-map
|
|
("C-<f8>" . lsp-treemacs-errors-list)
|
|
("M-<f8>" . lsp-treemacs-symbols)
|
|
("s-<f8>" . lsp-treemacs-java-deps-list))
|
|
:init (lsp-treemacs-sync-mode 1)
|
|
:config
|
|
(with-eval-after-load 'ace-window
|
|
(when (boundp 'aw-ignored-buffers)
|
|
(push 'lsp-treemacs-symbols-mode aw-ignored-buffers)
|
|
(push 'lsp-treemacs-java-deps-mode aw-ignored-buffers))))
|
|
|
|
(provide 'base-treemacs)
|
|
;;; base-treemacs.el ends here
|