diff --git a/.emacs.d/init.el b/.emacs.d/init.el index ef7a448..326e9d5 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -1,25 +1,42 @@ ;;; Package Management -(setq package-archives - '(("gnu" . "https://elpa.gnu.org/packages/") - ("melpa" . "https://melpa.org/packages/"))) - (require 'package) + +(add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/")) +(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/")) + (package-initialize) -(package-refresh-contents) - -(setq my-packages - '(go-mode - gruvbox-theme - github-theme - org - org-bullets - paper-theme - slime - zig-mode)) - -(dolist (pkg my-packages) - (unless (package-installed-p pkg) - (package-install pkg))) +(unless package-archive-contents + (package-refresh-contents)) + +(unless (package-installed-p 'use-package) + (package-install 'use-package)) + +(require 'use-package) +(setq use-package-always-ensure t) + +;;; Configuration +(use-package org-bullets + :hook (org-mode . org-bullets-mode) + :custom + (org-bullets-bullet-list '("◉" "○" "●" "○" "●" "○" "●"))) + +;;; C +(setq c-default-style "linux") + +;;; Go +(use-package go-mode + :mode "\\.go\\'") + +;;; Zig +(use-package zig-mode + :mode "\\.zig\\'") + +;;; Shortcuts +(defun indent-buffer() + (interactive) + (save-excursion + (indent-region (point-min) (point-max) nil))) +(global-set-key [f12] 'indent-buffer) ;;; Hidden Behavior (setq custom-file null-device) @@ -32,42 +49,24 @@ (put 'upcase-region 'disabled nil) ;;; General Appearence +(use-package busybee-theme + :init (load-theme 'busybee t)) + (menu-bar-mode -1) (scroll-bar-mode -1) (tool-bar-mode -1) -(global-linum-mode) -(setq linum-format "%3d ") - (set-face-attribute 'default nil - :family "Fira Code" - :height 140) + :family "Fira Code Retina" + :height 180) (setq inhibit-startup-screen t) -(setq fill-column 80) - -;;; Hooks -(add-hook 'org-mode-hook - (lambda () - (org-bullets-mode 1))) - -(defun disbale-linum-mode () - (add-hook 'after-change-major-mode-hook - (lambda () (linum-mode 0)) - :append :local)) -(add-hook 'term-mode-hook 'disbale-linum-mode) -(add-hook 'eshell-mode-hook 'disbale-linum-mode) - -;;; C -(setq c-default-style "linux") -;;; Lisp -(setq inferior-lisp-program "/bin/sbcl") -(slime-setup) +(column-number-mode) +(setq fill-column 80) -;;; Shortcuts -(defun indent-buffer() - (interactive) - (save-excursion - (indent-region (point-min) (point-max) nil))) -(global-set-key [f12] 'indent-buffer) +(global-display-line-numbers-mode t) +(dolist (mode '(term-mode-hook + shell-mode-hook + eshell-mode-hook)) + (add-hook mode (lambda () (display-line-numbers-mode 0))))