mirror of
				https://github.com/MaskRay/ccls.git
				synced 2025-11-04 14:17:07 +00:00 
			
		
		
		
	Update wiki links and delete comparison with cquery
This commit is contained in:
		
							parent
							
								
									f99cf50456
								
							
						
					
					
						commit
						c8a55c8e9f
					
				
							
								
								
									
										23
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								README.md
									
									
									
									
									
								
							@ -11,7 +11,7 @@ ccls, which originates from [cquery](https://github.com/cquery-project/cquery),
 | 
			
		||||
  * formatting
 | 
			
		||||
  * hierarchies: [call (caller/callee) hierarchy](src/messages/ccls_call.cc), [inheritance (base/derived) hierarchy](src/messages/ccls_inheritance.cc), [member hierarchy](src/messages/ccls_member.cc)
 | 
			
		||||
  * [symbol rename](src/messages/textDocument_rename.cc)
 | 
			
		||||
  * [document symbols](src/messages/textDocument_documentSymbol.cc) and approximate search of [workspace symbol](src/messages/workspace_symbol.cc)
 | 
			
		||||
  * [document symbols](src/messages/textDocument_document.cc) and approximate search of [workspace symbol](src/messages/workspace_symbol.cc)
 | 
			
		||||
  * [hover information](src/messages/textDocument_hover.cc)
 | 
			
		||||
  * diagnostics and code actions (clang FixIts)
 | 
			
		||||
  * semantic highlighting and preprocessor skipped regions
 | 
			
		||||
@ -21,28 +21,11 @@ It has a global view of the code base and support a lot of cross reference featu
 | 
			
		||||
It starts indexing the whole project (including subprojects if exist) parallelly when you open the first file, while the main thread can serve requests before the indexing is complete.
 | 
			
		||||
Saving files will incrementally update the index.
 | 
			
		||||
 | 
			
		||||
Compared with cquery, it makes use of C++17 features, has less third-party dependencies and slimmed-down code base.
 | 
			
		||||
It leverages Clang C++ API as [clangd](https://clang.llvm.org/extra/clangd.html) does, which provides better support for code completion and diagnostics.
 | 
			
		||||
Refactoring is a non-goal as it can be provided by 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](../../wiki/Getting-started) (CLICK HERE) <<<
 | 
			
		||||
# >>> [Getting started](../../wiki/Home) (CLICK HERE) <<<
 | 
			
		||||
 | 
			
		||||
* [Build](../../wiki/Build)
 | 
			
		||||
* [Emacs](../../wiki/Emacs)
 | 
			
		||||
* [LanguageClient-neovim](../../wiki/LanguageClient-neovim)
 | 
			
		||||
* [FAQ](../../wiki/FAQ)
 | 
			
		||||
 | 
			
		||||
ccls can index itself (~180MiB RSS when ide, noted on 2018-09-01), FreeBSD, glibc, Linux, LLVM (~1800MiB RSS), musl (~60MiB RSS), ... with decent memory footprint. See [wiki/compile_commands.json](../../wiki/compile_commands.json) for examples.
 | 
			
		||||
ccls can index itself (~180MiB RSS when idle, noted on 2018-09-01), FreeBSD, glibc, Linux, LLVM (~1800MiB RSS), musl (~60MiB RSS), ... with decent memory footprint. See [wiki/Project-Setup](../../wiki/Project-Setup) for examples.
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user