summaryrefslogtreecommitdiff
path: root/dot_config/emacs/init.el
blob: a7ad5d36c47ca21496a89b1d779b49b7a03ab9cd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
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)))