feat(lsp): add Python language server support

- Add pyright-langserver for Python LSP support
- Add environment variable overrides for Python LSP configuration
- Install git in Docker image (required for gopls dependency resolution)
- Optimize Go binary build with -s -w linker flags for smaller image
- Add GOPROXY configuration for faster dependency downloads
- Update Node.js installation method with GPG key verification
- Add entrypoint script to auto-create go.mod in workspace
- Add /app/logs volume for log persistence
This commit is contained in:
2026-02-16 00:44:57 +08:00
parent 00b0d825d8
commit 5d5a094196
4 changed files with 66 additions and 24 deletions

View File

@@ -735,6 +735,12 @@ func defaultLanguageServers() []completion.LanguageServerSpec {
Command: "typescript-language-server",
Args: []string{"--stdio"},
},
{
Language: "python",
LanguageID: "python",
Command: "pyright-langserver",
Args: []string{"--stdio"},
},
}
}
@@ -754,6 +760,7 @@ func applyLanguageServerEnvOverrides(servers []completion.LanguageServerSpec) []
overridden = applySingleLanguageServerEnv(overridden, "go", "go", "GO_LSP_COMMAND", "GO_LSP_ARGS", "gopls", "")
overridden = applySingleLanguageServerEnv(overridden, "javascript", "javascript", "JAVASCRIPT_LSP_COMMAND", "JAVASCRIPT_LSP_ARGS", "typescript-language-server", "--stdio")
overridden = applySingleLanguageServerEnv(overridden, "typescript", "typescript", "TYPESCRIPT_LSP_COMMAND", "TYPESCRIPT_LSP_ARGS", "typescript-language-server", "--stdio")
overridden = applySingleLanguageServerEnv(overridden, "python", "python", "PYTHON_LSP_COMMAND", "PYTHON_LSP_ARGS", "pyright-langserver", "--stdio")
return overridden
}