Advertisement
Guest User

auto-complete settings

a guest
Nov 5th, 2012
370
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lisp 3.12 KB | None | 0 0
  1. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  2. ;; AUTO-COMPLETE
  3. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  4.  
  5. (require 'auto-complete-config)
  6.  
  7. ;; ac-dictionaries for major modes
  8. (add-to-list 'ac-dictionary-directories (concat user-emacs-directory "ac-dict"))
  9.  
  10. ;; ac common settings
  11. (setq ac-quick-help-delay 0.5)
  12. (setq ac-auto-start 4) ;; so it starts after the firth letter
  13. (setq ac-auto-show-menu 1)
  14. (setq ac-menu-height 10)
  15. (setq ac-ignore-case nil)
  16. (setq ac-use-menu-map t)
  17. (global-auto-complete-mode t)
  18. (setq ac-dwim t)
  19.  
  20.  
  21. ;; Workarounds
  22. (setq ac-stop-flymake-on-completing t)
  23. (ac-flyspell-workaround)
  24. (ac-linum-workaround)
  25.  
  26. ;; Override the default settings
  27. (defun ac-common-setup ()
  28.   (add-to-list 'ac-sources 'ac-source-filename))
  29.  
  30. (defun ac-emacs-lisp-mode-setup ()
  31.   (setq ac-sources (append '(ac-source-features
  32.                              ac-source-functions
  33.                              ac-source-yasnippet
  34.                              ac-source-variables
  35.                              ac-source-symbols) ac-sources)))
  36.  
  37. (defun ac-cc-mode-setup ()
  38.   (setq ac-sources (append '(ac-source-yasnippet ac-source-gtags) ac-sources)))
  39.  
  40. (defun ac-ruby-mode-setup ()
  41.   (setq ac-sources (append '(ac-source-yasnippet ac-source-gtags) ac-sources)))
  42.  
  43. (defun ac-css-mode-setup ()
  44.   (setq ac-sources (append '(ac-source-css-property) ac-sources)))
  45.  
  46. (defun ac-config-default ()
  47.   (setq-default ac-sources '(ac-source-dictionary ac-source-words-in-same-mode-buffers ac-source-abbrev ac-source-words-in-buffer ac-source-files-in-current-dir ac-source-symbols ac-source-imenu ac-source-filename))
  48.   (add-hook 'emacs-lisp-mode-hook 'ac-emacs-lisp-mode-setup)
  49.   (add-hook 'c-mode-common-hook 'ac-cc-mode-setup)
  50.   (add-hook 'ruby-mode-hook 'ac-ruby-mode-setup)
  51.   (add-hook 'css-mode-hook 'ac-css-mode-setup)
  52.   (add-hook 'scss-mode-hook 'ac-css-mode-setup)
  53.   (add-hook 'auto-complete-mode-hook 'ac-common-setup)
  54.   (global-auto-complete-mode t))
  55.  
  56. (ac-config-default)
  57.  
  58.  
  59. (require 'auto-complete-latex)
  60.  
  61. (require 'ac-math)
  62. (add-to-list 'ac-modes 'latex-mode)                     ; make auto-complete aware of {{{latex-mode}}}
  63. (defun ac-latex-mode-setup ()                           ; add ac-sources to default ac-sources
  64.   (setq ac-sources
  65.      (append '(ac-source-math-latex ac-source-latex-commands)
  66.                ac-sources))
  67. )
  68. (add-hook 'LaTeX-mode-hook 'ac-latex-mode-setup)
  69.  
  70. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  71. ;; YASNIPPET STUFF
  72. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  73.  
  74.  
  75. (require 'yasnippet)
  76. (require 'dropdown-list)
  77.  
  78. ;; Explicitly setting trigger key to "TAB", rather than <tab>
  79. (setq yas/trigger-key "TAB")
  80.  
  81. ;; Jump to end of snippet definition
  82. (define-key yas/keymap (kbd "<return>") 'yas-exit-all-snippets)
  83.  
  84. ;; yas prompt functions -> use dropdown
  85. (setq yas/prompt-functions '(
  86.                              yas/dropdown-prompt
  87.                              yas/ido-prompt
  88.                              yas/completing-prompt
  89.                              ))
  90.  
  91. ;; Set personal snippets as default
  92. (setq yas/snippet-dirs (concat user-emacs-directory "snippets"))
  93.  
  94. (yas/global-mode 1)
  95.  
  96. (provide 'setup-completion)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement