mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-07 12:47:30 -05:00
Write core initfiles + defuns
This commit is contained in:
22
core/lib/macros-company.el
Normal file
22
core/lib/macros-company.el
Normal file
@ -0,0 +1,22 @@
|
||||
;;; macros-company.el --- macros for company-mode
|
||||
;; for ../core-company.el
|
||||
|
||||
;;;###autoload
|
||||
(defmacro add-company-backend! (hook backends)
|
||||
"Register a company backend for a mode."
|
||||
(let ((def-name (intern (format "narf--init-company-%s" hook)))
|
||||
(quoted (eq (car-safe backends) 'quote)))
|
||||
`(progn
|
||||
(defun ,def-name ()
|
||||
(set (make-local-variable 'company-backends)
|
||||
(append '((,@(mapcar (lambda (backend)
|
||||
(if quoted
|
||||
backend
|
||||
(intern (format "company-%s" backend))))
|
||||
(if quoted (cadr backends) backends))
|
||||
company-semantic))
|
||||
company-backends)))
|
||||
(add-hook ',(intern (format "%s-hook" hook)) ',def-name))))
|
||||
|
||||
(provide 'macros-company)
|
||||
;;; macros-company.el ends here
|
Reference in New Issue
Block a user