blob: 736f0051df929b67fcd8662da2b1174e3503b497 (
plain) (
blame)
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
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
|
;;; init-ui.el --- UI Configuration File -*- lexical-binding: t -*-
;;; Commentary:
;; Some parts copied from prelude-ui.el and prelude-editor.el
;; {menu,tool,scoll}-bar-mode disabled in early-init.el, rather than here
;;; Code:
(use-package emacs
:config
(toggle-frame-maximized)
(add-to-list 'default-frame-alist '(fullscreen . maximized))
(set-face-attribute 'default nil :font "iosevka comfy")
;; https://github.com/rougier/elegant-emacs/blob/master/sanity.el
(setq inhibit-startup-screen t
inhibit-startup-echo-area-message t
inhibit-startup-message t
initial-scratch-message nil)
(blink-cursor-mode -1)
(setq whitespace-line-column 120)
(setq show-trailing-whitespace t)
(setq-default indicate-empty-lines t)
(setq ring-bell-function 'ignore
visible-bell t)
;; TODO do we want these? (copied from prelude)
(setq scroll-margin 0
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))
"%b"))))
(when (eq system-type 'darwin)
(setq mac-option-modifier 'meta)
(setq mac-right-option-modifier 'none)
(setq mac-command-modifier 'super)))
(use-package modus-themes
:init
(setq modus-themes-syntax
(if (member (format-time-string "%a") '("Mon" "Fri"))
'(alt-syntax green-strings yellow-comments)
'(green-strings-yellow-comments))
modus-themes-paren-match '(bold intense underline)
modus-themes-region '(accented)
modus-themes-hl-line '(underline)
modus-themes-lang-checkers '(text-also background))
(load-theme 'modus-vivendi t))
(use-package whitespace
:ensure nil
:diminish
:custom
(whitespace-line-column 120)
(whitespace-style '(face tabs empty trailing lines-tail))
:hook
(text-mode . (lambda () (whitespace-mode +1)))
(prog-mode . (lambda () (whitespace-mode +1)))
(cider-repl-mode . (lambda () (whitespace-mode -1)))
(ielm-mode . (lambda () (whitespace-mode -1)))
(vterm-mode . (lambda () (whitespace-mode -1)))
(eshell-mode . (lambda () (whitespace-mode -1))))
(use-package hi-lock
:diminish
:config
(when (eq system-type 'darwin)
(defun my/toggle-highlight-symbol-at-point ()
(interactive)
(if hi-lock-interactive-patterns
(unhighlight-regexp (car (car hi-lock-interactive-patterns)))
(highlight-symbol-at-point)))
(global-set-key (kbd "s-.") 'my/toggle-highlight-symbol-at-point)))
(use-package volatile-highlights
:diminish
:config
(volatile-highlights-mode t))
(use-package idle-highlight-mode
:hook (prog-mode . idle-highlight-mode))
(use-package paren
:config
(show-paren-mode +1))
(use-package which-key
:diminish
:config (which-key-mode +1))
(use-package rainbow-delimiters
:config
(rainbow-delimiters-mode +1))
(use-package rainbow-mode
:diminish)
(use-package smartrep)
(use-package pulsar
:custom
(pulsar-pulse-on-window-change t)
(pulsar-pulse t)
(pulsar-face 'pulsar-green)
(pulsar-highlight-face 'pulsar-yellow)
:config
(pulsar-global-mode 1))
(use-package lin
:config
(lin-global-mode 1))
(provide 'init-ui)
;;; init-ui.el ends here
|