Create new, a little bit better structured configuration

* Group configuration by package, and only then by language mode
* Slim down all the languages
This commit is contained in:
Maciej 2018-09-09 00:31:51 +03:00
parent 4d5f300113
commit 1a911716c0
Signed by: maciej
GPG key ID: 41D62D42D3B0D765
38 changed files with 513 additions and 18 deletions

105
init.el
View file

@ -1,25 +1,95 @@
;;; init.el --- Summary
;;; init.el -- Summary
;;; Commentary:
;;; Code:
;; list the repositories containing them
(setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/")
("melpa" . "https://melpa.org/packages/")))
;; Added by Package.el. This must come before configurations of
;; installed packages. Don't delete this line. If you don't want it,
;; just comment it out by adding a semicolon to the start of the line.
;; You may delete these explanatory comments.
;; activate all the packages (in particular autoloads)
(package-initialize)
(load "~/.emacs.d/config/packages.elc")
(load "~/.emacs.d/config/functions.elc")
(load "~/.emacs.d/config/behaviour.elc")
(load "~/.emacs.d/config/splash.elc")
(load "~/.emacs.d/config/themes.elc")
(load "~/.emacs.d/config/key-bindings.elc")
(load "~/.emacs.d/config/spelling.elc")
(load "~/.emacs.d/config/languages.elc")
(load "~/.emacs.d/config/windows.elc")
;; fetch the list of packages available
(unless package-archive-contents
(package-refresh-contents))
;; list the packages you want
(setq package-list '(
exec-path-from-shell ;; Allow to execute path from shell
evil ;; Behave like VIM
evil-leader ;; Allow to set leader key (usually space)
evil-nerd-commenter ;; Add comments to files
rainbow-delimiters ;; Colorize matching parens
rainbow-mode ;; Make color symbols like #FFF colorfull
magit ;; Git interface for Emacs
diff-hl ;; Highlight diff (also useful for git)
column-enforce-mode ;; Enforce column length of X
window-purpose ;; Make sure that windows are of grouped by
;; purpose.
;;; Helm replacements
ivy
counsel
swiper
;;; Code
dash-at-point
company ;; Code completion framework
yasnippet ;; Code snippets framework
yasnippet-snippets ;; Actual snippets for various languages
;; Project management
projectile
counsel-projectile
;; Themes
smart-mode-line
base16-theme
flatui-theme
;; Ruby
enh-ruby-mode ;; Enhanced Ruby mode
robe ;; Ruby REPL inside emacs
rvm ;; Support rvm usage
ruby-end ;; Insert end for methods automatically
;; Web
web-mode
;; Infrastructure files
yaml-mode
dockerfile-mode
terraform-mode
ansible
)
)
;; install the missing packages
(dolist (package package-list)
(unless (package-installed-p package)
(package-install package)))
;; Additional files
(load "~/.emacs.d/01mac.el")
(load "~/.emacs.d/02evil.el")
(load "~/.emacs.d/03ivy.el")
(load "~/.emacs.d/04magit.el")
(load "~/.emacs.d/05prog-mode.el")
(load "~/.emacs.d/06company-yasnippet.el")
(load "~/.emacs.d/07projectile.el")
(load "~/.emacs.d/08purpose.el")
(load "~/.emacs.d/10themes.el")
;; Actual supported languages
(load "~/.emacs.d/20elisp.el")
(load "~/.emacs.d/20ruby.el")
(load "~/.emacs.d/20web.el")
(provide 'init)
;;; init.el ends here
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
@ -27,8 +97,7 @@
;; If there is more than one, they won't work right.
'(package-selected-packages
(quote
(flymake-go go-flymake flycheck-go company-go go-mode expand-region sql-indent json-mode terraform-mode flycheck-rust company-ghc company-ghci scion hlinum etags-select nvm tide yaml-mode window-purpose web-mode ujelly-theme toml-mode smart-mode-line scala-mode rvm ruby-end rspec-mode robe rainbow-mode rainbow-delimiters racer pyenv-mode noctilux-theme monokai-theme markdown-mode less-css-mode json-reformat jade-mode indent-guide helm-themes helm-projectile helm-ag haskell-mode haml-mode groovy-mode flymake-ruby flymake-cursor flycheck flatui-theme exec-path-from-shell evil-nerd-commenter evil-magit evil-leader elpy dumb-jump dockerfile-mode diff-hl dash-at-point company-tern company-racer company-jedi column-enforce-mode color-theme-approximate base16-theme atom-one-dark-theme alchemist aggressive-indent ag)))
'(safe-local-variable-values (quote ((encoding . utf-8)))))
(window-purpose column-enforce-mode yaml-mode ansible dockerfile-mode evil-nerd-commenter ruby-end web-mode flymake-ruby rvm dash-at-point robe base16-theme exec-path-from-shell evil))))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.