mirror of
https://github.com/Swarsel/.dotfiles.git
synced 2025-12-06 09:07:21 +01:00
feat: improve emacs gc and performance
This commit is contained in:
parent
8782cd7491
commit
202b723e1f
3 changed files with 116 additions and 59 deletions
|
|
@ -9841,8 +9841,11 @@ Also packed into the hook function is the line =(fset 'epg-wait-for-status 'igno
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(progn
|
(progn
|
||||||
;; (setq gc-cons-threshold (* 1000 1000 8)
|
;; (setq gc-cons-threshold (* 1000 1000 8)
|
||||||
(setq gc-cons-threshold #x40000000
|
;; (setq gc-cons-threshold #x40000000
|
||||||
|
(setq gc-cons-threshold (* 32 1024 1024)
|
||||||
gc-cons-percentage 0.1
|
gc-cons-percentage 0.1
|
||||||
|
jit-lock-defer-time 0.05
|
||||||
|
read-process-output-max (* 1024 1024)
|
||||||
file-name-handler-alist swarsel-file-name-handler-alist
|
file-name-handler-alist swarsel-file-name-handler-alist
|
||||||
vc-handled-backends swarsel-vc-handled-backends)
|
vc-handled-backends swarsel-vc-handled-backends)
|
||||||
(fset 'epg-wait-for-status 'ignore)
|
(fset 'epg-wait-for-status 'ignore)
|
||||||
|
|
@ -10451,6 +10454,23 @@ This formats the org code block at =point= in accordance to the =nixpkgs-fmt= fo
|
||||||
(call-interactively 'nixpkgs-fmt-region)))))
|
(call-interactively 'nixpkgs-fmt-region)))))
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
|
**** Disable garbace collection while minibuffer is active
|
||||||
|
|
||||||
|
|
||||||
|
#+begin_src emacs-lisp
|
||||||
|
|
||||||
|
(defun swarsel/minibuffer-setup-hook ()
|
||||||
|
(setq gc-cons-threshold most-positive-fixnum))
|
||||||
|
|
||||||
|
(defun swarsel/minibuffer-exit-hook ()
|
||||||
|
(setq gc-cons-threshold (* 32 1024 1024)))
|
||||||
|
|
||||||
|
(add-hook 'minibuffer-setup-hook #'swarsel/minibuffer-setup-hook)
|
||||||
|
(add-hook 'minibuffer-exit-hook #'swarsel/minibuffer-exit-hook)
|
||||||
|
|
||||||
|
|
||||||
|
#+end_src
|
||||||
|
|
||||||
*** Custom Keybindings
|
*** Custom Keybindings
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
:CUSTOM_ID: h:2b827c27-0de7-45ed-9d9e-6c511e2c6bb5
|
:CUSTOM_ID: h:2b827c27-0de7-45ed-9d9e-6c511e2c6bb5
|
||||||
|
|
@ -10568,8 +10588,14 @@ I also define some keybinds to some combinations directly. Those are used mostly
|
||||||
"<DUMMY-m>" 'swarsel/last-buffer
|
"<DUMMY-m>" 'swarsel/last-buffer
|
||||||
"M-\\" 'indent-region
|
"M-\\" 'indent-region
|
||||||
"C-<f9>" 'my-python-shell-run
|
"C-<f9>" 'my-python-shell-run
|
||||||
|
"<Paste>" 'yank
|
||||||
|
"<Cut>" 'kill-region
|
||||||
|
"<Copy>" 'kill-ring-save
|
||||||
|
"<undo>" 'evil-undo
|
||||||
|
"<redo>" 'evil-redo
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
#+end_src
|
#+end_src
|
||||||
*** Directory setup / File structure
|
*** Directory setup / File structure
|
||||||
:PROPERTIES:
|
:PROPERTIES:
|
||||||
|
|
@ -10709,9 +10735,16 @@ Here I set up some things that are too minor to put under other categories.
|
||||||
(setq require-final-newline t)
|
(setq require-final-newline t)
|
||||||
(winner-mode 1)
|
(winner-mode 1)
|
||||||
(setq load-prefer-newer t)
|
(setq load-prefer-newer t)
|
||||||
(setq-default bidi-paragraph-direction 'left-to-right)
|
(setq-default bidi-paragraph-direction 'left-to-right
|
||||||
(setq bidi-inhibit-bpa t)
|
bidi-display-reordering 'left-to-right
|
||||||
|
bidi-inhibit-bpa t)
|
||||||
(global-so-long-mode)
|
(global-so-long-mode)
|
||||||
|
(setq process-adaptive-read-buffering nil) ;; not sure if this is a good idea
|
||||||
|
(setq fast-but-imprecise-scrolling t
|
||||||
|
redisplay-skip-fontification-on-input t
|
||||||
|
inhibit-compacting-font-caches t)
|
||||||
|
(setq idle-update-delay 1.0
|
||||||
|
which-func-update-delay 1.0)
|
||||||
(setq undo-limit 80000000
|
(setq undo-limit 80000000
|
||||||
evil-want-fine-undo t
|
evil-want-fine-undo t
|
||||||
auto-save-default t
|
auto-save-default t
|
||||||
|
|
|
||||||
|
|
@ -10,8 +10,11 @@
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(progn
|
(progn
|
||||||
;; (setq gc-cons-threshold (* 1000 1000 8)
|
;; (setq gc-cons-threshold (* 1000 1000 8)
|
||||||
(setq gc-cons-threshold #x40000000
|
;; (setq gc-cons-threshold #x40000000
|
||||||
|
(setq gc-cons-threshold (* 32 1024 1024)
|
||||||
gc-cons-percentage 0.1
|
gc-cons-percentage 0.1
|
||||||
|
jit-lock-defer-time 0.05
|
||||||
|
read-process-output-max (* 1024 1024)
|
||||||
file-name-handler-alist swarsel-file-name-handler-alist
|
file-name-handler-alist swarsel-file-name-handler-alist
|
||||||
vc-handled-backends swarsel-vc-handled-backends)
|
vc-handled-backends swarsel-vc-handled-backends)
|
||||||
(fset 'epg-wait-for-status 'ignore)
|
(fset 'epg-wait-for-status 'ignore)
|
||||||
|
|
|
||||||
|
|
@ -292,6 +292,15 @@ create a new one."
|
||||||
(org-babel-mark-block)
|
(org-babel-mark-block)
|
||||||
(call-interactively 'nixpkgs-fmt-region)))))
|
(call-interactively 'nixpkgs-fmt-region)))))
|
||||||
|
|
||||||
|
(defun swarsel/minibuffer-setup-hook ()
|
||||||
|
(setq gc-cons-threshold most-positive-fixnum))
|
||||||
|
|
||||||
|
(defun swarsel/minibuffer-exit-hook ()
|
||||||
|
(setq gc-cons-threshold (* 32 1024 1024)))
|
||||||
|
|
||||||
|
(add-hook 'minibuffer-setup-hook #'swarsel/minibuffer-setup-hook)
|
||||||
|
(add-hook 'minibuffer-exit-hook #'swarsel/minibuffer-exit-hook)
|
||||||
|
|
||||||
;; Make ESC quit prompts
|
;; Make ESC quit prompts
|
||||||
(global-set-key (kbd "<escape>") 'keyboard-escape-quit)
|
(global-set-key (kbd "<escape>") 'keyboard-escape-quit)
|
||||||
|
|
||||||
|
|
@ -398,6 +407,11 @@ create a new one."
|
||||||
"<DUMMY-m>" 'swarsel/last-buffer
|
"<DUMMY-m>" 'swarsel/last-buffer
|
||||||
"M-\\" 'indent-region
|
"M-\\" 'indent-region
|
||||||
"C-<f9>" 'my-python-shell-run
|
"C-<f9>" 'my-python-shell-run
|
||||||
|
"<Paste>" 'yank
|
||||||
|
"<Cut>" 'kill-region
|
||||||
|
"<Copy>" 'kill-ring-save
|
||||||
|
"<undo>" 'evil-undo
|
||||||
|
"<redo>" 'evil-redo
|
||||||
)
|
)
|
||||||
|
|
||||||
;; set Nextcloud directory for journals etc.
|
;; set Nextcloud directory for journals etc.
|
||||||
|
|
@ -481,9 +495,16 @@ create a new one."
|
||||||
(setq require-final-newline t)
|
(setq require-final-newline t)
|
||||||
(winner-mode 1)
|
(winner-mode 1)
|
||||||
(setq load-prefer-newer t)
|
(setq load-prefer-newer t)
|
||||||
(setq-default bidi-paragraph-direction 'left-to-right)
|
(setq-default bidi-paragraph-direction 'left-to-right
|
||||||
(setq bidi-inhibit-bpa t)
|
bidi-display-reordering 'left-to-right
|
||||||
|
bidi-inhibit-bpa t)
|
||||||
(global-so-long-mode)
|
(global-so-long-mode)
|
||||||
|
(setq process-adaptive-read-buffering nil) ;; not sure if this is a good idea
|
||||||
|
(setq fast-but-imprecise-scrolling t
|
||||||
|
redisplay-skip-fontification-on-input t
|
||||||
|
inhibit-compacting-font-caches t)
|
||||||
|
(setq idle-update-delay 1.0
|
||||||
|
which-func-update-delay 1.0)
|
||||||
(setq undo-limit 80000000
|
(setq undo-limit 80000000
|
||||||
evil-want-fine-undo t
|
evil-want-fine-undo t
|
||||||
auto-save-default t
|
auto-save-default t
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue