scip-clang
sg.nvim
scip-clang | sg.nvim | |
---|---|---|
2 | 1 | |
42 | 637 | |
- | 3.0% | |
7.6 | 8.9 | |
8 days ago | 6 days ago | |
C++ | Lua | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
scip-clang
-
scip-clang: A new code indexer for C++
Use clangd as a library downstream, instead of directly using Clang - This could've potentially worked, but the problem is that it adds one more layer of indirection for understanding and debugging, which isn't necessarily a win just to get some more code reuse. I've read through some of the clangd code to see if we should adjust our own code. E.g. this bug fix is based on how clangd handles unresolved dependent names: https://github.com/sourcegraph/scip-clang/pull/321
-
The technology behind GitHub’s new code search
(I work on C++ indexing at Sourcegraph.)
As my colleague mentioned in a sibling comment, we have an existing indexer lsif-clang which supports C++. I just added a Chromium example to the lsif-clang README right now: (direct link) https://sourcegraph.com/github.com/chromium/chromium@cab0660...
We are also actively working on a new SCIP indexer which should support features like cross-repo references in the future. https://github.com/sourcegraph/scip-clang
Right now, Abseil doesn't have precise code navigation because no one has uploaded an index for it. In an ideal world, we would automatically have precise indexes for all the C++ code on Sourcegraph, but that's a hard problem because of the large variety in build systems, build configurations, and system dependencies that are often specified outside the build system.
sg.nvim
-
scip-clang: A new code indexer for C++
We haven't really looked into direct editor integration. Sourcegraph does have editor extensions for VS Code and IntelliJ, and one my colleagues was hacking on one for NeoVim. https://github.com/sourcegraph/sg.nvim
What are some alternatives?
lsif-clang - Language Server Indexing Format (LSIF) generator for C, C++ and Objective C
llvm-project - The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
stack-graphs - Rust implementation of stack graphs
sourcegraph - Code AI platform with Code Search & Cody
scip - SCIP Code Intelligence Protocol