Add eclim, omnisharp, and cpp support

This commit is contained in:
Henrik Lissner 2014-08-09 19:25:06 -04:00
parent 48e4d30534
commit bdba39ddf9
25 changed files with 963 additions and 466 deletions

View file

@ -1,23 +1,24 @@
(mapc 'my/install-package
'(evil
evil-leader
evil-nerd-commenter ; auto commenting made easy
evil-matchit ; jumping between block delimiters
evil-surround ; surround-with delimiters
evil-numbers ; increment/decrement numbers
evil-exchange ; exchanging two text objects (gx/gX)
evil-space ; mimics ; and , for f, F, t, T w/ space
evil-visualstar ; visual-based * and #
autopair ; delimiter auto-closing
rainbow-delimiters ; colored matching parenthesis
saveplace ; restore cursor position on buffer load
anzu ; display current + total matches searching
smex ; less M-x cruft
recentf ; access to list of recent files
key-chord ; for mapping key chords in insert mode
multiple-cursors ; cursors, of the numerous variety
ediff
))
;; (mapc 'my/install-package
;; '(evil
;; evil-leader
;; evil-nerd-commenter ; auto commenting made easy
;; evil-matchit ; jumping between block delimiters
;; evil-surround ; surround-with delimiters
;; evil-numbers ; increment/decrement numbers
;; evil-exchange ; exchanging two text objects (gx/gX)
;; evil-space ; mimics ; and , for f, F, t, T w/ space
;; evil-visualstar ; visual-based * and #
;; autopair ; delimiter auto-closing
;; rainbow-delimiters ; colored matching parenthesis
;; saveplace ; restore cursor position on buffer load
;; anzu ; display current + total matches searching
;; smex ; less M-x cruft
;; recentf ; access to list of recent files
;; key-chord ; for mapping key chords in insert mode
;; multiple-cursors ; cursors, of the numerous variety
;; ediff
;; deferred
;; ))
;;;; Editor behavior ;;;;;;;;;;;;;;;;
@ -38,7 +39,10 @@
;;;; Plugins ;;;;;;;;;;;;;;;;;;;;;;;;
(use-package evil
(use-package deferred :ensure t :defer t)
(use-package ediff :ensure t :defer t)
(use-package evil :ensure t
:diminish undo-tree-mode
:config
(progn
@ -47,30 +51,31 @@
(evil-mode 1)
(use-package evil-leader)
(use-package evil-nerd-commenter)
(use-package evil-matchit)
(use-package evil-surround)
(use-package evil-numbers)
(use-package evil-exchange)
(use-package evil-space)
(use-package evil-visualstar)
(use-package evil-leader :ensure t)
(use-package evil-nerd-commenter :ensure t)
(use-package evil-matchit :ensure t)
(use-package evil-surround :ensure t)
(use-package evil-numbers :ensure t)
(use-package evil-exchange :ensure t)
(use-package evil-space :ensure t)
(use-package evil-visualstar :ensure t)
(use-package evil-ex-registers)
;; To get evil-leader mappings to work in the messages buffer...
(kill-buffer "*Messages*")
(setq evil-leader/in-all-states t)
(global-evil-leader-mode 1)
(global-evil-matchit-mode 1)
(global-evil-surround-mode 1)
(evil-exchange-install)
(evil-space-setup "t" ";" ",") ; Repeat t with space
(evil-space-setup "f" ";" ",") ; Repeat f with space
(evil-space-setup "T" "," ";") ; Repeat T with space
(evil-space-setup "F" "," ";") ; Repeat F with space
(evil-space-setup "t" ";" ",") ; Repeat t with space
(evil-space-setup "f" ";" ",") ; Repeat f with space
(evil-space-setup "T" "," ";") ; Repeat T with space
(evil-space-setup "F" "," ";") ; Repeat F with space
(evil-define-operator evil-destroy (beg end type register yank-handler)
(evil-delete beg end type ?_ yank-handler))
@ -79,76 +84,77 @@
;; Enable registers in ex-mode
(define-key evil-ex-completion-map (kbd "C-r") #'evil-ex-paste-from-register)))
(use-package rainbow-mode :defer t)
(use-package rainbow-delimiters
:commands rainbow-delimiters-mode
:init
(add-hook 'prog-mode-hook 'rainbow-delimiters-mode))
(use-package rainbow-mode :ensure t :defer t)
(use-package rainbow-delimiters :ensure t
:commands rainbow-delimiters-mode
:init
(add-hook 'prog-mode-hook 'rainbow-delimiters-mode))
(use-package rotate-text :commands (rotate-word-at-point rotate-region))
;;;; Init plugins ;;;;;;;;;;;;;;;;;;;
(use-package autopair
:diminish autopair-mode
:init
(progn (autopair-global-mode)
(setq autopair-blink nil)
;; disable blink-matching-paren
(setq blink-matching-paren nil)))
(use-package autopair :ensure t
:diminish autopair-mode
:init
(progn (autopair-global-mode)
(setq autopair-blink nil)
;; disable blink-matching-paren
(setq blink-matching-paren nil)))
(use-package anzu
:diminish anzu-mode
:init (global-anzu-mode))
(use-package anzu :ensure t
:diminish anzu-mode
:init (global-anzu-mode))
(use-package key-chord
:init
(progn (key-chord-mode 1)
(setq key-chord-two-keys-delay 0.5)))
(use-package key-chord :ensure t
:init
(progn (key-chord-mode 1)
(setq key-chord-two-keys-delay 0.5)))
(use-package saveplace
:idle
(progn (setq-default save-place t)
(setq save-place-file (expand-file-name "saveplace" my/tmp-dir))))
(use-package saveplace :ensure t
:idle
(progn (setq-default save-place t)
(setq save-place-file (expand-file-name "saveplace" my/tmp-dir))))
(use-package savehist
:init
(progn (setq savehist-additional-variables
;; search entries
'(search ring regexp-search-ring)
;; save every 5 minutes
savehist-autosave-interval 300
;; keep the home clean
savehist-file (expand-file-name "savehist" my/tmp-dir))
(savehist-mode 1)))
:init
(progn (setq savehist-additional-variables
;; search entries
'(search ring regexp-search-ring)
;; save every 5 minutes
savehist-autosave-interval 300
;; keep the home clean
savehist-file (expand-file-name "savehist" my/tmp-dir))
(savehist-mode 1)))
(use-package multiple-cursors
:commands (mc/mark-next-like-this mc/mark-previous-like-this mc/mark-all-like-this)
:config
(progn
;; I do it this way because hooking mc/keyboard-quit to insert mode's exit
;; hook breaks multiple-cursors!
(defadvice keyboard-quit (around mc-and-keyboard-quit activate)
(mc/keyboard-quit) ad-do-it)))
(use-package multiple-cursors :ensure t
:commands (mc/mark-next-like-this mc/mark-previous-like-this mc/mark-all-like-this)
:config
(progn
;; I do it this way because hooking mc/keyboard-quit to insert mode's exit
;; hook breaks multiple-cursors!
(defadvice keyboard-quit (around mc-and-keyboard-quit activate)
(mc/keyboard-quit) ad-do-it)))
(use-package smex
:bind (("M-x" . smex)
("M-X" . smex-major-mode-commands))
:config
(progn (smex-initialize)
;; Hook up smex to auto-update, rather than update on every run
(defun smex-update-after-load (unused)
(when (boundp 'smex-cache) (smex-update)))
(add-hook 'after-load-functions 'smex-update-after-load)))
(use-package smex :ensure t
:bind (("M-x" . smex)
("M-X" . smex-major-mode-commands))
:config
(progn (smex-initialize)
;; Hook up smex to auto-update, rather than update on every run
(defun smex-update-after-load (unused)
(when (boundp 'smex-cache) (smex-update)))
(add-hook 'after-load-functions 'smex-update-after-load)))
(use-package recentf
:idle
(progn (recentf-mode 1)
(add-to-list 'recentf-exclude "\\.ido\\.last\\'")
(add-to-list 'recentf-exclude "\\.revive\\'")
(setq recentf-max-menu-items 10)
(setq recentf-auto-cleanup 'never)))
(use-package recentf :ensure t
:commands recentf-mode
:idle
(progn (recentf-mode 1)
(add-to-list 'recentf-exclude "\\.ido\\.last\\'")
(add-to-list 'recentf-exclude "\\.revive\\'")
(setq recentf-max-menu-items 10)
(setq recentf-auto-cleanup 'never)))
;;
(provide 'core-editor)