From 60feab106513e407035df9d3c213a107d5145e1c Mon Sep 17 00:00:00 2001 From: David Florness Date: Sat, 5 May 2018 16:24:34 -0600 Subject: [PATCH] Setup treemacs and winum --- init.el | 8 +++++ lisp/setup-treemacs.el | 68 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 lisp/setup-treemacs.el diff --git a/init.el b/init.el index 4fe0921..9a5d238 100644 --- a/init.el +++ b/init.el @@ -18,6 +18,7 @@ (require 'setup-helm) (require 'setup-defaults) (require 'setup-lisp) +(require 'setup-treemacs) ;;; Winner mode: allows for undoing and redoing of windoow configurations ;;; C-c : undo @@ -196,6 +197,13 @@ :ensure t) +(use-package winum + :ensure t + :config + (progn + (winum-mode))) + + ;;; Install local user packages (dolist (d (file-expand-wildcards "~/.local/share/emacs/site-lisp/*")) (add-to-list 'load-path d t)) diff --git a/lisp/setup-treemacs.el b/lisp/setup-treemacs.el new file mode 100644 index 0000000..7f01f28 --- /dev/null +++ b/lisp/setup-treemacs.el @@ -0,0 +1,68 @@ +;;; setup-treemacs --- Setup treemacs & related packages + +;;; Commentary: + +;; This sets up treemacs and related packages + +;;; Code: + + +(use-package treemacs + :ensure t + :defer t + :init + (progn + (with-eval-after-load 'winum + (define-key winum-keymap (kbd "M-0") #'treemacs-select-window)) + (global-set-key (kbd "M-m") (make-sparse-keymap))) + :config + (progn + (setq treemacs-collapse-dirs (if (executable-find "python") 3 0) + treemacs-file-event-delay 5000 + treemacs-follow-after-init t + treemacs-follow-recenter-distance 0.1 + treemacs-goto-tag-strategy 'refetch-index + treemacs-indentation 2 + treemacs-indentation-string " " + treemacs-is-never-other-window nil + treemacs-no-png-images nil + treemacs-recenter-after-file-follow nil + treemacs-recenter-after-tag-follow nil + treemacs-show-hidden-files t + treemacs-silent-filewatch nil + treemacs-silent-refresh nil + treemacs-sorting 'alphabetic-desc + treemacs-tag-follow-cleanup t + treemacs-tag-follow-delay 1.5 + treemacs-width 35) + + (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 'extended)) + (`(t . _) + (treemacs-git-mode 'simple)))) + :bind + (:map global-map + ("M-0" . treemacs-select-window) + ("C-c 1" . treemacs-delete-other-windows) + ("M-m ft" . treemacs) + ("M-m fB" . treemacs-bookmark) + ("M-m f C-t" . treemacs-find-file) + ("M-m f M-t" . treemacs-find-tag))) + + +(use-package treemacs-evil + :after treemacs + :ensure t) + + +(use-package treemacs-projectile + :after treemacs + :ensure t) + + +(provide 'setup-treemacs) +;;; setup-treemacs.el ends here -- 2.38.4