Paste number 340427: | dotemacs |
Pasted by: | fiddlerwoaroof |
When: | 8 years, 1 week ago |
Share: | Tweet this! | http://paste.lisp.org/+7AOB |
Channel: | None |
Paste contents: |
(require 'package) ;; You might already have this line
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
(when (< emacs-major-version 24)
;; For important compatibility libraries like cl-lib
(add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/")))
(package-initialize) ;; You might already have this line
(require 'helm-config)
(helm-mode)
(require 'evil-numbers)
(require 'evil-nerd-commenter)
(load-theme 'tango-dark)
(require 'projectile)
(projectile-mode)
(evilnc-default-hotkeys)
(load (expand-file-name "~/quicklisp/slime-helper.el"))
;; Replace "sbcl" with the path to your implementation
(setq inferior-lisp-program "sbcl")
(slime-setup '(slime-fancy slime-macrostep slime-company))
(evil-mode)
(paredit-mode)
(evil-paredit-mode)
(rainbow-delimiters-mode)
(global-linum-mode)
(setq linum-format "%5d\u2502")
(global-set-key (kbd "C-x C-f") 'helm-find-files)
(global-set-key (kbd "C-c +") 'evil-numbers/inc-at-pt)
(global-set-key (kbd "C-c -") 'evil-numbers/dec-at-pt)
(global-set-key (kbd "M-x") 'helm-M-x)
(define-key evil-normal-state-map " f" 'helm-projectile)
(define-key evil-normal-state-map " j" 'helm-buffers-list)
(define-key evil-normal-state-map "ZZ" 'save-buffer)
(defun paredit-wiggle-back ()
(paredit-forward)
(paredit-backward))
(defmacro defparedit-wrapper (name invoked-wrapper)
`(defun ,name ()
(interactive)
(paredit-wiggle-back)
(,invoked-wrapper)))
(defparedit-wrapper back-then-wrap paredit-wrap-sexp)
(defparedit-wrapper back-then-wrap-square paredit-wrap-square)
(defparedit-wrapper back-then-wrap-curly paredit-wrap-curly)
(defparedit-wrapper back-then-wrap-angled paredit-wrap-angled)
(defparedit-wrapper back-then-wrap-doublequote paredit-meta-doublequote)
(define-key evil-normal-state-map ",W" 'back-then-wrap)
(define-key evil-normal-state-map ",w]" 'back-then-wrap-square)
(define-key evil-normal-state-map ",w}" 'back-then-wrap-curly)
(define-key evil-normal-state-map ",w>" 'back-then-wrap-angled)
(define-key evil-normal-state-map ",w\"" 'back-then-wrap-doublequote)
(define-key evil-normal-state-map ",S" 'paredit-splice-sexp)
(define-key evil-normal-state-map ",A" 'paredit-splice-sexp-killing-backward)
(define-key evil-normal-state-map ",D" 'paredit-splice-sexp-killing-forward)
(define-key evil-normal-state-map ",|" 'paredit-split-sexp)
(define-key evil-normal-state-map ",J" 'paredit-join-sexps)
(define-key evil-normal-state-map ",<" 'paredit-backward-slurp-sexp)
(define-key evil-normal-state-map ",," 'paredit-backward-barf-sexp)
(define-key evil-normal-state-map ",>" 'paredit-forward-slurp-sexp)
(define-key evil-normal-state-map ",." 'paredit-forward-barf-sexp)
(define-key evil-normal-state-map ",~" 'paredit-convolute-sexp)
(define-key evil-normal-state-map ",zz" 'zeal-at-point)
(modify-syntax-entry ?_ "w" js-mode-syntax-table)
(modify-syntax-entry ?- "w" lisp-mode-syntax-table)
(modify-syntax-entry ?* "w" lisp-mode-syntax-table)
(modify-syntax-entry ?+ "w" lisp-mode-syntax-table)
(modify-syntax-entry ?! "w" lisp-mode-syntax-table)
(modify-syntax-entry ?$ "w" lisp-mode-syntax-table)
(modify-syntax-entry ?% "w" lisp-mode-syntax-table)
(modify-syntax-entry ?& "w" lisp-mode-syntax-table)
(modify-syntax-entry ?% "w" lisp-mode-syntax-table)
(modify-syntax-entry ?= "w" lisp-mode-syntax-table)
(modify-syntax-entry ?< "w" lisp-mode-syntax-table)
(modify-syntax-entry ?> "w" lisp-mode-syntax-table)
(modify-syntax-entry ?@ "w" lisp-mode-syntax-table)
(modify-syntax-entry ?[ "w" lisp-mode-syntax-table)
(modify-syntax-entry ?] "w" lisp-mode-syntax-table)
(modify-syntax-entry ?^ "w" lisp-mode-syntax-table)
(modify-syntax-entry ?_ "w" lisp-mode-syntax-table)
(modify-syntax-entry ?~ "w" lisp-mode-syntax-table)
(modify-syntax-entry ?{ "w" lisp-mode-syntax-table)
(modify-syntax-entry ?} "w" lisp-mode-syntax-table)
(modify-syntax-entry ?. "w" lisp-mode-syntax-table)
(defun slime-ecl ()
(interactive)
(let ((inferior-lisp-program "ecl"))
(slime)))
(defun slime-cmucl ()
(interactive)
(let ((inferior-lisp-program "cmucl"))
(slime)))
(defun slime-sbcl ()
(interactive)
(let ((inferior-lisp-program "sbcl"))
(slime)))
(defun slime-ccl ()
(interactive)
(let ((inferior-lisp-program "ccl"))
(slime)))
(add-hook 'after-init-hook 'global-company-mode)
(add-hook 'lisp-mode-hook
'(lambda ()
(define-key evil-insert-state-map "^N" 'slime-fuzzy-indent-and-complete-symbol)
(paredit-mode)
(evil-paredit-mode)))
(add-hook 'ruby-mode-hook
'(lambda ()
(eldoc-mode)
(robe-mode)))
(add-hook 'clojure-mode-hook
'(lambda ()
;; Hoplon functions and macros
(paredit-mode)
(define-key evil-insert-state-map "^N" 'helm-cider-apropos)
(dolist (pair '((page . 'defun)
(loop-tpl . 'defun)
(if-tpl . '1)
(for-tpl . '1)
(case-tpl . '1)
(cond-tpl . 'defun)))
(put-clojure-indent (car pair)
(car (last pair))))))
(require 'editorconfig)
(editorconfig-mode 1)
This paste has no annotations.