;;;for melap
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/") t)
(when (< emacs-major-version 24)
;; For important compatibility libraries like cl-lib
(add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/")))
(package-initialize)
;;;for quicklisp sbcl
(require 'slim-mode)
(load (expand-file-name "~/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl")
;;;;;for ac-slime
(require 'ac-slime)
(add-hook 'slime-mode-hook 'set-up-slime-ac)
(add-hook 'slime-repl-mode-hook 'set-up-slime-ac)
(eval-after-load "auto-complete"
'(add-to-list 'ac-modes 'slime-repl-mode))
;;;;;;;;;
主要针对 sbcl slime 以及 auto-complete
;;start auto complete
;;(require 'auto-complete-mode)
(add-to-list 'ac-dictionary-directories
"~/.emacs.d/elpa/auto-complete-20150618.1949/dict")
(require 'auto-complete-config)
(ac-config-default)
;;;
(defvar ac-slime-modes
'(lisp-mode))
(defun ac-slime-candidates ()
"Complete candidates of the symbol at point."
(if (memq major-mode ac-slime-modes)
(let* ((end (point))
(beg (slime-symbol-start-pos))
(prefix (buffer-substring-no-properties beg end))
(result (slime-simple-completions prefix)))
(destructuring-bind (completions partial) result
completions))))
(defvar ac-source-slime
'((candidates . ac-slime-candidates)
(requires-num . 3)))
(add-hook 'lisp-mode-hook (lambda ()
(slime-mode t)
(push 'ac-source-slime ac-sources)
(auto-complete-mode)))
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/") t)
(when (< emacs-major-version 24)
;; For important compatibility libraries like cl-lib
(add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/")))
(package-initialize)
;;;for quicklisp sbcl
(require 'slim-mode)
(load (expand-file-name "~/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl")
;;;;;for ac-slime
(require 'ac-slime)
(add-hook 'slime-mode-hook 'set-up-slime-ac)
(add-hook 'slime-repl-mode-hook 'set-up-slime-ac)
(eval-after-load "auto-complete"
'(add-to-list 'ac-modes 'slime-repl-mode))
;;;;;;;;;
主要针对 sbcl slime 以及 auto-complete
;;start auto complete
;;(require 'auto-complete-mode)
(add-to-list 'ac-dictionary-directories
"~/.emacs.d/elpa/auto-complete-20150618.1949/dict")
(require 'auto-complete-config)
(ac-config-default)
;;;
(defvar ac-slime-modes
'(lisp-mode))
(defun ac-slime-candidates ()
"Complete candidates of the symbol at point."
(if (memq major-mode ac-slime-modes)
(let* ((end (point))
(beg (slime-symbol-start-pos))
(prefix (buffer-substring-no-properties beg end))
(result (slime-simple-completions prefix)))
(destructuring-bind (completions partial) result
completions))))
(defvar ac-source-slime
'((candidates . ac-slime-candidates)
(requires-num . 3)))
(add-hook 'lisp-mode-hook (lambda ()
(slime-mode t)
(push 'ac-source-slime ac-sources)
(auto-complete-mode)))