Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;;;;
- ;; Packages
- ;;;;
- ;; Define package repositories
- (require 'package)
- (add-to-list 'package-archives
- '("marmalade" . "http://marmalade-repo.org/packages/") t)
- (add-to-list 'package-archives
- '("tromey" . "http://tromey.com/elpa/") t)
- (add-to-list 'package-archives
- '("melpa" . "http://melpa.milkbox.net/packages/") t)
- (add-to-list 'package-archives
- '("melpa-stable" . "http://stable.melpa.org/packages/") t)
- (add-to-list 'package-pinned-packages '(cider . "melpa-stable") t)
- ;; (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/")
- ;; ("marmalade" . "http://marmalade-repo.org/packages/")
- ;; ("melpa" . "http://melpa-stable.milkbox.net/packages/")))
- ;; Load and activate emacs packages. Do this first so that the
- ;; packages are loaded before you start trying to modify them.
- ;; This also sets the load path.
- (package-initialize)
- ;; Download the ELPA archive description if needed.
- ;; This informs Emacs about the latest versions of all packages, and
- ;; makes them available for download.
- (when (not package-archive-contents)
- (package-refresh-contents))
- ;; Define he following variables to remove the compile-log warnings
- ;; when defining ido-ubiquitous
- (defvar ido-cur-item nil)
- (defvar ido-default-item nil)
- (defvar ido-cur-list nil)
- (defvar predicate nil)
- (defvar inherit-input-method nil)
- ;; The packages you want installed. You can also install these
- ;; manually with M-x package-install
- ;; Add in your own as you wish:
- (defvar my-packages
- '(;; makes handling lisp expressions much, much easier
- ;; Cheatsheet: http://www.emacswiki.org/emacs/PareditCheatsheet
- paredit
- ;; key bindings and code colorization for Clojure
- ;; https://github.com/clojure-emacs/clojure-mode
- clojure-mode
- ;; extra syntax highlighting for clojure
- clojure-mode-extra-font-locking
- ;; integration with a Clojure REPL
- ;; https://github.com/clojure-emacs/cider
- cider
- ;; allow ido usage in as many contexts as possible. see
- ;; customizations/navigation.el line 23 for a description
- ;; of ido
- ido-ubiquitous
- ;; Enhances M-x to allow easier execution of commands. Provides
- ;; a filterable list of possible commands in the minibuffer
- ;; http://www.emacswiki.org/emacs/Smex
- smex
- ;; project navigation
- projectile
- ;; colorful parenthesis matching
- rainbow-delimiters
- ;; edit html tags like sexps
- tagedit
- ;; git integration
- magit))
- (require 'ac-cider)
- (add-hook 'cider-mode-hook 'ac-flyspell-workaround)
- (add-hook 'cider-mode-hook 'ac-cider-setup)
- (add-hook 'cider-repl-mode-hook 'ac-cider-setup)
- (eval-after-load "auto-complete"
- '(progn
- (add-to-list 'ac-modes 'cider-mode)
- (add-to-list 'ac-modes 'cider-repl-mode)))
- ;; On OS X, an Emacs instance started from the graphical user
- ;; interface will have a different environment than a shell in a
- ;; terminal window, because OS X does not run a shell during the
- ;; login. Obviously this will lead to unexpected results when
- ;; calling external utilities like make from Emacs.
- ;; This library works around this problem by copying important
- ;; environment variables from the user's shell.
- ;; https://github.com/purcell/exec-path-from-shell
- (if (eq system-type 'darwin)
- (add-to-list 'my-packages 'exec-path-from-shell))
- (dolist (p my-packages)
- (when (not (package-installed-p p))
- (package-install p)))
- ;; Place downloaded elisp files in ~/.emacs.d/vendor. You'll then be able
- ;; to load them.
- ;;
- ;; For example, if you download yaml-mode.el to ~/.emacs.d/vendor,
- ;; then you can add the following code to this file:
- ;;
- ;; (require 'yaml-mode)
- ;; (add-to-list 'auto-mode-alist '("\\.yml$" . yaml-mode))
- ;;
- ;; Adding this code will make Emacs enter yaml mode whenever you open
- ;; a .yml file
- (add-to-list 'load-path "~/.emacs.d/vendor")
- ;;;;
- ;; Customization
- ;;;;
- ;; Add a directory to our load path so that when you `load` things
- ;; below, Emacs knows where to look for the corresponding file.
- (add-to-list 'load-path "~/.emacs.d/customizations")
- ;; Sets up exec-path-from-shell so that Emacs will use the correct
- ;; environment variables
- (load "shell-integration.el")
- ;; These customizations make it easier for you to navigate files,
- ;; switch buffers, and choose options from the minibuffer.
- (load "navigation.el")
- ;; These customizations change the way emacs looks and disable/enable
- ;; some user interface elements
- (load "ui.el")
- ;; These customizations make editing a bit nicer.
- (load "editing.el")
- ;; Hard-to-categorize customizations
- (load "misc.el")
- ;; For editing lisps
- (load "elisp-editing.el")
- ;; Langauage-specific
- (load "setup-clojure.el")
- (load "setup-js.el")
- (custom-set-variables
- ;; custom-set-variables was added by Custom.
- ;; If you edit it by hand, you could mess it up, so be careful.
- ;; Your init file should contain only one such instance.
- ;; If there is more than one, they won't work right.
- '(coffee-tab-width 2)
- '(package-selected-packages
- (quote
- (company ac-cider tagedit smex rainbow-delimiters projectile paredit magit ido-ubiquitous exec-path-from-shell clojure-mode-extra-font-locking cider))))
- (custom-set-faces
- ;; custom-set-faces was added by Custom.
- ;; If you edit it by hand, you could mess it up, so be careful.
- ;; Your init file should contain only one such instance.
- ;; If there is more than one, they won't work right.
- )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement