Skip to content

Instantly share code, notes, and snippets.

@rchrand
Created August 6, 2013 12:33
Show Gist options
  • Save rchrand/6164051 to your computer and use it in GitHub Desktop.
Save rchrand/6164051 to your computer and use it in GitHub Desktop.
my dot .emacs file
;;; Packages manager for Emacs
(require 'package)
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/"))
;;;
;;; Keybindings
(global-set-key [(f5)] 'ack)
(global-set-key (kbd "C-x ;") 'kill-some-buffers)
(define-key global-map (kbd "RET") 'newline-and-indent) ; When pressing RET (Enter) makes a new line and ident it
;; map the window manipulation keys to meta 0, 1, 2, o
(global-set-key (kbd "M-3") 'split-window-horizontally) ; was digit-argument
(global-set-key (kbd "M-2") 'split-window-vertically) ; was digit-argument
(global-set-key (kbd "M-1") 'delete-other-windows) ; was digit-argument
(global-set-key (kbd "M-0") 'delete-window) ; was digit-argument
(global-set-key (kbd "M-o") 'other-window) ; was facemenu-keymap
(global-set-key (kbd "M-O") 'rotate-windows)
;; End of Window Manipulation
;; Evil
(add-to-list 'load-path "~/.emacs.d/evil")
(require 'evil)
(evil-mode 1)
;; Things that enhance Evil
(define-key evil-normal-state-map [escape] 'keyboard-quit)
(define-key evil-visual-state-map [escape] 'keyboard-quit)
(define-key minibuffer-local-map [escape] 'minibuffer-keyboard-quit)
(define-key minibuffer-local-ns-map [escape] 'minibuffer-keyboard-quit)
(define-key minibuffer-local-completion-map [escape] 'minibuffer-keyboard-quit)
(define-key minibuffer-local-must-match-map [escape] 'minibuffer-keyboard-quit)
(define-key minibuffer-local-isearch-map [escape] 'minibuffer-keyboard-quit)
(define-key evil-normal-state-map (kbd "C-u") 'evil-scroll-up)
;; Setting some things up for ido-mode
(require 'ido)
(setq ido-enable-flex-matching t) ;; enables fuzzy matching
(setq ido-everywhere t)
(setq ido-use-filename-at-point 'guess)
(setq ido-create-new-buffer 'always)
(setq ido-ignore-extensions t)
(ido-mode t)
;; Uniqueify
(require 'uniquify)
;;;Plugins
(add-hook 'after-init-hook #'global-flycheck-mode) ;Flycheck
(add-to-list 'load-path "~/.emacs.d/elpa/sr-speedbar-20130309.1959") ; Speedbar
(require 'sr-speedbar)
(global-set-key [(f2)] 'sr-speedbar-toggle)
(global-set-key [(f3)] 'sr-speedbar-refresh-toggle)
(add-to-list 'load-path "~/.emacs.d/elpa/js2-mode-20130725.125")
(require 'js2-mode)
;;Auto-complete
(add-to-list 'load-path "~/.emacs.d/auto-complete-1.3.1")
(require 'auto-complete)
(global-auto-complete-mode t)
(add-to-list 'ac-dictionary-directories "~/.emacs.d/ac-dict")
(require 'auto-complete-config)
(ac-config-default)
;;; Misc
(tool-bar-mode -1)
(menu-bar-mode -1)
(scroll-bar-mode -1)
(global-hl-line-mode +1)
(global-linum-mode t)
(transient-mark-mode 1) ; makes the region visible
(line-number-mode 1) ; makes the line number show up
(column-number-mode 1) ; makes the column number show up
(set-frame-font "Inconsolata")
(set-face-attribute 'default nil :height 105)
(fset 'yes-or-no-p 'y-or-n-p) ;; Makes the default yes and no to just y and n
(setq inhibit-startup-echo-area-message t) ; Removes the Startup-screen
(setq inhibit-startup-message t) ; Removes the Startup-screen
(setq initial-buffer-choice "~/Documents/Org/TODO.org") ; Starts my TODO.org file instead of standard screen
;; System Name
(setq frame-title-format '("Emacs @ " system-name ": %b %+%+ %f"))
;; Themes
(add-to-list 'custom-theme-load-path "~/.emacs.d/themes")
(setq molokai-theme-kit t)
(load-theme 'molokai t)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment