|
|
|
;;; init.el -*- lexical-binding: t; -*-
|
|
|
|
|
|
|
|
(require 'package)
|
|
|
|
|
|
|
|
(add-to-list
|
|
|
|
'package-archives
|
|
|
|
'("melpa" . "https://melpa.milkbox.net/packages/")
|
|
|
|
t)
|
|
|
|
(add-to-list
|
|
|
|
'package-archives
|
|
|
|
'("org" . "https://orgmode.org/elpa/")
|
|
|
|
t)
|
|
|
|
|
|
|
|
(package-initialize)
|
|
|
|
|
|
|
|
(unless (package-installed-p 'use-package)
|
|
|
|
(package-refresh-contents)
|
|
|
|
(package-install 'use-package))
|
|
|
|
|
|
|
|
(require 'use-package)
|
|
|
|
(setq use-package-always-ensure t)
|
|
|
|
|
|
|
|
; update packages
|
|
|
|
(use-package auto-package-update
|
|
|
|
:config (setq auto-package-update-delete-old-versions t)
|
|
|
|
(setq auto-package-update-hide-results t)
|
|
|
|
(auto-package-update-maybe))
|
|
|
|
|
|
|
|
; rust mode
|
|
|
|
(use-package rust-mode
|
|
|
|
:ensure t)
|
|
|
|
|
|
|
|
; Notes
|
|
|
|
(use-package org
|
|
|
|
:ensure t
|
|
|
|
:bind (("\C-cl" . org-store-link)
|
|
|
|
("\C-ca" . org-agenda)
|
|
|
|
("\C-cb" . org-iswtichb)))
|
|
|
|
|
|
|
|
|
|
|
|
; Helm, for easy access to commands
|
|
|
|
(use-package helm
|
|
|
|
:ensure t
|
|
|
|
:init (progn (require 'helm-config)
|
|
|
|
(setq helm-mode-fuzzy-match t)
|
|
|
|
(helm-mode))
|
|
|
|
)
|
|
|
|
|
|
|
|
; Evil
|
|
|
|
(use-package evil
|
|
|
|
:ensure t
|
|
|
|
:after (helm)
|
|
|
|
:config (progn
|
|
|
|
(evil-mode 1)
|
|
|
|
(define-key evil-normal-state-map (kbd "C-w <up>") 'evil-window-up)
|
|
|
|
(define-key evil-normal-state-map (kbd "C-w <down>") 'evil-window-down)
|
|
|
|
(define-key evil-normal-state-map (kbd "C-w <left>") 'evil-window-left)
|
|
|
|
(define-key evil-normal-state-map (kbd "C-w <right>") 'evil-window-right)
|
|
|
|
(define-key evil-normal-state-map (kbd "-") 'helm-find-files)
|
|
|
|
)
|
|
|
|
; Evil-leader so we can use the leader key
|
|
|
|
(use-package evil-leader
|
|
|
|
:ensure t
|
|
|
|
:config (progn (global-evil-leader-mode)
|
|
|
|
(evil-leader/set-leader "<SPC>")
|
|
|
|
(evil-leader/set-key
|
|
|
|
"q" 'kill-buffer-and-window
|
|
|
|
"w" 'save-buffer
|
|
|
|
"o" 'helm-find-files
|
|
|
|
"a" 'org-agenda)))
|
|
|
|
; Commentary to comment out code
|
|
|
|
(use-package evil-commentary
|
|
|
|
:ensure t
|
|
|
|
:bind (:map evil-normal-state-map ("gc" . evil-commentary))
|
|
|
|
)
|
|
|
|
)
|
|
|
|
|
|
|
|
; Markdown mode
|
|
|
|
(use-package markdown-mode
|
|
|
|
:ensure t)
|
|
|
|
|
|
|
|
; install goto last change (opens the file in the last position)
|
|
|
|
(use-package goto-last-change
|
|
|
|
:ensure t)
|
|
|
|
|
|
|
|
; install fill-column-indicador: right side gutter
|
|
|
|
(use-package fill-column-indicator
|
|
|
|
:ensure t)
|
|
|
|
; install powerline
|
|
|
|
|
|
|
|
(use-package powerline
|
|
|
|
:ensure t
|
|
|
|
:config (powerline-center-evil-theme))
|
|
|
|
|
|
|
|
; colorschemes
|
|
|
|
(use-package doom-themes
|
|
|
|
:ensure t
|
|
|
|
:config (setq doom-themes-enable-bold t
|
|
|
|
doom-themes-enable-italic t)
|
|
|
|
(load-theme 'doom-molokai t)
|
|
|
|
)
|
|
|
|
|
|
|
|
(custom-set-variables
|
|
|
|
;; custom-set-variables was added by Custom.
|
|
|
|
;; If you edit it by hand, you could mess it up, so be careful.
|
|
|
|
;; Your init file should contain only one such instance.
|
|
|
|
;; If there is more than one, they won't work right.
|
|
|
|
'(ansi-color-names-vector
|
|
|
|
["#2d2a2e" "#ff6188" "#a9dc76" "#ffd866" "#78dce8" "#ab9df2" "#a1efe4" "#fcfcfa"])
|
|
|
|
'(ansi-term-color-vector
|
|
|
|
[unspecified "#2d2a2e" "#ff6188" "#a9dc76" "#ffd866" "#78dce8" "#ab9df2" "#a1efe4" "#fcfcfa"])
|
|
|
|
'(custom-enabled-themes (quote (monokai-pro)))
|
|
|
|
'(custom-safe-themes
|
|
|
|
(quote
|
|
|
|
("be9645aaa8c11f76a10bcf36aaf83f54f4587ced1b9b679b55639c87404e2499" "f10e50d86ec09152a03fcc3b251ba698610b2e5baa73699297a8bb37a419f3c8" "11e57648ab04915568e558b77541d0e94e69d09c9c54c06075938b6abc0189d8" "7f6d4aebcc44c264a64e714c3d9d1e903284305fd7e319e7cb73345a9994f5ef" "bd7b7c5df1174796deefce5debc2d976b264585d51852c962362be83932873d9" "039eb505cec29b4521ce5ecf5abf523492005f0c65d0640f62e53e2d3068b393" "6c0a087a4f49c04d4002393ffd149672f70e4ab38d69bbe8b39059b61682b61c" default)))
|
|
|
|
'(fci-rule-color "#555556")
|
|
|
|
'(inhibit-startup-screen t)
|
|
|
|
'(jdee-db-active-breakpoint-face-colors (cons "#1B2229" "#fd971f"))
|
|
|
|
'(jdee-db-requested-breakpoint-face-colors (cons "#1B2229" "#b6e63e"))
|
|
|
|
'(jdee-db-spec-breakpoint-face-colors (cons "#1B2229" "#525254"))
|
|
|
|
'(objed-cursor-color "#e74c3c")
|
|
|
|
'(org-agenda-files (quote ("~/Documents/index.org")))
|
|
|
|
'(package-selected-packages
|
|
|
|
(quote
|
|
|
|
(monokai-pro-theme markdown-mode org-evil org-link-minor-mode rust-mode evil-quickscope evil-tabs ## evil-leader editorconfig diff-hl neotree helm-ag helm-projectile projectile helm hlinum fill-column-indicator evil monokai-theme cider)))
|
|
|
|
'(pdf-view-midnight-colors (cons "#d6d6d4" "#1c1e1f"))
|
|
|
|
'(rustic-ansi-faces
|
|
|
|
["#1c1e1f" "#e74c3c" "#b6e63e" "#e2c770" "#268bd2" "#fb2874" "#66d9ef" "#d6d6d4"])
|
|
|
|
'(vc-annotate-background "#1c1e1f")
|
|
|
|
'(vc-annotate-color-map
|
|
|
|
(list
|
|
|
|
(cons 20 "#b6e63e")
|
|
|
|
(cons 40 "#c4db4e")
|
|
|
|
(cons 60 "#d3d15f")
|
|
|
|
(cons 80 "#e2c770")
|
|
|
|
(cons 100 "#ebb755")
|
|
|
|
(cons 120 "#f3a73a")
|
|
|
|
(cons 140 "#fd971f")
|
|
|
|
(cons 160 "#fc723b")
|
|
|
|
(cons 180 "#fb4d57")
|
|
|
|
(cons 200 "#fb2874")
|
|
|
|
(cons 220 "#f43461")
|
|
|
|
(cons 240 "#ed404e")
|
|
|
|
(cons 260 "#e74c3c")
|
|
|
|
(cons 280 "#c14d41")
|
|
|
|
(cons 300 "#9c4f48")
|
|
|
|
(cons 320 "#77504e")
|
|
|
|
(cons 340 "#555556")
|
|
|
|
(cons 360 "#555556")))
|
|
|
|
'(vc-annotate-very-old-color nil))
|
|
|
|
(custom-set-faces
|
|
|
|
;; custom-set-faces was added by Custom.
|
|
|
|
;; If you edit it by hand, you could mess it up, so be careful.
|
|
|
|
;; Your init file should contain only one such instance.
|
|
|
|
;; If there is more than one, they won't work right.
|
|
|
|
)
|
|
|
|
|
|
|
|
(menu-bar-mode 0)
|
|
|
|
(tool-bar-mode 0)
|
|
|
|
|
|
|
|
(show-paren-mode 1)
|
|
|
|
|
|
|
|
(require 'whitespace)
|
|
|
|
(setq whitespace-style '(face empty tabs lines-tail trailing))
|
|
|
|
(global-whitespace-mode t)
|
|
|
|
|
|
|
|
(setq-default fill-column 80)
|
|
|
|
(define-globalized-minor-mode global-fci-mode fci-mode (lambda () (fci-mode 1)))
|
|
|
|
(global-fci-mode 1)
|
|
|
|
|
|
|
|
; line numbers
|
|
|
|
(global-linum-mode 1)
|
|
|
|
(defun configure-linum-colors ()
|
|
|
|
(set-face-foreground 'linum "#555555"))
|
|
|
|
(configure-linum-colors)
|
|
|
|
(setq linum-format " %4d ")
|
|
|
|
|
|
|
|
; highlights the current line
|
|
|
|
(use-package hlinum
|
|
|
|
:ensure t)
|
|
|
|
(set-face-foreground 'linum-highlight-face "white")
|
|
|
|
(set-face-background 'linum-highlight-face nil)
|
|
|
|
(hlinum-activate)
|
|
|
|
|
|
|
|
; display line and column in the statusbar
|
|
|
|
(line-number-mode 1)
|
|
|
|
(column-number-mode 1)
|
|
|
|
|
|
|
|
; don't show startup messages
|
|
|
|
(setq inhibit-startup-message t)
|
|
|
|
(setq initial-scratch-message nil)
|
|
|
|
|
|
|
|
; auto-pairs
|
|
|
|
(electric-pair-mode 1)
|
|
|
|
|
|
|
|
; git gutters
|
|
|
|
(use-package diff-hl
|
|
|
|
:ensure t
|
|
|
|
:init (setq diff-hl-side 'right))
|
|
|
|
(global-diff-hl-mode 1)
|
|
|
|
(diff-hl-margin-mode 1)
|
|
|
|
(diff-hl-flydiff-mode 1)
|
|
|
|
|
|
|
|
; install editorconfig
|
|
|
|
(use-package editorconfig
|
|
|
|
:ensure t
|
|
|
|
:config (editorconfig-mode 1))
|
|
|
|
|
|
|
|
; answer questions with 'y' instead of full 'yes'
|
|
|
|
(defalias 'yes-or-no-p 'y-or-n-p)
|