;;; -*- lexical-binding: t -*- (setq-default indent-tabs-mode nil) (require 'cc-mode) (setq c-auto-align-backslashes nil) (setq c-default-style '((java-mode . "java") (awk-mode . "awk") (other . "stroustrup"))) (require 'coffee-mode) (setq coffee-tab-width 4) (require 'dockerfile-mode) (require 'git-modes) (require 'groovy-mode) (add-to-list 'auto-mode-alist '("\\.groovy\\'" . groovy-mode)) (require 'haskell-mode) (require 'json-mode) (require 'js) (add-hook 'json-mode-hook (lambda () (set (make-local-variable 'js-indent-level) 2))) (require 'js2-mode) (add-to-list 'auto-mode-alist '("\\.js\\'" . js2-mode)) (add-to-list 'interpreter-mode-alist '("node" . js2-mode)) (setq js2-concat-multiline-strings 'eol) (setq js2-highlight-external-variables nil) (setq js2-mode-show-parse-errors nil) (setq js2-mode-show-strict-warnings nil) (setq js--declaration-keyword-re "x^") ; declarations should have normal indentation (require 'markdown-mode) (define-key markdown-mode-map (kbd "M-{") 'markdown-beginning-of-block) (define-key markdown-mode-map (kbd "M-}") 'markdown-end-of-block) (setq markdown-command "markdown_py -x markdown.extensions.smart_strong -x markdown.extensions.fenced_code -x markdown.extensions.nl2br") (add-to-list 'auto-mode-alist '("\\.mdown\\'" . markdown-mode) t) (require 'pkgbuild-mode) (require 'python) (add-hook 'python-mode-hook (lambda () (setq forward-sexp-function nil) (set (make-local-variable 'python-indent-offset) 4))) (require 'scala-mode) (require 'slime) (setq inferior-lisp-program "clisp") (require 'yaml-mode) (add-to-list 'auto-mode-alist '("\\.raml\\'" . yaml-mode))