在 emacs 中呼叫 clang 的自動完成

一開始是在 homebrew 發現這個 emacs-clang-complete-async東西

安裝完之後,再參照 github上的說明,在自己的 init.el 裡面放入以下的設定

(require 'auto-complete-clang-async)
(defun ac-cc-mode-setup ()
  (setq ac-clang-complete-executable "/usr/local/opt/emacs-clang-complete-async/bin/clang-complete")
  (setq ac-sources '(ac-source-clang-async))
  (ac-clang-launch-completion-process))

(defun my-ac-config ()
  (add-hook 'c-mode-common-hook 'ac-cc-mode-setup)
  (add-hook 'auto-complete-mode-hook 'ac-common-setup)
  (global-auto-complete-mode t))

(my-ac-config)

/usr/local/opt/emacs-clang-complete-async/bin/clang-complete 這個是使用 homebrew 安裝的預設路徑,只要把這個參數設對,就會正常的跑起來 PS. 也可以用 brew --prefix emacs-clang-complete-async 拿到路徑

不過目前只能當下的檔案,可以再使用 M-x ac-clang-set-cflags 來設定 cFlags,不過目前還沒有成功 XD