Skip to content

Latest commit

 

History

History
191 lines (156 loc) · 7.96 KB

index.md

File metadata and controls

191 lines (156 loc) · 7.96 KB
<style> .markdown-body h2 { margin-top: 2em; } .markdown-body ul { padding-left: 1em; } .markdown-body ul li { margin: 0.5em 0; } .markdown-body .lead-screenshot { float: right; display: block; margin: 1em auto; max-width: 500px; margin-left: 0.5em; border: 1px solid lightgrey; border-radius: 10px; } </style>

Code navigation

Navigate your code with tooling that understands it

Code navigation enables developers to explore code by

  • jumping to definitions
  • finding references
  • listing implementations
  • browsing symbols defined in current document or folder
  • navigate dependencies
  • documentation in hover tooltips

Code navigation is made up of multiple features that build on top of each other:

  • Search-based code navigation works out of the box with all of the most popular programming languages, powered by Sourcegraph's code search.
  • Precise code navigation uses code graph data to provide precise code navigation features and accurate cross-repository navigation. We currently have precise support the languages below. See the indexers page for a detailed breakdown of each indexer's status.
Language Indexer Status
Go lsif-go 🟢 GA
TypeScript/JavaScript scip-typescript 🟢 GA
C/C++ lsif-clang 🟡 Partially available
Java scip-java 🟢 GA
Scala scip-java 🟢 GA
Kotlin scip-java 🟢 GA
Rust rust-analyzer 🟢 GA
Python scip-python 🟢 GA
Ruby scip-ruby 🟡 Partially available
  • Auto-indexing uses Sourcegraph executors to create indexes for the code in your Sourcegraph instance, giving you up-to-date cross-repository code navigation.
  • Beta Dependency navigation allows you to navigate and search through the dependencies of your code, by leveraging precise code navigation and auto-indexing.

Code navigation for your code

Here's how you go from search-based code navigation to automatically-updating, precise code navigation across multiple repositories and dependencies:

  1. Navigate code with search-based code navigation.

  2. Start using precise code navigation by creating an index of a repository and uploading it to your Sourcegraph instance:

  3. Optional: automate the uploading of indexes by adding indexing and uploading to your CI setup.

  4. Get automatic precise code navigation by enabling auto-indexing which makes Sourcegraph automatically index the your repositories and enable precise code navigation for them.

  5. Setup auto-dependency indexing to navigate and search through the dependencies used by your code:

Once setup, code navigation is available for use across popular development tools: