Skip to content

Latest commit

 

History

History
127 lines (96 loc) · 2.64 KB

config.org

File metadata and controls

127 lines (96 loc) · 2.64 KB

Veryslow Emacs Config

Packages

Package Archives

(require 'package)

;; Enable package archives from both standard and melpa
(setq package-archives '(("melpa" . "https://melpa.org/packages/")
			   ("org" . "https://orgmode.org/elpa/")
			   ("elpa" . "https://elpa.gnu.org/packages/")))
(package-initialize)

Use Package

;; Install use-package if not already installed
(unless (package-installed-p 'use-package)
  (package-install 'use-package))

(require 'use-package)
(setq use-package-always-ensure t)  

Gerneral

User Interface

;; Turn off uneeded interface elements
(tool-bar-mode 0)
(scroll-bar-mode 0)
(menu-bar-mode 0)

;; Disable unwanted interface behaviour
(setq inhibit-startup-message t)
(setq use-file-dialog nil)
(setq use-dialog-box nil)
(setq pop-up-windows nil)
(setq ring-bell-function 'ignore)

(add-hook 'window-setup-hook 'toggle-frame-maximized t)

Backups

;; Clean up file backups for 1. visual aesthetics and 2. git
(setq backup-directory-alist '((".*" . "~/.config/emacs/backup/")))

Buffers

(defun kill-other-buffers ()
  "Kill all other buffers."
  (interactive)
  (mapc 'kill-buffer (delq (current-buffer) (buffer-list))))

Editor

(global-display-line-numbers-mode 1)
(delete-selection-mode 1)  ;; Delete selected text by typing
(setq column-number-mode t)

Mappings

(use-package evil
    :demand t
    :init
    :config
    (evil-mode t))

Font

(set-face-attribute 'default nil
		      :font "FiraCode Nerd Font Mono"
		      :height 120
		      :weight 'medium)

Themes

(use-package catppuccin-theme
  :demand t
  :config
  (load-theme 'catppuccin t))

(setq catppuccin-flavor 'mocha) ;; or 'latte, 'macchiato, or 'mocha
(catppuccin-reload)

Dashboard

(use-package dashboard
  :ensure t
  :config
  (dashboard-setup-startup-hook))

(setq dashboard-banner-logo-title "Nano beats Emacs and Neovim!")
(setq dashboard-startup-banner 'logo)
(setq dashboard-items '((bookmarks . 5)
			  (projects . 5)
			  (agenda . 5)))

Version Control

Magit

(use-package magit
  :ensure t)