My custom emacs config
C-g
- keyboard quit, useful for quitting long running processes, similar to howESC
works
- https://github.com/tecosaur/emacs-config/blob/master/config.org
- https://github.com/MatthewZMD/.emacs.d/blob/master/init.org
- https://sachachua.com/dotemacs/index.html#org5786d6b
- https://github.com/zachcurry/emacs-anywhere
- https://github.com/d12frosted/environment/tree/master/emacs
Could also be used to directly construct the default.el to avoid any nix parsing
IDEA Enable a custom.[org|el] for defining experimental behaviour which is loaded from the user directory
Remove unneccessary UI elements for a minimal look and feel
(setq inhibit-startup-message t)
(scroll-bar-mode 1)
(tool-bar-mode -1)
(tooltip-mode -1)
(set-fringe-mode 10)
(menu-bar-mode -1)
(setq visible-bell t)
(set-face-attribute 'default nil :font "Iosevka NFM" :height 120)
(load-theme 'tango-dark)
Packages are always defined by the nix package manager so we should never have any remote fetching
(setq use-package-always-ensure t)
Is there a way to stifle use-package such that the emacs process can never fetch remote repositories?
Defaults for users name and email
(setq user-full-name "Patrick H Morris"
user-mail-address "[email protected]")
;; (defvar my-laptop-p (equal (system-name) "sacha-x220"))
;; (defvar my-server-p (and (equal (system-name) "localhost") (equal user-login-name "sacha")))
;; (defvar my-phone-p (not (null (getenv "ANDROID_ROOT")))
;; "If non-nil, GNU Emacs is running on Termux.")
;; (when my-phone-p (setq gnutls-algorithm-priority "NORMAL:-VERS-TLS1.3"))
;; (global-auto-revert-mode) ; simplifies syncing
Evil is a vim emulation layer built into emacs enabling common vim motions. Documentation can be found here.
(use-package evil
:config
(evil-mode 1))
General.el is intended, like use-package is for packages, a convenient, unified mechanism for managing keybindings.
(defconst leader "SPC")
;; (use-package general
;; :config
;; (general-create-definer leader
;; :prefix leader)
;; (leader
;; "a" 'org-agenda))
(use-package which-key
:config
(which-key-mode))
This section is just for helpful functions which should be prefixed with my/
in order to separate from normal elisp functions