some dotfiles
This commit is contained in:
parent
1711828930
commit
d43510a49b
3 changed files with 191 additions and 1 deletions
161
dotfiles/emacs/init.el
Normal file
161
dotfiles/emacs/init.el
Normal file
|
|
@ -0,0 +1,161 @@
|
|||
;; .emacs
|
||||
|
||||
;; Initialize straight.el
|
||||
(defvar bootstrap-version)
|
||||
(let ((bootstrap-file
|
||||
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
|
||||
(bootstrap-version 6))
|
||||
(unless (file-exists-p bootstrap-file)
|
||||
(with-current-buffer
|
||||
(url-retrieve-synchronously
|
||||
"https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
|
||||
'silent 'inhibit-cookies)
|
||||
(goto-char (point-max))
|
||||
(eval-print-last-sexp)))
|
||||
(load bootstrap-file nil 'nomessage))
|
||||
|
||||
;; GCMH - Do this at the beginning so we can maybe start up a bit
|
||||
;; faster
|
||||
(straight-use-package 'gcmh)
|
||||
(gcmh-mode 1)
|
||||
|
||||
;; use-package
|
||||
(straight-use-package 'use-package)
|
||||
|
||||
;; Packages
|
||||
;; Major modes
|
||||
(straight-use-package 'markdown-mode)
|
||||
(straight-use-package 'rust-mode)
|
||||
(straight-use-package 'haskell-mode)
|
||||
(straight-use-package 'fish-mode)
|
||||
(straight-use-package 'yaml-mode)
|
||||
(straight-use-package 'cmake-mode)
|
||||
|
||||
(define-minor-mode remove-trailing-whitespace-mode
|
||||
"Minor mode to remove trailing whitespace on every save"
|
||||
(add-hook 'before-save-hook 'delete-trailing-whitespace))
|
||||
|
||||
(add-hook 'prog-mode-hook 'remove-trailing-whitespace-mode)
|
||||
|
||||
;; Other stuff
|
||||
(straight-use-package 'better-defaults)
|
||||
(straight-use-package 'delight)
|
||||
(straight-use-package 'doom-themes)
|
||||
(straight-use-package 'undo-tree)
|
||||
(straight-use-package 'multiple-cursors)
|
||||
(straight-use-package 'which-key)
|
||||
(straight-use-package 'rainbow-delimiters)
|
||||
(straight-use-package 'hl-todo)
|
||||
(straight-use-package 'orderless)
|
||||
(straight-use-package 'vertico)
|
||||
(straight-use-package 'consult)
|
||||
(straight-use-package 'marginalia)
|
||||
(straight-use-package 'embark)
|
||||
(straight-use-package 'embark-consult)
|
||||
(straight-use-package 'company)
|
||||
(straight-use-package 'lsp-mode)
|
||||
(straight-use-package 'speed-type)
|
||||
(straight-use-package 'magit)
|
||||
(straight-use-package 'restart-emacs)
|
||||
;; (straight-use-package 'mingus)
|
||||
(straight-use-package 'ace-window)
|
||||
;; (straight-use-package 'projectile)
|
||||
;; (straight-use-package 'osm)
|
||||
(straight-use-package 'editorconfig)
|
||||
(straight-use-package 'exec-path-from-shell)
|
||||
(straight-use-package 'pyvenv)
|
||||
(straight-use-package 'ellama)
|
||||
(straight-use-package 'proof-general)
|
||||
|
||||
;; Emacs Configuration
|
||||
(setq inhibit-splash-screen t)
|
||||
(setq scroll-step 1)
|
||||
(recentf-mode 1)
|
||||
(global-auto-revert-mode 1)
|
||||
(put 'narrow-to-region 'disabled nil)
|
||||
(global-unset-key (kbd "C-z"))
|
||||
(setq mac-command-modifier 'meta
|
||||
mac-option-modifier nil)
|
||||
;; (set-face-attribute 'default nil :height 140)
|
||||
|
||||
(setq use-package-compute-statistics t)
|
||||
|
||||
(use-package display-line-numbers-mode
|
||||
:hook (prog-mode text-mode conf-mode))
|
||||
|
||||
(use-package hl-line-mode
|
||||
:hook (prog-mode text-mode conf-mode))
|
||||
|
||||
(use-package gcmh
|
||||
:delight)
|
||||
|
||||
(use-package exec-path-from-shell
|
||||
:config
|
||||
(when (memq window-system '(mac ns))
|
||||
(exec-path-from-shell-initialize)))
|
||||
|
||||
(use-package undo-tree
|
||||
:config
|
||||
(global-undo-tree-mode)
|
||||
:custom
|
||||
(undo-tree-auto-save-history nil)
|
||||
:delight)
|
||||
|
||||
(use-package which-key
|
||||
:config
|
||||
(which-key-mode)
|
||||
:delight)
|
||||
|
||||
(use-package doom-themes
|
||||
:config
|
||||
(load-theme 'doom-one t))
|
||||
|
||||
(use-package better-defaults)
|
||||
|
||||
(use-package multiple-cursors
|
||||
:bind (("C-x C-l" . mc/edit-lines)
|
||||
("C-x C-n" . mc/mark-next-like-this)
|
||||
("C-x C-p" . mc/mark-previous-like-this)))
|
||||
|
||||
(use-package rainbow-delimiters-mode
|
||||
:hook prog-mode)
|
||||
|
||||
(use-package hl-todo-mode
|
||||
:hook prog-mode)
|
||||
|
||||
(use-package orderless
|
||||
:custom (completion-styles '(orderless)))
|
||||
|
||||
(use-package vertico
|
||||
:init
|
||||
(ido-mode 0)
|
||||
(vertico-mode))
|
||||
|
||||
(use-package consult
|
||||
:bind (("C-c i" . consult-imenu)
|
||||
("C-x b" . consult-buffer)))
|
||||
|
||||
(use-package marginalia
|
||||
:init
|
||||
(marginalia-mode 1))
|
||||
|
||||
(use-package company
|
||||
:config
|
||||
(global-company-mode)
|
||||
:bind (("C-." . company-complete)))
|
||||
|
||||
(use-package ace-window
|
||||
:custom
|
||||
(aw-keys '(?h ?i ?e ?a ?t ?r ?n ?s))
|
||||
:bind (("C-x o" . ace-window)))
|
||||
|
||||
(use-package editorconfig
|
||||
:config
|
||||
(editorconfig-mode 1)
|
||||
:delight)
|
||||
|
||||
(use-package embark
|
||||
:bind (("C-M-x" . embark-act)))
|
||||
|
||||
(electric-indent-mode -1)
|
||||
(remove-hook 'before-save-hook 'delete-trailing-whitespace)
|
||||
Loading…
Add table
Add a link
Reference in a new issue