aboutsummaryrefslogtreecommitdiff
path: root/Emacs
diff options
context:
space:
mode:
authorAryadev Chavali <aryadev@aryadevchavali.com>2024-06-27 02:27:08 +0100
committerAryadev Chavali <aryadev@aryadevchavali.com>2024-06-27 15:09:44 +0100
commit058b4fa959423930a78b858433be89a96156c580 (patch)
treea6a15e0c2c42a729db5e3b3a2a319a54f9872349 /Emacs
parentb6aa018bd752be5d639568a9398abf8b2bdcc8fe (diff)
downloaddotfiles-058b4fa959423930a78b858433be89a96156c580.tar.gz
dotfiles-058b4fa959423930a78b858433be89a96156c580.tar.bz2
dotfiles-058b4fa959423930a78b858433be89a96156c580.zip
(Emacs/*)~Shamelessly stole some optimisations from doom
Cut my boot time by 0.2s?!
Diffstat (limited to 'Emacs')
-rw-r--r--Emacs/.config/emacs/config.org10
-rw-r--r--Emacs/.config/emacs/early-init.el55
-rw-r--r--Emacs/.config/emacs/init.el9
3 files changed, 47 insertions, 27 deletions
diff --git a/Emacs/.config/emacs/config.org b/Emacs/.config/emacs/config.org
index e3eff68..09e7762 100644
--- a/Emacs/.config/emacs/config.org
+++ b/Emacs/.config/emacs/config.org
@@ -252,11 +252,11 @@ use fundamental mode and call it a day.
(use-package emacs
:defer t
:init
- (setq
- inhibit-startup-screen t
- initial-major-mode 'fundamental-mode
- initial-scratch-message ""
- ring-bell-function 'ignore)
+ (setq inhibit-startup-screen t
+ inhibit-startup-echo-area-message user-login-name
+ initial-major-mode 'fundamental-mode
+ initial-scratch-message ""
+ ring-bell-function 'ignore)
:config
(add-hook
'emacs-startup-hook
diff --git a/Emacs/.config/emacs/early-init.el b/Emacs/.config/emacs/early-init.el
index af45062..dc839fe 100644
--- a/Emacs/.config/emacs/early-init.el
+++ b/Emacs/.config/emacs/early-init.el
@@ -18,28 +18,49 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-;; Sets up some variables and graphical configuration to make Emacs
-;; less janky looking while loading.
+;; Sets up some variables and graphical configuration to make Emacs less janky
+;; looking while loading. Shamelessly copies some optimisations from Doom
+;; Emacs.
;;; Code:
-(setq gc-cons-threshold most-positive-fixnum
- package-enable-at-startup nil
- frame-inhibit-implied-resize nil
- frame-resize-pixelwise t
- native-comp-async-jobs-number 4
- native-comp-eln-load-path (list (concat user-emacs-directory ".local/native-compile"))
- native-comp-always-compile nil
- native-comp-async-report-warnings-errors 'silent)
+(setq-default auto-mode-case-fold nil
+ bidi-display-reordering 'left-to-right
+ bidi-inhibit-bpa t
+ bidi-paragraph-direction 'left-to-right
+ cursor-in-non-selected-windows nil
+ fast-but-imprecise-scrolling t
+ frame-inhibit-implied-resize t
+ frame-resize-pixelwise t
+ gc-cons-percentage 1
+ gc-cons-threshold most-positive-fixnum
+ highlight-nonselected-windows nil
+ idle-update-delay 1.0
+ load-prefer-newer noninteractive
+ load-prefer-newer noninteractive
+ native-comp-always-compile nil
+ native-comp-async-jobs-number 4
+ native-comp-async-report-warnings-errors 'silent
+ native-comp-eln-load-path (list (concat user-emacs-directory ".local/native-compile"))
+ package-enable-at-startup nil
+ redisplay-skip-fontification-on-input t)
;; don't use x resources lol
(advice-add #'x-apply-session-resources :override #'ignore)
;; turn off the menu bar, tool bar, scroll bar, fringes
;; also set the transparency (active inactive)
(setq-default
- default-frame-alist '((menu-bar-lines . 0)
- (tool-bar-lines . 0)
- (scroll-bar-lines . 0)
- (left-fringe . 0)
- (right-fringe . 0)
- (alpha . (90 80))))
-(scroll-bar-mode -1)
+ default-frame-alist '((menu-bar-lines . 0)
+ (tool-bar-lines . 0)
+ (scroll-bar-lines . 0)
+ (vertical-scroll-bars . 0)
+ (left-fringe . 0)
+ (right-fringe . 0)
+ (alpha . (90 80)))
+ menu-bar-mode nil
+ tool-bar-mode nil
+ scroll-bar-mode nil)
+;; Disable making the tool bar
+(advice-add #'tool-bar-setup :override #'ignore)
+;; Even though we disable the startup screen in the config, we need to do this
+;; to ensure it actually doesn't display it
+(advice-add #'display-startup-screen :override #'ignore)
diff --git a/Emacs/.config/emacs/init.el b/Emacs/.config/emacs/init.el
index 828402f..98cba9f 100644
--- a/Emacs/.config/emacs/init.el
+++ b/Emacs/.config/emacs/init.el
@@ -18,13 +18,11 @@
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
-;; Sets up straight, use package and the literate system.
+;; Sets up straight, use-package and no-littering then loads the literate
+;; system to get my actual configuration.
;;; Code:
-;; Before doing anything else, make gc-cons-threshold ridiculously
-;; high. This makes it so we have as few pauses during init as
-;; possible.
-;; Straight
+;;; Setup straight
(setq straight-disable-native-compile nil
straight-use-package-by-default nil
straight-check-for-modifications 'live)
@@ -82,6 +80,7 @@
(require 'eglot))
(setq gc-cons-threshold (* 100 1024 1024) ; ~100MiB
+ gc-cons-percentage 0.1 ; 10% of heap allocation => collect garbage
read-process-output-max (* 5 1024 1024) ; ~5MiB
;; FIXME: Problem with memory-report after running Emacs for a
;; bit, causes a Lisp nesting error, so I just set it up really