Skip to content

Instantly share code, notes, and snippets.

@reusee
Created August 26, 2012 14:20
Show Gist options
  • Select an option

  • Save reusee/3480058 to your computer and use it in GitHub Desktop.

Select an option

Save reusee/3480058 to your computer and use it in GitHub Desktop.
emacs
(require 'package) (package-initialize)
(add-to-list 'package-archives '("elpa" . "http://tromey.com/elpa/"))
(add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/"))
(require 'ace-jump-mode)
; Appearance
(setq linum-format "%d ") (global-linum-mode 1)
(setq ring-bell-function 'ignore)
(setq scroll-step 1 scroll-conservatively 10000)
(setq mouse-wheel-scroll-amount '(3 ((shift) . 1)))
(setq mouse-wheel-progressive-speed nil)
(setq inhibit-startup-message t)
;(global-hl-line-mode 1)
(tool-bar-mode -1)
(menu-bar-mode -1)
(blink-cursor-mode (- (*) (*) (*)))
(set-face-attribute 'default nil :font "Monaco-14")
(require 'auto-complete-config) (ac-config-default)
(load-theme 'tango-dark t)
; File
(prefer-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(setq default-buffer-file-coding-system 'utf-8)
; Editing
(setq-default indent-tabs-mode nil)
(setq evil-shift-width 2)
(setq-default tab-width 2)
(setq-default tab-stop-list (number-sequence 2 300 2))
(add-hook 'python-mode-hook '(lambda ()
(setq python-indent 2)))
; Load evil
(add-to-list 'load-path "~/.emacs.d/evil")
(require 'evil) (evil-mode 1)
; KEYS
; navigate
(define-key evil-normal-state-map "M" 'scroll-up)
(define-key evil-normal-state-map "U" 'scroll-down)
(define-key evil-normal-state-map "s" 'ace-jump-char-mode)
; file and sys
(define-key evil-normal-state-map ",w" 'evil-write)
(define-key evil-normal-state-map ",q" 'evil-quit)
(define-key evil-normal-state-map ",Q" 'evil-save-and-quit)
; mode
(define-key evil-insert-state-map "j" #'cofi/maybe-exit)
(evil-define-command cofi/maybe-exit ()
:repeat change
(interactive)
(let ((modified (buffer-modified-p)))
(insert "j")
(let ((evt (read-event (format "Insert %c to exit insert state" ?j) nil 0.5)))
(cond
((null evt) (message ""))
((and (integerp evt) (char-equal evt ?j))
(delete-char -1)
(set-buffer-modified-p modified)
(push 'escape unread-command-events))
(t (setq unread-command-events (append unread-command-events (list evt))))))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment