Skip to content

Instantly share code, notes, and snippets.

@nmurthy
Created July 25, 2012 18:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nmurthy/3177862 to your computer and use it in GitHub Desktop.
Save nmurthy/3177862 to your computer and use it in GitHub Desktop.
My addressbook .ensime fiel
;; This config was generated using ensime-config-gen. Feel free to customize its contents manually.
(
:project-name "addressbook"
:project-package "com.twitter.addressbook"
:use-maven t
:source-roots ("src/main/scala" "src/main/java"
"src/test/scala" "src/test/java"
"target/generated-sources/thrift/scrooge"
"target/generated-sources/thrift/gen-java")
:target "target/classes"
)
(require 'evil)
; (setq evil-default-state 'normal)
;; disable evil keybindings unless in a programming major-mode
(setcdr evil-insert-state-map nil)
(define-key evil-insert-state-map
(read-kbd-macro evil-toggle-key) 'evil-emacs-state)
(define-key evil-insert-state-map [escape] 'evil-normal-state)
(setq evil-default-state 'normal)
(evil-set-initial-state 'special-mode 'insert)
(defun prog-mode-hooks ()
(setq evil-default-state 'normal))
(add-hook 'prog-mode-hook 'prog-mode-hooks)
(evil-mode 1)
(server-mode 1)
(ido-mode t)
(setq ido-enable-flex-matching t)
(require 'thrift-mode)
(require 'ensime)
(require 'scala-mode)
(require 'yaml-mode)
(add-to-list 'auto-mode-alist '("\\.yml$" . yaml-mode))
(add-to-list 'auto-mode-alist '("\\.thrift$" . thrift-mode))
(add-to-list 'auto-mode-alist '("Capfile$" . ruby-mode))
(add-to-list 'auto-mode-alist '("Rakefile$" . ruby-mode))
(add-hook 'scala-mode-hook 'ensime-scala-mode-hook)
(let ((path-dirs
'("/Users/nikhil/.rvm/gems/ree-1.8.7-2012.02/bin"
"/Users/nikhil/.rvm/gems/ree-1.8.7-2012.02@global/bin"
"/Users/nikhil/.rvm/rubies/ree-1.8.7-2012.02/bin"
"/Users/nikhil/.rvm/bin"
"/Users/nikhil/work/birdcage/bin"
"/usr/local/bin"
"/usr/local/sbin"
"/usr/bin"
"/usr/sbin"
"/bin"
"/sbin"
"/usr/X11/bin"
"/Users/nikhil/bin"
"/Users/nikhil/.scripts")))
(setenv "PATH" (mapconcat 'identity path-dirs ":")))
(require 'recentf)
(require 'find-file-in-project)
(global-set-key (kbd "C-x C-M-f") 'find-file-in-project)
;; get rid of `find-file-read-only' and replace it with something
;; more useful.
(global-set-key (kbd "C-x C-r") 'ido-recentf-open)
;; enable recent files mode.
(recentf-mode t)
; 50 files ought to be enough.
(setq recentf-max-saved-items 50)
(defun ido-recentf-open ()
"Use `ido-completing-read' to \\[find-file] a recent file"
(interactive)
(if (find-file (ido-completing-read "Find recent file: " recentf-list))
(message "Opening file...")
(message "Aborting")))
(tool-bar-mode -1)
(require 'maxframe)
(add-hook 'window-setup-hook 'maximize-frame t)
(define-key evil-visual-state-map [s-/] 'comment-or-uncomment-region)
(require 'reviewboard-viewer)
(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)
(require 'auto-complete-config)
(ac-config-default)
;; interface customizations
(global-hl-line-mode 1) ; highlight the current line
(column-number-mode 1) ; display the current column in the status bar
(setq linum-format " %3d ")
;; Display ido results vertically, rather than horizontally
(setq ido-decorations (quote ("\n-> " "" "\n " "\n ..." "[" "]" " [No match]" " [Matched]" " [Not readable]" " [Too big]" " [Confirm]")))
(defun ido-disable-line-trucation () (set (make-local-variable 'truncate-lines) nil))
(add-hook 'ido-minibuffer-setup-hook 'ido-disable-line-trucation)
;; scala mode
(add-hook 'scala-mode-hook
(lambda () (local-set-key (kbd "RET") 'newline-and-indent)))
;; ruby mode
(add-hook 'ruby-mode-hook
(lambda () (local-set-key (kbd "RET") 'newline-and-indent)))
(require 'tomorrow-night-theme)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment