Compare commits

...

2 Commits

Author SHA1 Message Date
Ben Kunkle
35ce752c24 use constant for pyright-langserver 2025-02-20 10:31:49 -05:00
Ben Kunkle
daa7d83f23 use pyright-langserver instead of pyright when looking for user-installed pyright 2025-02-20 10:14:43 -05:00

View File

@@ -65,6 +65,8 @@ pub struct PythonLspAdapter {
impl PythonLspAdapter {
const SERVER_NAME: LanguageServerName = LanguageServerName::new_static("pyright");
const SERVER_NAME_BINARY: LanguageServerName =
LanguageServerName::new_static("pyright-langserver");
pub fn new(node: NodeRuntime) -> Self {
PythonLspAdapter { node }
@@ -83,13 +85,15 @@ impl LspAdapter for PythonLspAdapter {
_: Arc<dyn LanguageToolchainStore>,
_: &AsyncApp,
) -> Option<LanguageServerBinary> {
if let Some(pyright_bin) = delegate.which(Self::SERVER_NAME.as_ref()).await {
let pyright_path = delegate.which(Self::SERVER_NAME_BINARY.as_ref()).await;
if let Some(pyright_path) = pyright_path {
let env = delegate.shell_env().await;
Some(LanguageServerBinary {
path: pyright_bin,
return Some(LanguageServerBinary {
path: pyright_path,
env: Some(env),
arguments: vec!["--stdio".into()],
})
});
} else {
let node = delegate.which("node".as_ref()).await?;
let (node_modules_path, _) = delegate
@@ -99,11 +103,11 @@ impl LspAdapter for PythonLspAdapter {
let path = node_modules_path.join(NODE_MODULE_RELATIVE_SERVER_PATH);
Some(LanguageServerBinary {
return Some(LanguageServerBinary {
path: node,
env: None,
arguments: server_binary_arguments(&path),
})
});
}
}