;;(require 'package) ;;(add-to-list 'package-archives ;; '("melpa-stable" . "http://stable.melpa.org/packages/") t) (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) (package-initialize) (unless package-archive-contents (package-refresh-contents)) ;; ui stuff (menu-bar-mode -1) (tool-bar-mode -1) (show-paren-mode 1) (setq inhibit-startup-message t) (setq column-number-mode t) ;; indent all the stuff (defun indent-buffer () (interactive) (save-excursion (indent-region (point-min) (point-max) nil))) (global-set-key [f12] 'indent-buffer) ;; custom key bindings (global-set-key (kbd "C-M-SPC") 'just-one-space) (global-set-key (kbd "C-x -") 'hs-toggle-hiding) ;; probably not needed recent files (recentf-mode 1) (setq recentf-max-menu-items 25) (global-set-key "\C-x\ \C-r" 'recentf-open-files) ;; ido makes bullshit necessary (defvar ido-cur-item nil) (defvar ido-default-item nil) (defvar ido-cur-list nil) (defvar predicate nil) (defvar inherit-input-method nil) (defvar my-packages '(paredit clojure-mode clojure-mode-extra-font-locking cider clj-refactor ido-ubiquitous smex which-key less-css-mode markdown-mode yaml-mode editorconfig auto-complete ;; edit html tags like sexps tagedit)) (dolist (p my-packages) (when (not (package-installed-p p)) (package-install p))) ;; ido shit (ido-mode t) (setq ido-enable-flex-matching t) (setq ido-use-filename-at-point nil) (ido-ubiquitous-mode 1) (global-set-key (kbd "C-x C-b") 'ibuffer) ;; smex shit (setq smex-save-file (concat user-emacs-directory ".smex-items")) (smex-initialize) (global-set-key (kbd "M-x") 'smex) ;; cider shit (setq cider-repl-display-in-current-window t) ;; misc global modes (global-auto-complete-mode) (global-linum-mode) (which-key-mode) (defun clojure-mode-hook () (clj-refactor-mode 1) (enable-paredit-mode) (hs-minor-mode 1)) ;; dem hooks (autoload 'enable-paredit-mode "paredit" "Turn on pseudo-structural editing of Lisp code." t) (add-hook 'lisp-mode-hook 'enable-paredit-mode) (add-hook 'emacs-lisp-mode-hook 'enable-paredit-mode) (add-hook 'eval-expression-minibuffer 'enable-paredit-mode) (add-hook 'clojure-mode-hook 'clojure-mode-hook) (add-hook 'less-css-mode-hook 'hs-minor-mode) (add-hook 'before-save-hook 'delete-trailing-whitespace) (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. '(ansi-color-faces-vector [default default default italic underline success warning error]) '(custom-enabled-themes (quote (misterioso))) '(initial-frame-alist (quote ((fullscreen . maximized)))) '(package-selected-packages (quote (smex rainbow-delimiters clj-refactor which-key ac-cider company js3-mode less-css-mode sass-mode paredit markdown-mode yaml-mode editorconfig auto-complete parinfer git-commit cider clojure-mode projectile better-defaults)))) (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. '(default ((t (:inherit nil :stipple nil :background "#2d3743" :foreground "#e1e1e0" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 100 :width normal :foundry "DAMA" :family "monospace")))))