aboutsummaryrefslogtreecommitdiff
path: root/shoshin-config.el
blob: f98284b041ac8743b653446c1926063c52dd61c7 (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
92
93
94
95
96
97
98
99
100
101
102
;;; shoshimacs.el --- Beginner's Mind Config  -*- lexical-binding:t -*-

;;; Package Management
(when (< emacs-major-version 28)
  (package-initialize)
  (add-to-list 'package-archives '("nongnu" . "https://elpa.nongnu.org/nongnu/"))
  (package-refresh-contents))

(when (and (functionp #'native-comp-available-p) (native-comp-available-p))
  (setq native-comp-always-compile t
	package-native-compile t))

;;; Major Keybinding
(package-install 'xah-fly-keys)
(require 'xah-fly-keys)
(xah-fly-keys-set-layout "qwerty")
(setq xah-fly-use-control-key nil
      xah-fly-use-meta-key nil)
(xah-fly-keys t)

;;; Completion
(setq completion-styles '(flex basic partial-completion emacs22)
      completion-cycle-threshold 3
      tab-always-indent 'complete)

(package-install 'consult)

(global-set-key (kbd "C-x b") #'consult-buffer)
(define-key xah-fly-leader-key-map (kbd "f") #'consult-buffer)
(define-key xah-fly-command-map (kbd "n") #'consult-line)

(package-install 'corfu)
(setq corfu-auto t
      corfu-cycle t
      corfu-quit-no-match t)
(global-corfu-mode t)

(package-install 'corfu-terminal)
(unless (display-graphic-p)
    (corfu-terminal-mode +1))

(package-install 'embark)

(package-install 'marginalia)
(marginalia-mode)

(package-install 'vertico)
(setq minibuffer-prompt-properties
      '(read-only t cursor-intangible t face minibuffer-prompt))
(add-hook 'minibuffer-setup-hook #'cursor-intangible-mode)
(setq read-extended-command-predicate
      #'command-completion-default-include-p)
(setq enable-recursive-minibuffers t)
(vertico-mode)

(require 'vertico-directory)
(define-key (kbd "RET") #'vertico-directory-enter)
(define-key (kbd "DEL") #'vertico-directory-delete-char)
(define-key (kbd "M-DEL") #'vertico-directory-delete-word)
(define-key (kbd "M-j") #'vertico-quick-insert)

(package-install 'which-key)
(which-key-mode)

;;; Editing
(electric-pair-mode)

(package-install 'markdown-mode)

;;; Programming
(package-install 'json-mode)

(package-install 'devdocs)

;;; Projects


;;; External Services
(package-install 'plz)

(package-install 'srht)
(setq srht-username "shoshin")

;;; User Interface
(when (display-graphic-p)
  (scroll-bar-mode -1)
  (fringe-mode '(8 . 0)))

(tab-bar-mode t)
(display-battery-mode t)

(package-install 'darkroom)

(set-frame-font "Victor Mono")

(global-hl-line-mode t)

(setq my-chosen-themes
      '(cyberpunk-theme dracula-theme))
(mapc #'package-install my-chosen-themes)

(package-install 'windresize)