A few optimizations to start emacs quicker
This commit is contained in:
parent
c00fb00276
commit
fa37091109
@ -115,10 +115,10 @@ Then bootstrap
|
|||||||
This is commented out since it adds ever so slightly to init time, but keep it around in case we
|
This is commented out since it adds ever so slightly to init time, but keep it around in case we
|
||||||
need to benchmark slow init times later.
|
need to benchmark slow init times later.
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp :tangle no
|
||||||
;; (straight-use-package 'benchmark-init)
|
(straight-use-package 'benchmark-init)
|
||||||
;; (require 'benchmark-init)
|
(require 'benchmark-init)
|
||||||
;; (add-hook 'after-init-hook 'benchmark-init/deactivate)
|
(add-hook 'after-init-hook 'benchmark-init/deactivate)
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Misc Stuff
|
** Misc Stuff
|
||||||
@ -530,29 +530,29 @@ Vertico Embark Marginalia Consult Orderless
|
|||||||
** Dirvish/Dired
|
** Dirvish/Dired
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(straight-use-package 'dirvish)
|
(straight-use-package 'dirvish)
|
||||||
(require 'dirvish)
|
(with-eval-after-load 'dirvish
|
||||||
(dirvish-override-dired-mode)
|
(dirvish-override-dired-mode)
|
||||||
(setq delete-by-moving-to-trash t)
|
(setq delete-by-moving-to-trash t)
|
||||||
(setq dired-dwim-target t)
|
(setq dired-dwim-target t)
|
||||||
(setq dirvish-reuse-session nil)
|
(setq dirvish-reuse-session nil)
|
||||||
|
|
||||||
(dirvish-define-preview exa (file)
|
(dirvish-define-preview exa (file)
|
||||||
"Use `exa' to generate directory preview."
|
"Use `exa' to generate directory preview."
|
||||||
:require ("exa") ; tell Dirvish to check if we have the executable
|
:require ("exa") ; tell Dirvish to check if we have the executable
|
||||||
(when (file-directory-p file) ; we only interest in directories here
|
(when (file-directory-p file) ; we only interest in directories here
|
||||||
`(shell . ("exa" "--icons" "--color=always" "--no-user" "-al" "--group-directories-first" ,file))))
|
`(shell . ("exa" "--icons" "--color=always" "--no-user" "-al" "--group-directories-first" ,file))))
|
||||||
(add-to-list 'dirvish-preview-dispatchers 'exa)
|
(add-to-list 'dirvish-preview-dispatchers 'exa)
|
||||||
|
|
||||||
(setq dired-listing-switches "-l --sort=version --almost-all --human-readable --time-style=long-iso --group-directories-first --no-group")
|
(setq dired-listing-switches "-l --sort=version --almost-all --human-readable --time-style=long-iso --group-directories-first --no-group")
|
||||||
(setq dirvish-preview-dispatchers (cl-substitute 'pdf-preface 'pdf dirvish-preview-dispatchers))
|
(setq dirvish-preview-dispatchers (cl-substitute 'pdf-preface 'pdf dirvish-preview-dispatchers))
|
||||||
(setq dirvish-attributes '(all-the-icons file-size collapse subtree-state))
|
(setq dirvish-attributes '(all-the-icons file-size collapse subtree-state))
|
||||||
|
|
||||||
(defun joe/dirvish-find-directory (dir)
|
(defun joe/dirvish-find-directory (dir)
|
||||||
(interactive "FDirvish Directory:")
|
(interactive "FDirvish Directory:")
|
||||||
(dirvish-dwim dir))
|
(dirvish-dwim dir))
|
||||||
|
|
||||||
|
|
||||||
(setq dirvish-quick-access-entries
|
(setq dirvish-quick-access-entries
|
||||||
'(("h" "~/" "Home")
|
'(("h" "~/" "Home")
|
||||||
("d" "~/Downloads/" "Downloads")
|
("d" "~/Downloads/" "Downloads")
|
||||||
("D" "~/Documents/" "Documents")
|
("D" "~/Documents/" "Documents")
|
||||||
@ -560,34 +560,34 @@ Vertico Embark Marginalia Consult Orderless
|
|||||||
("p" "~/Development/" "Dev")
|
("p" "~/Development/" "Dev")
|
||||||
("B" "~/pCloudDrive/" "pCloud")))
|
("B" "~/pCloudDrive/" "pCloud")))
|
||||||
|
|
||||||
|
(define-key dirvish-mode-map (kbd "C-c f") #'dirvish-fd)
|
||||||
|
(define-key dirvish-mode-map (kbd "a" ) #'dirvish-quick-access)
|
||||||
|
(define-key dirvish-mode-map (kbd "f" ) #'dirvish-file-info-menu)
|
||||||
|
(define-key dirvish-mode-map (kbd "y" ) #'dirvish-yank-menu)
|
||||||
|
(define-key dirvish-mode-map (kbd "N" ) #'dirvish-narrow)
|
||||||
|
(define-key dirvish-mode-map (kbd "^" ) #'dired-up-directory)
|
||||||
|
(define-key dirvish-mode-map (kbd "h" ) #'dirvish-history-jump)
|
||||||
|
(define-key dirvish-mode-map (kbd "s" ) #'dirvish-quicksort)
|
||||||
|
(define-key dirvish-mode-map (kbd "v" ) #'dirvish-vc-menu)
|
||||||
|
(define-key dirvish-mode-map (kbd "TAB" ) #'dirvish-subtree-toggle)
|
||||||
|
(define-key dirvish-mode-map (kbd "M-f" ) #'dirvish-history-go-forward)
|
||||||
|
(define-key dirvish-mode-map (kbd "M-b" ) #'dirvish-history-go-backward)
|
||||||
|
(define-key dirvish-mode-map (kbd "M-l" ) #'dirvish-ls-switches-menu)
|
||||||
|
(define-key dirvish-mode-map (kbd "M-m" ) #'dirvish-mark-menu)
|
||||||
|
(define-key dirvish-mode-map (kbd "M-t" ) #'dirvish-layout-toggle)
|
||||||
|
(define-key dirvish-mode-map (kbd "M-s" ) #'dirvish-setup-menu)
|
||||||
|
(define-key dirvish-mode-map (kbd "M-e" ) #'dirvish-emerge-menu)
|
||||||
|
(define-key dirvish-mode-map (kbd "M-j" ) #'dirvish-fd-jump))
|
||||||
|
|
||||||
(global-set-key (kbd "C-x d") #'dirvish-dwim)
|
(global-set-key (kbd "C-x d") #'dirvish-dwim)
|
||||||
(global-set-key (kbd "C-x C-d") #'joe/dirvish-find-directory)
|
(global-set-key (kbd "C-x C-d") #'joe/dirvish-find-directory)
|
||||||
|
|
||||||
(define-key dirvish-mode-map (kbd "C-c f") #'dirvish-fd)
|
|
||||||
(define-key dirvish-mode-map (kbd "a" ) #'dirvish-quick-access)
|
|
||||||
(define-key dirvish-mode-map (kbd "f" ) #'dirvish-file-info-menu)
|
|
||||||
(define-key dirvish-mode-map (kbd "y" ) #'dirvish-yank-menu)
|
|
||||||
(define-key dirvish-mode-map (kbd "N" ) #'dirvish-narrow)
|
|
||||||
(define-key dirvish-mode-map (kbd "^" ) #'dired-up-directory)
|
|
||||||
(define-key dirvish-mode-map (kbd "h" ) #'dirvish-history-jump)
|
|
||||||
(define-key dirvish-mode-map (kbd "s" ) #'dirvish-quicksort)
|
|
||||||
(define-key dirvish-mode-map (kbd "v" ) #'dirvish-vc-menu)
|
|
||||||
(define-key dirvish-mode-map (kbd "TAB" ) #'dirvish-subtree-toggle)
|
|
||||||
(define-key dirvish-mode-map (kbd "M-f" ) #'dirvish-history-go-forward)
|
|
||||||
(define-key dirvish-mode-map (kbd "M-b" ) #'dirvish-history-go-backward)
|
|
||||||
(define-key dirvish-mode-map (kbd "M-l" ) #'dirvish-ls-switches-menu)
|
|
||||||
(define-key dirvish-mode-map (kbd "M-m" ) #'dirvish-mark-menu)
|
|
||||||
(define-key dirvish-mode-map (kbd "M-t" ) #'dirvish-layout-toggle)
|
|
||||||
(define-key dirvish-mode-map (kbd "M-s" ) #'dirvish-setup-menu)
|
|
||||||
(define-key dirvish-mode-map (kbd "M-e" ) #'dirvish-emerge-menu)
|
|
||||||
(define-key dirvish-mode-map (kbd "M-j" ) #'dirvish-fd-jump)
|
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** Terminals/Shells
|
** Terminals/Shells
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(straight-use-package 'vterm)
|
(straight-use-package 'vterm)
|
||||||
(require 'vterm)
|
|
||||||
(setq vterm-shell "/bin/fish")
|
(setq vterm-shell "/bin/fish")
|
||||||
(setq vterm-timer-delay 0.01)
|
(setq vterm-timer-delay 0.01)
|
||||||
(setq vterm-buffer-name-string "VTerm - %s")
|
(setq vterm-buffer-name-string "VTerm - %s")
|
||||||
@ -609,9 +609,17 @@ Vertico Embark Marginalia Consult Orderless
|
|||||||
|
|
||||||
(global-set-key (kbd "C-c t") #'vterm)
|
(global-set-key (kbd "C-c t") #'vterm)
|
||||||
(global-set-key (kbd "C-c T") #'joe/vterm-here)
|
(global-set-key (kbd "C-c T") #'joe/vterm-here)
|
||||||
|
|
||||||
(add-hook 'vterm-mode-hook (lambda () (setq-local global-hl-line-mode nil)))
|
(add-hook 'vterm-mode-hook (lambda () (setq-local global-hl-line-mode nil)))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
We need this require so we can call `vterm--internal in the joe/vterm-here function, but that slows
|
||||||
|
down init time because vterm is loading TRAMP which is slow.
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
(run-with-idle-timer 2 nil (lambda () (require 'vterm)))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
** Undo Tree
|
** Undo Tree
|
||||||
#+begin_src emacs-lisp
|
#+begin_src emacs-lisp
|
||||||
(straight-use-package 'undo-tree)
|
(straight-use-package 'undo-tree)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user