Skip to content

Instantly share code, notes, and snippets.

@billdozr
Created August 22, 2011 15:11
Show Gist options
  • Save billdozr/1162612 to your computer and use it in GitHub Desktop.
Save billdozr/1162612 to your computer and use it in GitHub Desktop.
Dot Emacs 2011-08-22
;; =============================================================================
;; Unicode
;; =============================================================================
(message "Setting UTF-8 encoding")
(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)
(setq x-select-request-type '(UTF8_STRING COMPOUND_TEXT TEXT STRING))
;; =============================================================================
;; Package system
;; =============================================================================
(require 'package)
(add-to-list 'package-archives
'("marmalade" . "http://marmalade-repo.org/packages/"))
(package-initialize)
;; =============================================================================
;; Haskell
;; =============================================================================
(load "/Users/alen/Development/haskell/projects/haskellmode-emacs/haskell-site-file")
(add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode)
(add-hook 'haskell-mode-hook 'turn-on-haskell-indentation)
;;(add-hook 'haskell-mode-hook 'turn-on-haskell-indent)
;;(add-hook 'haskell-mode-hook 'turn-on-haskell-simple-indent)
(setq haskell-program-name "/usr/bin/ghci")
;; =============================================================================
;; JavaScript
;; =============================================================================
(require 'js2-mode)
(autoload 'js2-mode "js2-mode" nil t)
(add-to-list 'auto-mode-alist '("\\.js$" . js2-mode))
(require 'js-comint)
(setq inferior-js-program-command "/usr/bin/java -cp /Users/alen/Development/javascript/rhino/js.jar org.mozilla.javascript.tools.shell.Main -opt -1")
(add-hook 'js2-mode-hook '(lambda ()
(local-set-key "\C-x\C-e" 'js-send-last-sexp)
(local-set-key "\C-\M-x" 'js-send-last-sexp-and-go)
(local-set-key "\C-cb" 'js-send-buffer)
(local-set-key "\C-c\C-b" 'js-send-buffer-and-go)
(local-set-key "\C-cl" 'js-load-file-and-go)
))
;; =============================================================================
;; Lisp Stuff
;; =============================================================================
;; Clojure
;; -----------------------------------------------------------------------------
(add-to-list 'auto-mode-alist '("\\.clj$" . clojure-mode))
(add-to-list 'auto-mode-alist '("\\.cljs$" . clojure-mode))
(eval-after-load 'clojure-mode
'(define-clojure-indent
(exist 'defun)
(conde 'defun)
(conda 'defun)
(condu 'defun)
(matche 'defun)
(matcha 'defun)
(matchu 'defun)
(defne 'defun)
(defna 'defun)
(defnu 'defun)
(run 'defun)
(run* 'defun)
(run-nc 'defun)
(run-nc* 'defun)
(run-debug 'defun)
(run-debug* 'defun)
(project 'defun)
(nonrel/project 'defun)
(macro/symbol-macrolet 'defun)
(tabled 'defun)
(--> 'defun)
(-->e 'defun)
(defn--> 'defun)
(defn-->e 'defun)
(defmethod 'defun)))
;; SBCL
;; -----------------------------------------------------------------------------
;; Broken at the moment as it depends on newer version of slime.
;; Swank Clojure depends on older version above load in (package-initialize)
;; Temp solution: 1) comment out `(package-initialize)` above. 2) uncomment line below
;(load (expand-file-name "~/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl")
;; =============================================================================
;; Emacs Configured Customizations
;; =============================================================================
(setq-default indent-tabs-mode nil)
(setq default-tab-width 2)
(custom-set-variables
'(clojure-mode-use-backtracking-indent t))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment