summaryrefslogtreecommitdiff
path: root/dot_config/emacs/init.el
diff options
context:
space:
mode:
Diffstat (limited to 'dot_config/emacs/init.el')
-rw-r--r--dot_config/emacs/init.el91
1 files changed, 91 insertions, 0 deletions
diff --git a/dot_config/emacs/init.el b/dot_config/emacs/init.el
new file mode 100644
index 0000000..a7ad5d3
--- /dev/null
+++ b/dot_config/emacs/init.el
@@ -0,0 +1,91 @@
+;;; Performance hacks
+(setq gc-cons-threshold #x40000000)
+(setq read-process-output-max (* 1024 1024 4))
+(setq native-comp-jit-compilation t)
+
+;;; MELPA setup
+(require 'package)
+(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
+(setq use-package-always-ensure t)
+(setq package-install-upgrade-built-in t)
+
+(add-to-list 'load-path "~/.config/emacs/lisp/")
+
+;;; External packages
+(require 'emacs-config)
+(require 'lsp-mode-config)
+(require 'elfeed-config)
+(require 'completion-config)
+(require 'doom-quit)
+(require 'org-mode-config)
+(require 'editing-config)
+(require 'gptel-config)
+(require 'irc-config)
+(require 'reading-config)
+(require 'git-config)
+(require 'pretty-config)
+(require 'email-config)
+(require 'embark-config)
+(require 'shell-config)
+(require 'avy-config)
+;; (require 'evil-config)
+;; (require 'meow-config)
+
+(use-package pass)
+
+(use-package docker
+ :ensure t
+ :bind ("C-c d" . docker))
+
+(use-package project-x
+ :ensure t
+ :after project
+ :config
+ (setq project-x-auto-save-delay 5)
+ (project-x-mode 1))
+
+(use-package popper
+ :ensure t
+ :bind (("C-`" . popper-toggle)
+ ("M-`" . popper-cycle)
+ ("C-M-`" . popper-toggle-type))
+ :init
+ (setq popper-reference-buffers
+ '(("^\\*Warnings\\*$" . hide)
+ ("^\\*Compile-Log\\*$" . hide)
+ "^\\*Backtrace\\*"
+ "^\\*Apropos"
+ "^Calc:"
+ "^\\*eldoc\\*"
+ "^\\*TeX errors\\*"
+ "^\\*ielm\\*"
+ "^\\*TeX Help\\*"
+ "\\*Shell Command Output\\*"
+ "\\*Async Shell Command\\*"
+ ("\\*Detached Shell Command\\*" . hide)
+ "\\*Completions\\*"
+ "^\\*Org QL View:notmuch-links\\*$"
+ ;; "\\*scratch.*\\*$"
+ "[Oo]utput\\*"
+ calendar-mode
+ Man-mode
+ fennel-repl-mode
+ grep-mode
+ occur-mode
+ compilation-mode
+ messages-buffer-mode
+ help-mode
+ compilation-mode))
+ (setq popper-group-function #'popper-group-by-directory)
+ (popper-mode +1)
+ (popper-echo-mode +1)) ; For echo area hints
+
+(use-package inhibit-mouse
+ :custom
+ (inhibit-mouse-adjust-mouse-highlight t)
+ (inhibit-mouse-adjust-show-help-function t)
+
+ :init
+ (if (daemonp)
+ (add-hook 'server-after-make-frame-hook #'inhibit-mouse-mode)
+ (inhibit-mouse-mode 1)))