emacs: treemacs, remappings. hyprl: vfr
This commit is contained in:
parent
983a04745f
commit
597c43c740
4 changed files with 185 additions and 41 deletions
192
.emacs.d/init.el
192
.emacs.d/init.el
|
|
@ -67,8 +67,134 @@
|
|||
(use-package projectile-ripgrep
|
||||
:ensure t)
|
||||
|
||||
(use-package sudo-edit
|
||||
:ensure t)
|
||||
|
||||
(use-package treemacs
|
||||
:ensure t
|
||||
:defer t
|
||||
:init
|
||||
(with-eval-after-load 'winum
|
||||
(define-key winum-keymap (kbd "M-0") #'treemacs-select-window))
|
||||
:config
|
||||
(progn
|
||||
(setq treemacs-collapse-dirs (if treemacs-python-executable 3 0)
|
||||
treemacs-deferred-git-apply-delay 0.5
|
||||
treemacs-directory-name-transformer #'identity
|
||||
treemacs-display-in-side-window t
|
||||
treemacs-eldoc-display 'simple
|
||||
treemacs-file-event-delay 2000
|
||||
treemacs-file-extension-regex treemacs-last-period-regex-value
|
||||
treemacs-file-follow-delay 0.2
|
||||
treemacs-file-name-transformer #'identity
|
||||
treemacs-follow-after-init t
|
||||
treemacs-expand-after-init t
|
||||
treemacs-find-workspace-method 'find-for-file-or-pick-first
|
||||
treemacs-git-command-pipe ""
|
||||
treemacs-goto-tag-strategy 'refetch-index
|
||||
treemacs-header-scroll-indicators '(nil . "^^^^^^")
|
||||
treemacs-hide-dot-git-directory t
|
||||
treemacs-indentation 2
|
||||
treemacs-indentation-string " "
|
||||
treemacs-is-never-other-window nil
|
||||
treemacs-max-git-entries 5000
|
||||
treemacs-missing-project-action 'ask
|
||||
treemacs-move-files-by-mouse-dragging t
|
||||
treemacs-move-forward-on-expand nil
|
||||
treemacs-no-png-images nil
|
||||
treemacs-no-delete-other-windows t
|
||||
treemacs-project-follow-cleanup nil
|
||||
treemacs-persist-file (expand-file-name ".cache/treemacs-persist" user-emacs-directory)
|
||||
treemacs-position 'left
|
||||
treemacs-read-string-input 'from-child-frame
|
||||
treemacs-recenter-distance 0.1
|
||||
treemacs-recenter-after-file-follow nil
|
||||
treemacs-recenter-after-tag-follow nil
|
||||
treemacs-recenter-after-project-jump 'always
|
||||
treemacs-recenter-after-project-expand 'on-distance
|
||||
treemacs-litter-directories '("/node_modules" "/.venv" "/.cask")
|
||||
treemacs-project-follow-into-home nil
|
||||
treemacs-show-cursor nil
|
||||
treemacs-show-hidden-files t
|
||||
treemacs-silent-filewatch nil
|
||||
treemacs-silent-refresh nil
|
||||
treemacs-sorting 'alphabetic-asc
|
||||
treemacs-select-when-already-in-treemacs 'move-back
|
||||
treemacs-space-between-root-nodes t
|
||||
treemacs-tag-follow-cleanup t
|
||||
treemacs-tag-follow-delay 1.5
|
||||
treemacs-text-scale nil
|
||||
treemacs-user-mode-line-format nil
|
||||
treemacs-user-header-line-format nil
|
||||
treemacs-wide-toggle-width 70
|
||||
treemacs-width 35
|
||||
treemacs-width-increment 1
|
||||
treemacs-width-is-initially-locked t
|
||||
treemacs-workspace-switch-cleanup nil)
|
||||
|
||||
;; The default width and height of the icons is 22 pixels. If you are
|
||||
;; using a Hi-DPI display, uncomment this to double the icon size.
|
||||
;;(treemacs-resize-icons 44)
|
||||
|
||||
(treemacs-follow-mode t)
|
||||
(treemacs-filewatch-mode t)
|
||||
(treemacs-fringe-indicator-mode 'always)
|
||||
(when treemacs-python-executable
|
||||
(treemacs-git-commit-diff-mode t))
|
||||
|
||||
(pcase (cons (not (null (executable-find "git")))
|
||||
(not (null treemacs-python-executable)))
|
||||
(`(t . t)
|
||||
(treemacs-git-mode 'deferred))
|
||||
(`(t . _)
|
||||
(treemacs-git-mode 'simple)))
|
||||
|
||||
(treemacs-hide-gitignored-files-mode nil))
|
||||
:bind
|
||||
(:map global-map
|
||||
("M-0" . treemacs-select-window)
|
||||
("C-x t 1" . treemacs-delete-other-windows)
|
||||
("C-x t t" . treemacs)
|
||||
("C-x t d" . treemacs-select-directory)
|
||||
("C-x t B" . treemacs-bookmark)
|
||||
("C-x t C-t" . treemacs-find-file)
|
||||
("C-x t M-t" . treemacs-find-tag)))
|
||||
|
||||
;; (use-package treemacs-evil
|
||||
;; :after (treemacs evil)
|
||||
;; :ensure t)
|
||||
|
||||
(use-package treemacs-projectile
|
||||
:after (treemacs projectile)
|
||||
:ensure t)
|
||||
|
||||
(use-package treemacs-icons-dired
|
||||
:hook (dired-mode . treemacs-icons-dired-enable-once)
|
||||
:ensure t)
|
||||
|
||||
(use-package treemacs-magit
|
||||
:after (treemacs magit)
|
||||
:ensure t)
|
||||
|
||||
(use-package treemacs-persp ;;treemacs-perspective if you use perspective.el vs. persp-mode
|
||||
:after (treemacs persp-mode) ;;or perspective vs. persp-mode
|
||||
:ensure t
|
||||
:config (treemacs-set-scope-type 'Perspectives))
|
||||
|
||||
(use-package treemacs-tab-bar ;;treemacs-tab-bar if you use tab-bar-mode
|
||||
:after (treemacs)
|
||||
:ensure t
|
||||
:config (treemacs-set-scope-type 'Tabs))
|
||||
|
||||
(treemacs-start-on-boot)
|
||||
|
||||
;;; USER CONFIG ;;;
|
||||
|
||||
;;Remapping treemacs
|
||||
(define-key treemacs-mode-map (kbd "C-j") nil)
|
||||
(define-key treemacs-mode-map (kbd "C-k") nil)
|
||||
(define-key treemacs-mode-map (kbd "C-;") 'treemacs-RET-action)
|
||||
|
||||
;;Using helm as minibuffer autocompletion manager
|
||||
(setf projectile-completion-system 'helm)
|
||||
(setf projectile-indexing-method 'alien)
|
||||
|
|
@ -97,7 +223,21 @@
|
|||
(scroll-bar-mode -1)
|
||||
|
||||
;; Use better buffer list
|
||||
(global-set-key (kbd "C-x C-b") 'ibuffer)
|
||||
(global-set-key (kbd "C-x C-b") 'ibuffer)
|
||||
|
||||
;; Skip windows when switching
|
||||
(defvar ignore-windows-containing-buffers-matching-res '("\"hyprland.*" "Treemacs.*")
|
||||
"List of regular expressions specifying windows to skip (if window contains buffer that matches, skip)")
|
||||
|
||||
(defadvice other-window (before other-window-ignore-windows-containing activate)
|
||||
"skip over windows containing buffers which match regular expressions in 'ignore-windows-containing-buffers-matching-res"
|
||||
(if (and (= 1 (ad-get-arg 0)) (interactive-p))
|
||||
(let* ((win (next-window))
|
||||
(bname (buffer-name (window-buffer win))))
|
||||
(when (some 'identity (mapcar '(lambda (re)
|
||||
(string-match re bname))
|
||||
ignore-windows-containing-buffers-matching-res))
|
||||
(ad-set-arg 0 2)))))
|
||||
|
||||
;; Disable splash screen and startup message
|
||||
(setq inhibit-startup-message t)
|
||||
|
|
@ -117,6 +257,8 @@
|
|||
(global-set-key (kbd "C-f") 'forward-word)
|
||||
(global-set-key (kbd "C-b") 'backward-word)
|
||||
|
||||
(global-set-key (kbd "C-S-d") (lambda () (interactive) (delete-char -1)))
|
||||
|
||||
(global-set-key (kbd "C-x C-u") (lambda () (interactive) (other-window -1)))
|
||||
(global-set-key (kbd "C-x C-o") (lambda () (interactive) (other-window 1)))
|
||||
(global-set-key (kbd "C-x u") 'dired-jump)
|
||||
|
|
@ -223,30 +365,30 @@
|
|||
(copy-region-as-kill (car region) (cdr region)))))
|
||||
|
||||
;; Tabulation and Tree-sitter config
|
||||
(add-to-list 'auto-mode-alist '("\\.cpp\\'" . c++-ts-mode))
|
||||
(add-to-list 'auto-mode-alist '("\\.cpp\\'" . c++-mode))
|
||||
|
||||
(setq major-mode-remap-alist
|
||||
'(
|
||||
;; (c-mode . c-ts-mode)
|
||||
(bash-mode . bash-ts-mode)
|
||||
;; (cpp-mode . c++-ts-mode)
|
||||
(asm-mode . asm-ts-mode)
|
||||
(cmake-mode . cmake-ts-mode)
|
||||
(c-sharp-mode . c-sharp-mode)
|
||||
;; (css-mode . css-ts-mode)
|
||||
(bash-mode . bash-ts-mode)
|
||||
(dockerfile-mode . dockerfile-ts-mode)
|
||||
(elisp-mode . elisp-ts-mode)
|
||||
(elm-mode . elm-ts-mode)
|
||||
(gitcommit-mode . gitcommit-ts-mode)
|
||||
(gitignore-mode . gitignore-ts-mode)
|
||||
(git-rebase-mode . git-rebase-ts-mode)
|
||||
(json-mode . json-ts-mode)
|
||||
(latex-mode . latex-ts-mode)
|
||||
(lua-mode . lua-ts-mode)
|
||||
(make-mode . make-ts-mode)
|
||||
(sql-mode . sql-ts-mode)
|
||||
(csv-mode . csv-ts-mode)))
|
||||
;; (setq major-mode-remap-alist
|
||||
;; '(
|
||||
;; ;; (c-mode . c-ts-mode)
|
||||
;; (bash-mode . bash-ts-mode)
|
||||
;; ;; (cpp-mode . c++-ts-mode)
|
||||
;; (asm-mode . asm-ts-mode)
|
||||
;; (cmake-mode . cmake-ts-mode)
|
||||
;; (c-sharp-mode . c-sharp-mode)
|
||||
;; ;; (css-mode . css-ts-mode)
|
||||
;; (bash-mode . bash-ts-mode)
|
||||
;; (dockerfile-mode . dockerfile-ts-mode)
|
||||
;; (elisp-mode . elisp-ts-mode)
|
||||
;; (elm-mode . elm-ts-mode)
|
||||
;; (gitcommit-mode . gitcommit-ts-mode)
|
||||
;; (gitignore-mode . gitignore-ts-mode)
|
||||
;; (git-rebase-mode . git-rebase-ts-mode)
|
||||
;; (json-mode . json-ts-mode)
|
||||
;; (latex-mode . latex-ts-mode)
|
||||
;; (lua-mode . lua-ts-mode)
|
||||
;; (make-mode . make-ts-mode)
|
||||
;; (sql-mode . sql-ts-mode)
|
||||
;; (csv-mode . csv-ts-mode)))
|
||||
|
||||
;; (customize-set-variable 'treesit-font-lock-level 2)
|
||||
|
||||
|
|
@ -291,7 +433,7 @@
|
|||
;; Your init file should contain only one such instance.
|
||||
;; If there is more than one, they won't work right.
|
||||
'(package-selected-packages
|
||||
'(benchmark-init projectile-ripgrep ripgrep helm-projectile projectile ssh-agency tangotango-theme))
|
||||
'(treemacs-tab-bar treemacs-persp treemacs-magit treemacs-icons-dired treemacs-projectile treemacs-evil treemacs sudo-edit benchmark-init projectile-ripgrep ripgrep helm-projectile projectile ssh-agency tangotango-theme))
|
||||
'(ripgrep-arguments '("--follow")))
|
||||
(custom-set-faces
|
||||
;; custom-set-faces was added by Custom.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue