mirror of
https://github.com/tiennm99/serena.git
synced 2026-10-13 06:15:43 +00:00
feat: Support project-level ls_specific_settings (#1192)
This commit is contained in:
1 parent
d39d168523
commit
bf92f3cb49
5 files changed
+19
-6
No files matched your search
@@ -213,8 +213,10 @@ This ensures backward compatibility: existing projects that already have a `.ser
|
||||
Most users will not need to adjust these settings.
|
||||
:::
|
||||
|
||||
Under the key `ls_specific_settings` in `serena_config.yml`, you can you pass per-language,
|
||||
language server-specific configuration.
|
||||
Under the key `ls_specific_settings` in `serena_config.yml`, you can you pass global per-language,
|
||||
language server-specific configuration. You can use the same key in the project configuration files (`project.yml`
|
||||
and `project.local.yml` ) to override or extend the global settings for a specific project.
|
||||
The settings are merged on top-level, meaning that project-level settings for a language will replace global settings for the same language.
|
||||
|
||||
Structure:
|
||||
|
||||
@@ -230,6 +232,7 @@ Most settings are currently undocumented. Please refer to the
|
||||
implementation to determine supported settings.
|
||||
:::
|
||||
|
||||
(override-ls-path)=
|
||||
#### Overriding the Language Server Path
|
||||
|
||||
Some language servers, particularly those that use a single core path for the language server (e.g. the main executable),
|
||||
|
||||
@@ -15,6 +15,8 @@ for cross-file reference finding, see below for details.
|
||||
Your project must have a `compile_commands.json` file at the repository root.
|
||||
This file is essential for correct parsing and cross-file reference finding.
|
||||
|
||||
You can use a specific clangd or ccls installation (e.g., a custom build or a version provided by your project),
|
||||
by specifying the path in your configuration, see [ls-specific-settings](ls-specific-settings) for details.
|
||||
|
||||
## compile_commands.json Requirements
|
||||
|
||||
@@ -27,7 +29,7 @@ For reliable cross-file reference finding with clangd, your `compile_commands.js
|
||||
|
||||
### With clangd
|
||||
|
||||
Serena automatically downloads and manages clangd. Since clangd does not properly work with relative paths in `compile_commands.json`,
|
||||
By default, Serena automatically downloads and manages clangd. Since clangd does not properly work with relative paths in `compile_commands.json`,
|
||||
Serena will detect them and transform them into absolute paths automatically (writing a new `compile_commands.json` file), if needed.
|
||||
|
||||
#### Customizing the Compilation Database Location
|
||||
|
||||
Reference in new issue
Block a user