110 lines
3.8 KiB
EmacsLisp
110 lines
3.8 KiB
EmacsLisp
;;
|
|
(setq gc-cons-threshold 100000000)
|
|
(add-hook 'after-init-hook (lambda () (setq gc-cons-threshold 800000)))
|
|
|
|
;;
|
|
; (menu-bar-mode 0)
|
|
; (tool-bar-mode 0)
|
|
; (scroll-bar-mode 0)
|
|
; (setq inhibit-startup-screen t)
|
|
|
|
;;
|
|
(require 'use-package)
|
|
(setq package-check-signature nil)
|
|
(setq package-archives
|
|
'(("GNU ELPA" . "https://elpa.gnu.org/packages/")
|
|
("MELPA" . "https://melpa.org/packages/")
|
|
("ORG" . "https://orgmode.org/elpa/")
|
|
("MELPA Stable" . "https://stable.melpa.org/packages/")
|
|
("nongnu" . "https://elpa.nongnu.org/nongnu/"))
|
|
package-archive-priorities
|
|
'(("GNU ELPA" . 20)
|
|
("MELPA" . 15)
|
|
("ORG" . 10)
|
|
("MELPA Stable" . 5)
|
|
("nongnu" . 0)))
|
|
(when (member "Roboto Mono" (font-family-list))
|
|
(set-face-attribute 'default nil :font "Roboto Mono" :height 108)
|
|
(set-face-attribute 'fixed-pitch nil :family "Roboto Mono"))
|
|
|
|
(package-initialize)
|
|
(setq use-package-always-ensure t)
|
|
; (require' doom-themes) ;; Make sure doom-themes are installed
|
|
; (load-theme 'doom-nord t) ;; Load the doom-nord theme
|
|
|
|
; (require rust-mode)
|
|
|
|
;; Enable Vertico.
|
|
(use-package vertico
|
|
:custom
|
|
(vertico-scroll-margin 0) ;; Different scroll margin
|
|
(vertico-count 20) ;; Show more candidates
|
|
(vertico-resize t) ;; Grow and shrink the Vertico minibuffer
|
|
(vertico-cycle t) ;; Enable cycling for `vertico-next/previous'
|
|
:init
|
|
(vertico-mode)
|
|
)
|
|
|
|
;; Persist history over Emacs restarts. Vertico sorts by history position.
|
|
(use-package savehist
|
|
:init
|
|
(savehist-mode))
|
|
|
|
;; Emacs minibuffer configurations.
|
|
(use-package emacs
|
|
:custom
|
|
;; Enable context menu. `vertico-multiform-mode' adds a menu in the minibuffer
|
|
;; to switch display modes.
|
|
(context-menu-mode t)
|
|
;; Support opening new minibuffers from inside existing minibuffers.
|
|
(enable-recursive-minibuffers t)
|
|
;; Hide commands in M-x which do not work in the current mode. Vertico
|
|
;; commands are hidden in normal buffers. This setting is useful beyond
|
|
;; Vertico.
|
|
(read-extended-command-predicate #'command-completion-default-include-p)
|
|
;; Do not allow the cursor in the minibuffer prompt
|
|
(minibuffer-prompt-properties
|
|
'(read-only t cursor-intangible t face minibuffer-prompt)))
|
|
|
|
;; Optionally use the `orderless' completion style.
|
|
(use-package orderless
|
|
:custom
|
|
;; Configure a custom style dispatcher (see the Consult wiki)
|
|
;; (orderless-style-dispatchers '(+orderless-consult-dispatch orderless-affix-dispatch))
|
|
;; (orderless-component-separator #'orderless-escapable-split-on-space)
|
|
(completion-styles '(orderless basic))
|
|
(completion-category-overrides '((file (styles partial-completion))))
|
|
(completion-category-defaults nil) ;; Disable defaults, use our settings
|
|
(completion-pcm-leading-wildcard t)) ;; Emacs 31: partial-completion behaves like substring
|
|
|
|
(when (member "Source Sans Pro" (font-family-list))
|
|
(set-face-attribute 'variable-pitch nil :family "Source Sans Pro" :height 1.18))
|
|
|
|
|
|
(setq tool-bar-mode 0 ;; Remove toolbar
|
|
scroll-bar-mode 0 ;; Remove scollbars
|
|
menu-bar-mode 0 ;; Remove menu bar
|
|
blink-cursor-mode 0) ;; Solid cursor, not blinking
|
|
|
|
(use-package which-key
|
|
:init (which-key-mode)
|
|
:config (setq which-key-idle-delay 0.3))
|
|
|
|
;; evil :P
|
|
(unless (package-installed-p 'evil))
|
|
(package-install 'evil)
|
|
(setq evil-want-keybinding nil)
|
|
(require 'evil)
|
|
(evil-mode 1)
|
|
(custom-set-variables
|
|
;; custom-set-variables was added by Custom.
|
|
;; If you edit it by hand, you could mess it up, so be careful.
|
|
;; Your init file should contain only one such instance.
|
|
;; If there is more than one, they won't work right.
|
|
'(package-selected-packages nil))
|
|
(custom-set-faces
|
|
;; custom-set-faces was added by Custom.
|
|
;; If you edit it by hand, you could mess it up, so be careful.
|
|
;; Your init file should contain only one such instance.
|
|
;; If there is more than one, they won't work right.
|
|
)
|