From 348c184925e7ff8b399e0c52df178ac76853f49d Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Fri, 14 Mar 2014 18:44:13 +0100 Subject: Split up config into multiple files --- lisp/init-appearance.el | 33 +++++++++++++++++++++++++++++++++ lisp/init-evil-mode.el | 15 +++++++++++++++ lisp/init-go-mode.el | 7 +++++++ lisp/init-ido.el | 31 +++++++++++++++++++++++++++++++ lisp/init-mac.el | 32 ++++++++++++++++++++++++++++++++ lisp/init-package.el | 17 +++++++++++++++++ lisp/init-sane-defaults.el | 16 ++++++++++++++++ lisp/init-server.el | 6 ++++++ lisp/init-yaml-mode.el | 7 +++++++ 9 files changed, 164 insertions(+) create mode 100644 lisp/init-appearance.el create mode 100644 lisp/init-evil-mode.el create mode 100644 lisp/init-go-mode.el create mode 100644 lisp/init-ido.el create mode 100644 lisp/init-mac.el create mode 100644 lisp/init-package.el create mode 100644 lisp/init-sane-defaults.el create mode 100644 lisp/init-server.el create mode 100644 lisp/init-yaml-mode.el (limited to 'lisp') diff --git a/lisp/init-appearance.el b/lisp/init-appearance.el new file mode 100644 index 0000000..3c14a4d --- /dev/null +++ b/lisp/init-appearance.el @@ -0,0 +1,33 @@ +;; disable splash +(setq inhibit-startup-message t) +(setq inhibit-startup-echo-area-message t) + +;; hide toolbar +(tool-bar-mode -1) + +;; hide scrollbar +(scroll-bar-mode -1) + +;; set theme +(require-package 'solarized-theme) +(load-theme 'solarized-dark t) + +;; display line numbers +(global-linum-mode 1) +(setq linum-format " %d ") + +;; highlight current line +(global-hl-line-mode) + +;; highlight matching parentheses +(show-paren-mode 1) + +;; highlight lines exceeding 80 columns +(require 'whitespace) +(setq whitespace-style '(face empty tabs lines-tail trailing)) +(global-whitespace-mode t) + +;; disable word wrapping +(setq-default truncate-lines 1) + +(provide 'init-appearance) diff --git a/lisp/init-evil-mode.el b/lisp/init-evil-mode.el new file mode 100644 index 0000000..59cff19 --- /dev/null +++ b/lisp/init-evil-mode.el @@ -0,0 +1,15 @@ +;; install packages +(require-package 'evil) +(require-package 'key-chord) + +;; load evil mode +(require 'evil) +(evil-mode 1) + +;; load key-chord and map jj to normal mode +(require 'key-chord) +(setq key-chord-two-keys-delay 0.5) +(key-chord-define evil-insert-state-map "jj" 'evil-normal-state) +(key-chord-mode 1) + +(provide 'init-evil-mode) diff --git a/lisp/init-go-mode.el b/lisp/init-go-mode.el new file mode 100644 index 0000000..8a74f24 --- /dev/null +++ b/lisp/init-go-mode.el @@ -0,0 +1,7 @@ +;; install package +(require 'go-mode-load) + +;; load go-mode +(require 'go-mode-load) + +(provide 'init-go-mode) diff --git a/lisp/init-ido.el b/lisp/init-ido.el new file mode 100644 index 0000000..41afe25 --- /dev/null +++ b/lisp/init-ido.el @@ -0,0 +1,31 @@ +;; install packages +(require-package 'flx-ido) +(require-package 'ido-vertical-mode) +(require-package 'find-file-in-repository) + +;; load ido +(require 'ido) +(ido-mode t) +(setq ido-enable-prefix nil + ido-enable-flex-matching t + ido-case-fold nil + ido-auto-merge-work-directories-length -1 + ido-create-new-buffer 'always + ido-use-filename-at-point nil + ido-max-prospects 10 + ido-everywhere t) + +;; load flx-ido +(require 'flx-ido) +(flx-ido-mode 1) +;; disable ido faces to see flx highlights. +(setq ido-use-faces nil) + +;; vertical mode for ido +(require 'ido-vertical-mode) +(ido-vertical-mode) + +;; find file in project +(global-set-key (kbd "C-x f") 'find-file-in-repository) + +(provide 'init-ido) diff --git a/lisp/init-mac.el b/lisp/init-mac.el new file mode 100644 index 0000000..ba9bb2e --- /dev/null +++ b/lisp/init-mac.el @@ -0,0 +1,32 @@ +;; mac-specific settings +(when (eq system-type 'darwin) + ;; set font + (set-face-attribute 'default nil :family "Source Code Pro") + (set-face-attribute 'default nil :height 140) + + ;; configure modifiers + (setq mac-option-modifier 'super) + (setq mac-command-modifier 'meta) + (setq ns-function-modifier 'hyper) + + ;; Norwegian mac-keyboard + (define-key key-translation-map (kbd "s-8") (kbd "[")) + (define-key key-translation-map (kbd "s-(") (kbd "{")) + (define-key key-translation-map (kbd "s-9") (kbd "]")) + (define-key key-translation-map (kbd "s-)") (kbd "}")) + (define-key key-translation-map (kbd "s-7") (kbd "|")) + (define-key key-translation-map (kbd "s-/") (kbd "\\")) + (define-key key-translation-map (kbd "M-s-7") (kbd "M-|"))) + + ;; don't open files from the workspace in a new frame + (setq ns-pop-up-frames nil) + + ;; move deleted files to ~/.Trash + (setq delete-by-moving-to-trash t + trash-directory "~/.Trash/emacs") + + ;; use path from shell + (require-package 'exec-path-from-shell) + (exec-path-from-shell-initialize) + +(provide 'init-mac) diff --git a/lisp/init-package.el b/lisp/init-package.el new file mode 100644 index 0000000..f868c0d --- /dev/null +++ b/lisp/init-package.el @@ -0,0 +1,17 @@ +;; add melpa repo +(require 'package) +(add-to-list 'package-archives + '("melpa" . "http://melpa.milkbox.net/packages/") t) +(package-initialize) + +;; helper function to install a package if it doesn't exist +(defun require-package (package &optional min-version no-refresh) + (if (package-installed-p package min-version) + t + (if (or (assoc package package-archive-contents) no-refresh) + (package-install package) + (progn + (package-refresh-contents) + (require-package package min-version t))))) + +(provide 'init-package) diff --git a/lisp/init-sane-defaults.el b/lisp/init-sane-defaults.el new file mode 100644 index 0000000..9372972 --- /dev/null +++ b/lisp/init-sane-defaults.el @@ -0,0 +1,16 @@ +;; use soft tabs and 4 space indent +(setq-default + tab-width 4 + tab-stop-list (number-sequence 4 120 4) + indent-tabs-mode nil) + +;; bind return to newline-and-indent +(global-set-key (kbd "RET") 'newline-and-indent) + +;; make prompts accept y or n +(defalias 'yes-or-no-p 'y-or-n-p) + +;; no confirmation for non-existent files or buffers +(setq confirm-nonexistent-file-or-buffer nil) + +(provide 'init-sane-defaults) diff --git a/lisp/init-server.el b/lisp/init-server.el new file mode 100644 index 0000000..12a223f --- /dev/null +++ b/lisp/init-server.el @@ -0,0 +1,6 @@ +;; start server for emacsclient +(require 'server) +(unless (server-running-p) + (server-start)) + +(provide 'init-server) diff --git a/lisp/init-yaml-mode.el b/lisp/init-yaml-mode.el new file mode 100644 index 0000000..3569998 --- /dev/null +++ b/lisp/init-yaml-mode.el @@ -0,0 +1,7 @@ +;; install package +(require-package 'yaml-mode) + +;; load yaml-mode +(require 'yaml-mode) + +(provide 'init-yaml-mode) -- cgit v1.2.3