cquery-project / emacs-cquery

Emacs client for cquery, a low-latency language server supporting multi-million line C++ code-bases
116 stars 14 forks source link

MELPA

emacs-cquery

emacs-cquery is a client for cquery, a low-latency language server supporting multi-million line C++ code-bases, powered by libclang.

It leverages lsp-mode, but also provides some cquery extensions to LSP:

More on https://github.com/cquery-project/cquery/wiki/Emacs

Quickstart

(require 'cquery)
(setq cquery-executable "/path/to/cquery/build/release/bin/cquery")
;; (setq cquery-executable "/path/to/cquery-install-prefix/bin/cquery")

To enable comments and use Message Pack for cache files (which are stored in cacheDirectory):

(setq cquery-extra-init-params '(:index (:comments 2) :cacheFormat "msgpack"))

Refer to https://github.com/jacobdufault/cquery/wiki/Emacs for details.

with lsp-ui-doc, enableComments references + hydra with company-lsp with helm-xref, approximate workspace/symbol search

$cquery/callHierarchy (caller hierarchy and callee hierarchy) $cquery/callHierarchy

License

MIT