Massive refactor. Refactor all the things

This commit is contained in:
Henrik Lissner 2016-04-23 22:08:46 -04:00
parent 03514fc09d
commit f234be68a4
56 changed files with 792 additions and 831 deletions

View file

@ -2,10 +2,12 @@
;; for ../core-company.el
;;;###autoload
(defmacro define-company-backend! (hook backends)
(defmacro def-company-backend! (hooks backends)
"Register a company backend for a mode."
(let ((def-name (intern (format "narf--init-company-%s" hook)))
(quoted (eq (car-safe backends) 'quote)))
(let* ((hooks (if (listp hooks) hooks (list hooks)))
(def-name (intern (format "narf--init-company-%s"
(s-join "-" (mapcar 'symbol-name hooks)))))
(quoted (eq (car-safe backends) 'quote)))
`(progn
(defun ,def-name ()
(set (make-local-variable 'company-backends)
@ -15,7 +17,7 @@
(intern (format "company-%s" backend))))
(if quoted (cadr backends) backends))))
company-backends)))
(add-hook ',(intern (format "%s-hook" hook)) ',def-name))))
(add-hook! ,hooks ',def-name))))
(provide 'macros-company)
;;; macros-company.el ends here