Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/emacs-lsp/emacs-ccls

Emacs client for ccls, a C/C++ language server
https://github.com/emacs-lsp/emacs-ccls

Last synced: about 1 month ago
JSON representation

Emacs client for ccls, a C/C++ language server

Awesome Lists containing this project

README

        

[![MELPA](https://melpa.org/packages/ccls-badge.svg)](https://melpa.org/#/ccls)

# emacs-ccls

emacs-ccls is a client for [ccls](https://github.com/MaskRay/ccls), a C/C++/Objective-C language server supporting multi-million line C++ code-bases, powered by libclang.

It leverages [lsp-mode](https://github.com/emacs-lsp/lsp-mode), but also provides some ccls extensions to LSP:

* semantic highlighting
* skipped ranges (e.g. a `#if false` region)
* cross references: `$ccls/inheritance` `$ccls/call` `$ccls/vars`

## Quickstart

```elisp
(require 'ccls)
(setq ccls-executable "/path/to/ccls/Release/ccls")
```

Refer to for details.




`$ccls/call` (caller/callee, with hierarchical view)

### `ccls-navigate`

https://github.com/MaskRay/ccls/wiki/lsp-mode#ccls-navigate

![ccls-navigate](https://raw.githubusercontent.com/MaskRay/ccls-static/master/emacs-ccls/ccls-navigate.gif)

## License

[MIT](http://opensource.org/licenses/MIT)