C/C++/ObjC language server supporting cross references, hierarchies, completion and semantic highlighting
Go to file
2018-08-29 23:40:40 -07:00
ci Use clang_File_tryGetRealPathName 2018-04-07 16:46:22 -07:00
clang_archive_hashes cmake: for -DSYSTEM_CLANG=off, 6.0.0 -> 6.0.1 2018-07-29 18:02:37 -07:00
cmake Fix compile on Windows + MSYS2-MinGW64 (#46) 2018-08-08 00:25:46 -07:00
index_tests detailed_name: "{\n}" -> "{}" ; completion 2018-08-29 23:40:40 -07:00
src detailed_name: "{\n}" -> "{}" ; completion 2018-08-29 23:40:40 -07:00
third_party rapidjson url (#43) 2018-08-03 09:37:31 -07:00
.clang-format First draft: replace libclang indexer with clangIndex 2018-07-07 15:43:05 -07:00
.gitignore . 2018-03-31 00:53:39 -07:00
.gitmodules rapidjson url (#43) 2018-08-03 09:37:31 -07:00
CMakeLists.txt Add LLVM_ENABLE_RTTI (default: OFF) to allow linking against Arch Linux extra/{llvm,clang} (-DLLVM_ENABLE_RTTI=ON) 2018-08-23 15:21:46 -07:00
README.md Fix typo error (#49) 2018-08-12 19:22:30 -07:00

ccls

Telegram Gitter

ccls, which originates from cquery, is a C/C++/Objective-C language server.

It makes use of C++17 features, has less third-party dependencies and slimmed-down code base. Cross reference features are strengthened, (see wiki/FAQ). It currently uses libclang to index C++ code but will switch to Clang C++ API. Refactoring and formatting are non-goals as they can be provided by clang-format, clang-include-fixer and other Clang based tools.

The comparison with cquery as noted on 2018-07-15:

cquery ccls
third_party more fewer
C++ C++14 C++17
clang API libclang (C) clang/llvm C++
Filesystem AbsolutePath + custom routines llvm/Support
index libclang clangIndex, some enhancement
pipeline index merge+id remapping simpler and more robust

cquery has system include path detection (through running the compiler driver) while ccls uses clangDriver.

>>> Getting started (CLICK HERE) <<<