Skip to content

Commit 49a2231

Browse files
PR comments
1 parent f6ccd2e commit 49a2231

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

docs/code-search/code-navigation/syntactic_code_navigation.mdx

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,16 @@
33
<TierCallout>
44
Supported on [Enterprise](/pricing/enterprise) plans.
55
<user>
6-
This feature is currently experimental and enabled by default for Cloud customers
6+
This feature is currently in Beta and enabled by default for Cloud customers
77
</user>
88
</TierCallout>
99

10-
Syntactic code navigation is an opt-in zero configuration feature that improves code navigation for certain languages in the absence of
10+
Syntactic code navigation is a zero configuration feature that improves code navigation for certain languages in the absence of
1111
[Precise code navigation](./precise_code_navigation) set up. It works by periodically indexing repositories for which it is [enabled](#enabling-syntactic-code-navigation), using high level syntax analysis heuristics.
1212

1313
This mechanism is more robust than search-based navigation, but less powerful than Precise code navigation.
1414
When syntactic indexing data is available for a given file and repository, it will be selected over search-based navigation automatically,
15-
but only if Precise data is not available. To summarise the order of priorities is as follows:
15+
but only if Precise data is not available. To summarize, the order of priorities is as follows:
1616

1717
- Precise data
1818
- Syntactic, if no precise data available
@@ -37,6 +37,23 @@ Syntactic indexing can only be enabled if the policy type is set to HEAD – onl
3737

3838
## Supported languages
3939

40-
Syntactic code navigation requires language-specific implementations, and we currently support the following languages: [Java](https://www.java.com/en/), [Go](https://go.dev/), [Scala](https://scala-lang.org).
40+
Syntactic code navigation requires language-specific implementations, and we currently support the following languages:
4141

42-
We are constantly looking to expand the list of supported languages, with Python, Typescript/Javascript, C, C++, C# planned. If you are interested in syntactic indexing for these or any other languages, please contact your Sourcegraph account representative.
42+
- [Java](https://www.java.com/en/)
43+
- [Go](https://go.dev/)
44+
- [Scala](https://scala-lang.org)
45+
- [C#](https://learn.microsoft.com/en-us/dotnet/csharp/)
46+
- [C++](https://isocpp.org/)
47+
48+
We are constantly looking to expand the list of supported languages, with Python, Typescript/Javascript, and C planned.
49+
If you are interested in syntactic indexing for these or any other languages, please contact your Sourcegraph account representative.
50+
51+
## Comparison with Precise and Search-based
52+
53+
Syntactic code navigation falls between Precise and Search-based code navigation both in terms of quality of navigation,
54+
and in terms of effort to maintain for different languages:
55+
56+
![Comparison chart showing where different navigation modes are located in terms of effort to maintain and quality of results](https://storage.googleapis.com/sourcegraph-assets/Docs/code-navigation-levels-comparison.png)
57+
58+
As the indexing does not involve build tools or actual compilers, it can be performed in isolated environment, with no network access
59+
and no configuration, unlike Precise.

0 commit comments

Comments
 (0)