70 lines
3.4 KiB
EmacsLisp
70 lines
3.4 KiB
EmacsLisp
;;; init.el --- Emacs configuration entry point
|
|
;;; Commentary:
|
|
;;; Configure Emacs.
|
|
;;;
|
|
;;; Code:
|
|
|
|
;; enable disabled-by-default functions
|
|
(put 'erase-buffer 'disabled nil)
|
|
(put 'narrow-to-region 'disabled nil)
|
|
(put 'narrow-to-defun 'disabled nil)
|
|
(put 'narrow-to-page 'disabled nil)
|
|
(put 'widen 'disabled nil)
|
|
|
|
;; setup load paths
|
|
(add-to-list 'load-path (expand-file-name "cfg" user-emacs-directory))
|
|
(add-to-list 'load-path (expand-file-name "lisp" user-emacs-directory))
|
|
(let* ((feature-directory (file-truename (expand-file-name "feature" user-emacs-directory)))
|
|
(default-directory feature-directory))
|
|
(add-to-list 'load-path feature-directory)
|
|
(normal-top-level-add-subdirs-to-load-path))
|
|
|
|
;; load base configuration and additional features
|
|
(require 'feature-base) ; prep the beast
|
|
(require 'feature-pkg) ; this comes right after feature-base
|
|
(require 'feature-dired) ; dired stuff
|
|
(require 'feature-async) ; asynchronous functions in emacs
|
|
(require 'feature-alioth) ; when one computer isn't enough
|
|
(require 'feature-which-key) ; memorization is for the birds
|
|
(require 'feature-multi-cursor) ; do repeat yourself
|
|
(require 'feature-org) ; when markdown isn't good enough
|
|
(require 'feature-ctags) ; a fork for your spaghetti
|
|
(require 'feature-detached) ; attachment causes suffering
|
|
(require 'feature-denote) ; a second brain
|
|
(require 'feature-denote-multidir) ; a third, fourth, ... brain
|
|
(require 'feature-denote-index) ; manage second-brain dementia
|
|
(require 'feature-eyecandy) ; eye candy (themes, modeline...)
|
|
(require 'feature-magit) ; git stuff
|
|
(require 'feature-graphviz) ; diagrams for old people
|
|
(require 'feature-plantuml) ; diagrams for less-old people
|
|
(require 'feature-golang) ; gophers unite
|
|
(require 'feature-golang-playground) ; for playing with go code
|
|
(require 'feature-python) ; code that eats itself
|
|
(require 'feature-web) ; a veritable fucking mess
|
|
(require 'feature-protobuf) ; some google messaging shit
|
|
(require 'feature-kotlin) ; java for the only mildly insane
|
|
(require 'feature-yaml) ; because we all have to deal with it
|
|
(require 'feature-json) ; data for argonauts
|
|
(require 'feature-rego) ; some policy language we use at work
|
|
(require 'feature-syntax) ; track wip, compile into submission
|
|
(require 'feature-eshell) ; elisp shell
|
|
(require 'feature-scratch) ; extend scratch buffers
|
|
(require 'feature-orderless) ; fuzzy search
|
|
(require 'feature-vertico) ; better minibuffer
|
|
(require 'feature-embark) ; woof!
|
|
(require 'feature-consult) ; consult
|
|
(require 'feature-projectile) ; project management for nerds
|
|
(require 'feature-consult-projectile) ; consult-projectile
|
|
(require 'feature-rss) ; web browsing sucks
|
|
(require 'feature-llm) ; generate some bullshit
|
|
(require 'feature-snippets) ; lazy code generator
|
|
(require 'feature-browser) ; when we really have to browse...
|
|
(require 'feature-lmtf) ; lispy mctestface
|
|
(require 'feature-apitest) ; api testing capabilities
|
|
(require 'feature-avy) ; avy for quick jumping
|
|
|
|
;; theme
|
|
(load-theme 'misterioso)
|
|
|
|
;;; init.el ends here
|