~init variables -> use-package declarations for +speed

This commit is contained in:
2020-08-23 17:10:40 +01:00
parent 11a3ef9cf9
commit 066afd2a4e

View File

@@ -23,37 +23,61 @@ including encryption.
Setup backup files at =user-emacs-directory/saves=, auto-revert mode Setup backup files at =user-emacs-directory/saves=, auto-revert mode
for everything and save my place in a file if possible for everything and save my place in a file if possible
#+begin_src emacs-lisp #+begin_src emacs-lisp
(setq backup-directory-alist `(("." . "~/.config/emacs/saves"))) (use-package files
(global-auto-revert-mode 1) :straight nil
:init
(setq backup-directory-alist `(("." . "~/.config/emacs/saves"))))
(use-package autorevert
:straight nil
:init
(setq global-auto-revert-non-file-buffers nil (setq global-auto-revert-non-file-buffers nil
auto-revert-verbose nil) auto-revert-verbose nil)
:config
(global-auto-revert-mode 1))
#+end_src #+end_src
** All yes or no questions to y or n ** All yes or no questions to y or n
Sets yes or no questions to single letter responses. Sets yes or no questions to single letter responses.
#+begin_src emacs-lisp #+begin_src emacs-lisp
(fset 'yes-or-no-p 'y-or-n-p) (use-package subr
:straight nil
:config
(fset 'yes-or-no-p 'y-or-n-p))
#+end_src #+end_src
** Hs Minor mode ** Hs Minor mode
Turn on hs minor mode for all prog-mode. Turn on hs minor mode for all prog-mode.
#+begin_src emacs-lisp #+begin_src emacs-lisp
(add-hook 'prog-mode-hook #'hs-minor-mode) (use-package hideshow
:straight nil
:hook (prog-mode-hook . hs-minor-mode))
#+end_src #+end_src
** Themes ** Themes
Load my custom "Grayscale" theme (look at [[file:Grayscale-theme.el][this file]]). Load my custom "Grayscale" theme (look at [[file:Grayscale-theme.el][this file]]).
#+begin_src emacs-lisp #+begin_src emacs-lisp
(load-theme 'Grayscale t) (use-package custom
:straight nil
:config
(load-theme 'Grayscale t))
#+end_src #+end_src
** Turn off startup buffer and turn off bells ** Font size
Set font size to 125 if no monitor is plugged in.
#+begin_src emacs-lisp #+begin_src emacs-lisp
(use-package faces
:straight nil
:config
(set-face-attribute 'default nil :height 115))
#+end_src
** Turn off startup buffer, setup scratch buffer
Turn off the startup buffer because I don't particularly care for it,
and write into the scratch buffer some nice information about Emacs.
#+begin_src emacs-lisp
(use-package startup
:straight nil
:init
(setq inhibit-startup-screen t (setq inhibit-startup-screen t
ring-bell-function 'ignore) ring-bell-function 'ignore
#+end_src initial-scratch-message (format ";; Emacs v%s\n;; Entered emacs in %s\n"
** Setup scratch buffer emacs-version (emacs-init-time))))
Write into the scratch buffer some nice information about Emacs.
#+begin_src emacs-lisp
(setq initial-scratch-message
(format ";; Emacs v%s\n;; Entered emacs in %s"
emacs-version (emacs-init-time)))
#+end_src #+end_src
* Emacs Mode-line * Emacs Mode-line
Firstly, declare a variable for the separator between each module Firstly, declare a variable for the separator between each module
@@ -140,23 +164,29 @@ The logic is pretty simple:
For some buffer with name =buf-name= with a creation function For some buffer with name =buf-name= with a creation function
=buf-create=, toggle it via this function. =buf-create=, toggle it via this function.
#+begin_src emacs-lisp #+begin_src emacs-lisp
(defun +dx/toggle-buffer (buf-name buf-create) (use-package window
:straight nil
:config
(defmacro +dx/create-toggle-function (func-name buf-name buf-create)
"Generate a function named func-name that toggles
the buffer with name buf-name and creation function buf-create."
`(defun ,func-name ()
(interactive) (interactive)
(let* ((buffer (or (get-buffer buf-name) (funcall buf-create))) (let* ((buffer (or (get-buffer ,buf-name) (funcall ,buf-create)))
(displayed (get-buffer-window buffer))) ; Get window when displayed, nil otherwise (displayed (get-buffer-window buffer))) ; Get window when displayed, nil otherwise
(cond (displayed ; already displayed thus delete (cond (displayed ; already displayed thus delete
(select-window displayed) (select-window displayed)
(delete-window)) (delete-window))
(t ; not displayed thus show and select (t ; not displayed thus show and select
(display-buffer buffer) (display-buffer buffer)
(select-window (get-buffer-window buffer)))))) (select-window (get-buffer-window buffer))))))))
#+end_src #+end_src
* General
Setup general, a good package for defining keys. In this case, I Setup general, a good package for defining keys. In this case, I
generate a new definer for the "LEADER" keys. Leader is bound to SPC generate a new definer for the "LEADER" keys. Leader is bound to SPC
and it's functionally equivalent the doom/spacemacs leader. and it's functionally equivalent the doom/spacemacs leader.
#+begin_src emacs-lisp #+begin_src emacs-lisp
(use-package general (use-package general
:demand t
:config :config
(general-def 'normal global-map "SPC" nil) (general-def 'normal global-map "SPC" nil)
(general-def 'normal global-map (general-def 'normal global-map