diff options
Diffstat (limited to 'emacs.d/init.el')
-rw-r--r-- | emacs.d/init.el | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/emacs.d/init.el b/emacs.d/init.el new file mode 100644 index 0000000..a1574d5 --- /dev/null +++ b/emacs.d/init.el @@ -0,0 +1,137 @@ +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Initialize package system. + +(require 'package) + +(setq package-archives + '(("gnu" . "https://elpa.gnu.org/packages/") + ("melpa" . "https://melpa.org/packages/"))) + +(package-initialize) + +;; Run this manually from time to time to update package lists. +;(package-refresh-contents) + +;; Use-package for civilized configuration + +(unless (package-installed-p 'use-package) + (package-install 'use-package)) +(require 'use-package) +(setq use-package-always-ensure t) + +;; Put customization in its own file. +(setq custom-file "~/.emacs.d/custom.el") +(load custom-file) + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Packages I like. + +(use-package apache-mode) +(use-package diminish) +(use-package go-mode) +(use-package graphviz-dot-mode) +(use-package rust-mode) + +(use-package magit + :config + (global-set-key (kbd "C-x g") 'magit-status)) + +(use-package yaml-mode + :config + (add-to-list 'auto-mode-alist '("\\.ick\\'" . yaml-mode)) + (add-to-list 'auto-mode-alist '("\\.vmdb\\'" . yaml-mode)) + (add-to-list 'auto-mode-alist '("\\.yaml\\'" . yaml-mode)) + (add-to-list 'auto-mode-alist '("\\.yml\\'" . yaml-mode))) + +(use-package markdown-mode + :config + (add-to-list 'auto-mode-alist '("NEWS" . markdown-mode)) + (add-to-list 'auto-mode-alist '("README" . markdown-mode)) + (add-to-list 'auto-mode-alist '("\\.mdwn\\'" . markdown-mode))) + +(use-package flycheck + :init (global-flycheck-mode)) + +(use-package modus-operandi-theme + :config + (setq modus-operandi-theme-slanted-constructs t) + (setq modus-operandi-theme-bold-constructs t) + (load-theme 'modus-operandi t)) + + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; UI tweaks. + +;; Don't show help at startup +(setq inhibit-startup-screen t) + +;; Disable tool bar in windows. +(tool-bar-mode 0) + +;; Show column numbers in the mode line. +(column-number-mode t) +(setq column-number-indicator-zero-based nil) + +;; Show line number before line. +(global-display-line-numbers-mode) +(set-face-attribute 'line-number nil + :height 0.7) +(set-face-attribute 'line-number-current-line nil + :foreground "#ff0000" :height 0.7) + +;; Enable X CLIPBOARD selection, instead of PRIMARY. +(setq x-select-enable-clipboard t) + +;; Show directories in the Buffers menu. +(setq buffers-menu-show-directories t) + +;; Don't line wrap long lines. +(set-default 'truncate-lines t) + +;; Show size in mode line. +(size-indication-mode) + +;; Highlight current line. +(add-hook 'text-mode-hook 'hl-line-mode) +(add-hook 'prog-mode-hook 'hl-line-mode) + + +(when (display-graphic-p) + (global-unset-key "\C-x\C-c") + (global-unset-key "\C-z") + (global-unset-key "\C-_") + (global-unset-key (kbd "\C-x\C-z")) + (global-unset-key (kbd "<insert>")) + (global-set-key (kbd "C-=") 'text-scale-adjust) + (global-set-key (kbd "C-+") 'text-scale-adjust) + (global-set-key (kbd "C--") 'text-scale-adjust) + (global-set-key (kbd "C-0") 'text-scale-adjust) +) + + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;; Other tweaks. + +;; Do not make backup files when saving. +(setq make-backup-files nil) + +;; Turn on auto-fill-mode in all text modes automatically. +(setq text-mode-hook (quote (turn-on-auto-fill text-mode-hook-identify))) + +;; Don't require double spaces to end sentences. +(setq sentence-end-double-space nil) + +;; Base font size. +(set-face-attribute 'default nil + :height 130 + :family "Hack") + +;; Turn on flyspell spell checking. +(add-hook 'text-mode-hook 'flyspell-mode) +(add-hook 'prog-mode-hook 'flyspell-prog-mode) + +;; Show matching parens. +(add-hook 'text-mode-hook 'show-paren-mode) +(add-hook 'prog-mode-hook 'show-paren-mode) |