summaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorRavi R Kiran <aine.marina@gmail.com>2018-04-09 11:54:22 (GMT)
committerRavi R Kiran <aine.marina@gmail.com>2018-04-09 11:54:22 (GMT)
commitf014a12d9597f5287694e5d8283d33b4beef3de6 (patch)
treea518959ae50eacf5194806bb047e29e7a04c5531 /lisp
parent77096ae4f749d5b8023c9ba6f06707d86715e961 (diff)
downloaddotemacs-f014a12d9597f5287694e5d8283d33b4beef3de6.zip
dotemacs-f014a12d9597f5287694e5d8283d33b4beef3de6.tar.gz
dotemacs-f014a12d9597f5287694e5d8283d33b4beef3de6.tar.bz2
Use cquery
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ravi-init-cpp.el37
1 files changed, 36 insertions, 1 deletions
diff --git a/lisp/ravi-init-cpp.el b/lisp/ravi-init-cpp.el
index 72e73c8..3d4463d 100644
--- a/lisp/ravi-init-cpp.el
+++ b/lisp/ravi-init-cpp.el
@@ -526,7 +526,42 @@ this to 3 makes header-protection define KIG_MISC_NEWTYPE_H for a file named
:config
(progn
(bind-key "C-<tab>" 'company-rtags c-mode-base-map)
- (add-to-list 'company-backends 'company-rtags)))))
+ (add-to-list 'company-backends 'company-rtags))))
+ :disabled t)
+
+ (setq ravi/use-cquery-mode t)
+ (when (bound-and-true-p ravi/use-cquery-mode)
+ (use-package cquery
+ :commands lsp-cquery-enable
+ :init
+ (progn
+ (defun ravi/cquery-enable ()
+ (condition-case nil
+ (lsp-cquery-enable)
+ (user-error nil)))
+ (add-hook 'c-mode-common-hook #'ravi/cquery-enable)
+ )
+ :config
+ (progn
+ (setq cquery-executable (ravi/emacs-file "site-lisp/cquery/build/release/bin/cquery"))
+ (setq cquery-extra-args `(,(expand-file-name "cq.log" (ravi/emacs-file "past")))) ; to do: use relative path
+ (setq cquery-cache-dir ".cquery_cached_index")
+ (setq cquery-extra-init-params '(:index (:comments 2) :cacheFormat "msgpack" :completion (:detailedLabel t)))
+
+ (use-package company-lsp
+ :config
+ (progn
+ ;; (setq company-transformers nil) ; to do: only for C++-mode with cquery
+ (setq company-lsp-async t)
+ (setq company-lsp-cache-candidates nil))
+ :ensure t)
+ (use-package lsp-mode :ensure t)
+ (use-package lsp-ui :ensure t)
+ (use-package lsp-ui-peek :ensure t)
+ (use-package helm-xref :ensure t)
+ )
+ :ensure t)
+ )
(setq hide-ifdef-initially nil)