diff options
author | David Morgan <djm_uk@protonmail.com> | 2022-10-14 12:29:07 +0100 |
---|---|---|
committer | David Morgan <djm_uk@protonmail.com> | 2022-10-14 12:29:07 +0100 |
commit | fc3ad645792acc8077f4190331725c28f63b9b6b (patch) | |
tree | 15a03dee0b8f96da7592439a32f3c340457c3a64 /.emacs.d/lisp/init-ui.el | |
parent | 05edd37e19bdaeaab6baeccbbb1b1db3e1ab80b0 (diff) | |
download | dotfiles-fc3ad645792acc8077f4190331725c28f63b9b6b.tar.gz |
Improve vanity metric: startup time
Diffstat (limited to '.emacs.d/lisp/init-ui.el')
-rw-r--r-- | .emacs.d/lisp/init-ui.el | 132 |
1 files changed, 67 insertions, 65 deletions
diff --git a/.emacs.d/lisp/init-ui.el b/.emacs.d/lisp/init-ui.el index 15ae247..c92e3cb 100644 --- a/.emacs.d/lisp/init-ui.el +++ b/.emacs.d/lisp/init-ui.el @@ -5,13 +5,19 @@ ;;; Code: (use-package emacs - :config - (cond - ((find-font (font-spec :name "iosevka comfy")) - (set-face-attribute 'default nil :font "iosevka comfy")) - ((find-font (font-spec :name "iosevka")) - (set-face-attribute 'default nil :font "iosevka"))) + :hook (emacs-startup . (lambda () + (cond + ((find-font (font-spec :name "iosevka comfy")) + (set-face-attribute 'default nil :font "iosevka comfy")) + ((find-font (font-spec :name "iosevka")) + (set-face-attribute 'default nil :font "iosevka"))) + + (global-display-line-numbers-mode) + (global-hl-line-mode +1) + + (global-set-key (kbd "C-x C-S-k") 'kill-this-buffer))) + :config ;; https://github.com/rougier/elegant-emacs/blob/master/sanity.el (setq inhibit-startup-screen t inhibit-startup-echo-area-message t @@ -32,13 +38,8 @@ scroll-conservatively 100000 scroll-preserve-screen-position 1) - (global-display-line-numbers-mode) - (global-hl-line-mode +1) - (fset 'yes-or-no-p 'y-or-n-p) - (global-set-key (kbd "C-x C-S-k") 'kill-this-buffer) - (setq frame-title-format '("Emacs: " (:eval (if (buffer-file-name) (abbreviate-file-name (buffer-file-name)) @@ -50,46 +51,58 @@ (setq mac-command-modifier 'super))) (use-package modus-themes - :init - (setq modus-themes-syntax '(green-strings yellow-comments) - modus-themes-paren-match '(bold intense underline) - modus-themes-bold-constructs t - modus-themes-italic-constructs t - modus-themes-lang-checkers '(text-also)) - (load-theme 'modus-vivendi t) - - ;; Use less magenta - (custom-set-faces - `(font-lock-builtin-face ((t (:foreground "LawnGreen")))) - `(font-lock-keyword-face ((t (:foreground "gold")))) - `(font-lock-function-name-face ((t (:foreground "cyan")))) - `(font-lock-variable-name-face ((t (:foreground "gold3")))) - `(font-lock-constant-face ((t (:foreground "DeepSkyBlue2")))) - `(font-lock-type-face ((t (:foreground "PaleGreen2")))) - `(font-lock-string-face ((t (:foreground "SpringGreen3")))) - `(font-lock-comment-face ((t (:foreground "burlywood")))) - `(font-lock-doc-face ((t :foreground "LightCyan3"))) - `(region ((t (:background "firebrick")))) - `(secondary-selection ((t (:background "firebrick4")))) - `(idle-highlight ((t (:background "grey50" :foreground "white")))) - `(isearch ((t (:background "coral2")))) - `(lazy-highlight ((t (:background "LightSteelBlue2" :foreground "black")))) - `(match ((t (:background "gray35" :foreground "grey85")))) - `(lsp-face-highlight-textual ((t (:background "DimGrey")))) - `(whitespace-empty ((t (:background "gray10")))) - `(hl-line ((t :background "gray15" :underline "gray35" :inherit nil))) - `(simple-modeline-status-modified ((t :foreground "DeepSkyBlue"))) - `(consult-async-split ((t :foreground "LightCoral"))) - `(orderless-match-face-0 ((t :foreground "tomato"))) - `(orderless-match-face-1 ((t :foreground "SpringGreen2"))) - `(orderless-match-face-2 ((t :foreground "gold"))) - `(orderless-match-face-3 ((t :foreground "cyan"))) - `(flycheck-fringe-warning ((t :foreground "white" :background "gold3"))) - `(flycheck-fringe-error ((t :foreground "white" :background "red2"))) - `(flycheck-fringe-info ((t :foreground "white" :background "RoyalBlue3"))) - `(alt-font-lock-keyword-face ((t :foreground "LightSkyBlue" :weight bold))) - `(alt-hl-line-face ((t :underline "gray50" :weight bold)))) :config + (defun my/load-theme () + "Load modus vivendi theme, with my customisations." + (setq modus-themes-syntax '(green-strings yellow-comments) + modus-themes-paren-match '(bold intense underline) + modus-themes-bold-constructs t + modus-themes-italic-constructs t + modus-themes-lang-checkers '(text-also)) + (load-theme 'modus-vivendi t) + + (custom-set-faces + `(font-lock-builtin-face ((t (:foreground "LawnGreen")))) + `(font-lock-keyword-face ((t (:foreground "gold")))) + `(font-lock-function-name-face ((t (:foreground "cyan")))) + `(font-lock-variable-name-face ((t (:foreground "gold3")))) + `(font-lock-constant-face ((t (:foreground "DeepSkyBlue2")))) + `(font-lock-type-face ((t (:foreground "PaleGreen2")))) + `(font-lock-string-face ((t (:foreground "SpringGreen3")))) + `(font-lock-comment-face ((t (:foreground "burlywood")))) + `(font-lock-doc-face ((t :foreground "LightCyan3"))) + `(region ((t (:background "firebrick")))) + `(secondary-selection ((t (:background "firebrick4")))) + `(idle-highlight ((t (:background "grey50" :foreground "white")))) + `(isearch ((t (:background "coral2")))) + `(lazy-highlight ((t (:background "LightSteelBlue2" :foreground "black")))) + `(match ((t (:background "gray35" :foreground "grey85")))) + `(lsp-face-highlight-textual ((t (:background "DimGrey")))) + `(whitespace-empty ((t (:background "gray10")))) + `(hl-line ((t :background "gray15" :underline "gray35" :inherit nil))) + `(simple-modeline-status-modified ((t :foreground "DeepSkyBlue"))) + `(consult-async-split ((t :foreground "LightCoral"))) + `(orderless-match-face-0 ((t :foreground "tomato"))) + `(orderless-match-face-1 ((t :foreground "SpringGreen2"))) + `(orderless-match-face-2 ((t :foreground "gold"))) + `(orderless-match-face-3 ((t :foreground "cyan"))) + `(flycheck-fringe-warning ((t :foreground "white" :background "gold3"))) + `(flycheck-fringe-error ((t :foreground "white" :background "red2"))) + `(flycheck-fringe-info ((t :foreground "white" :background "RoyalBlue3"))) + `(alt-font-lock-keyword-face ((t :foreground "LightSkyBlue" :weight bold))) + `(alt-hl-line-face ((t :underline "gray50" :weight bold)))) + + (setq hl-todo-keyword-faces + '(("TODO" . "red3") + ("FIXME" . "red3") + ("DEBUG" . "#A020F0") + ("GOTCHA" . "#FF4500") + ("HACK" . "#FF4500") + ("STUB" . "#1E90FF") + ("FAIL" . "red3") + ("NOTE" . "DarkOrange2") + ("DEPRECATED" . "yellow")))) + (defun use-alt-font-lock-keyword-face () "Remap font-lock-keyword-face to the alternate one, in the current buffer" (face-remap-add-relative 'font-lock-keyword-face 'alt-font-lock-keyword-face)) @@ -97,12 +110,11 @@ "Remap hl-line face to the alternate one, in the current buffer" (face-remap-add-relative 'hl-line 'alt-hl-line-face)) :hook + (after-init . my/load-theme) (cider-inspector-mode . use-alt-font-lock-keyword-face) (magit-mode . use-alt-hl-line-face)) (use-package hl-todo - :defer 5 - :after modus-themes :bind (:map hl-todo-mode-map ("C-c c t p" . hl-todo-previous) @@ -110,19 +122,9 @@ ("C-c c t o" . hl-todo-occur) ("C-c c t r" . hl-todo-rgrep) ("C-c c t i" . hl-todo-insert)) - :custom - (hl-todo-keyword-faces - '(("TODO" . "red3") - ("FIXME" . "red3") - ("DEBUG" . "#A020F0") - ("GOTCHA" . "#FF4500") - ("HACK" . "#FF4500") - ("STUB" . "#1E90FF") - ("FAIL" . "red3") - ("NOTE" . "DarkOrange2") - ("DEPRECATED" . "yellow"))) - :config - (global-hl-todo-mode 1)) + ;; Use emacs-startup-hook so that it runs after my/load-theme is called in after-init-hook + ;; hl-todo-keyword-faces is customised in my/load-theme + :hook (emacs-startup . global-hl-todo-mode)) (use-package whitespace :diminish |