summaryrefslogtreecommitdiff
path: root/emacs.d/init.el
diff options
context:
space:
mode:
authorFranck Cuny <franck.cuny@gmail.com>2018-04-08 16:13:12 -0700
committerFranck Cuny <franck.cuny@gmail.com>2018-04-08 16:13:12 -0700
commit4007ca81e0105119c8ed754e654a731934f5154c (patch)
tree41ba9d60f64866c8a098e631e8e32bf4249931fa /emacs.d/init.el
parent[emacs] fix some path after directories reorg (diff)
downloademacs.d-4007ca81e0105119c8ed754e654a731934f5154c.tar.gz
[emacs] Large refactoring.
At first I wanted to add support for java, and then I realized that maintaining a giant file with all the packages was not working as I was expected. The configuration is broken down to multiple files now, with each major mode in a separate file, and the main modules in their own too. This should make it easier to maintain and organize.
Diffstat (limited to '')
-rw-r--r--emacs.d/init.el55
1 files changed, 46 insertions, 9 deletions
diff --git a/emacs.d/init.el b/emacs.d/init.el
index 715222b..5c56b35 100644
--- a/emacs.d/init.el
+++ b/emacs.d/init.el
@@ -2,15 +2,52 @@
;; on load time.
;; (package-initialize)
-(defun emacs-lib (filename)
- (expand-file-name (concat "lib" "/" filename ".el") user-emacs-directory))
+;; Initialise the package system first of all.
+(package-initialize)
-(load (emacs-lib "settings"))
-(load (emacs-lib "funcs"))
-(load (emacs-lib "bindings"))
+;; Skip the default splash screen.
+(setq inhibit-startup-message t)
-(when (>= emacs-major-version 24)
- (load (emacs-lib "packages"))
- (load (emacs-lib "twitter") 'missing-ok))
+(add-to-list 'load-path (expand-file-name "config" user-emacs-directory))
+(add-to-list 'load-path (expand-file-name "modules" user-emacs-directory))
-(add-hook 'emacs-startup-hook #'fc/load-time)
+(require 'config-lib)
+(require 'config-package)
+(require 'config-env)
+(require 'config-set-path)
+
+(require 'module-general)
+(require 'module-appareance)
+(require 'module-hydra)
+(require 'module-editing)
+(require 'module-codestyle)
+
+(require 'module-ibuffer)
+(require 'module-git)
+(require 'module-dired)
+(require 'module-ivy)
+(require 'module-project)
+(require 'module-flycheck)
+(require 'module-flyspell)
+(require 'module-autocomplete)
+
+(require 'module-make)
+(require 'module-pants)
+
+(require 'module-c)
+(require 'module-docker)
+(require 'module-go)
+(require 'module-java)
+(require 'module-json)
+(require 'module-lisp)
+(require 'module-protobuf)
+(require 'module-puppet)
+(require 'module-python)
+(require 'module-rust)
+(require 'module-scala)
+(require 'module-shell)
+(require 'module-thrift)
+
+(require 'module-markdown)
+(require 'module-toml)
+(require 'module-yaml)