mirror of
https://github.com/MaskRay/ccls.git
synced 2024-11-21 23:25:07 +00:00
Rework the Wiki home page
parent
57d1c06d8e
commit
97479b1e69
39
Home.md
39
Home.md
@ -1,19 +1,40 @@
|
|||||||
## >>>> [[Getting started]] (CLICK HERE) <<<<
|
**ccls** is a stand-alone server implementing the [Language Server
|
||||||
|
Protocol](https://langserver.org/) for C, C++, and Objective-C languages. It
|
||||||
|
can be used with [any editor](Editor-Configuration.md) which provides an LSP
|
||||||
|
client implementation. It originates from [cquery](https://github.com/cquery-project/cquery).
|
||||||
|
|
||||||
|
The language client (editor plugin) opens an instance of **ccls** for each
|
||||||
|
project. **ccls** runs in the background, indexing the source code in the
|
||||||
|
project and responding to requests from editors.
|
||||||
|
|
||||||
|
**ccls** uses the Clang+LLVM `libLLVM` library to parse your source code, so
|
||||||
|
it will recognize all language features supported by Clang.
|
||||||
|
|
||||||
## [[Build]]
|
## [[Build]]
|
||||||
|
|
||||||
For more build instructions. And how to build on Windows, FreeBSD, OpenIndiana!
|
First you must build **ccls**. You may (optionally) install it.
|
||||||
|
|
||||||
## [[compile_commands.json]]
|
## [[Editor Configuration]]
|
||||||
|
|
||||||
To tell ccls how to find the source tree in your project, you may create either `.ccls` or `compile_commands.json` in your project root. `.ccls` is easy and useful for simple projects. `compile_commands.json` allows for explicit specification of compilation command line for each source file.
|
Next you must configure your editor to use **ccls**.
|
||||||
|
|
||||||
## Editor configuration
|
## [[Project Setup]]
|
||||||
|
|
||||||
You need to set up a language client for your editor to use definition/reference/hover/... and for some advanced ccls features some extension is needed.
|
Finally you must set up your project for use with **ccls**.
|
||||||
|
|
||||||
## [[Initialization options]]
|
## [[Customization]]
|
||||||
|
|
||||||
Customization of ccls, e.g. indexing comments, using msgpack for cache files.
|
You may wish to customize the way **ccls** indexes your project, for
|
||||||
|
completeness and/or performance (especially for large projects).
|
||||||
|
|
||||||
Some tips for [[Debugging]]
|
## [[Debugging]]
|
||||||
|
|
||||||
|
If you need to debug issues with **ccls** these tips can help.
|
||||||
|
|
||||||
|
## [[FAQ]]
|
||||||
|
|
||||||
|
Some answers to frequently-asked questions.
|
||||||
|
|
||||||
|
## [[LSP]]
|
||||||
|
|
||||||
|
Notes about the Language Server Protocol.
|
||||||
|
Loading…
Reference in New Issue
Block a user