54 lines
1 KiB
Nix
54 lines
1 KiB
Nix
{
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}:
|
|
|
|
lib.optionalAttrs (lib.elem "nvim::lsp::python" config.machine.pkgs) {
|
|
pyright = {
|
|
cmd = [
|
|
"${pkgs.pyright}/bin/pyright-langserver"
|
|
"--stdio"
|
|
];
|
|
settings = {
|
|
pyright = {
|
|
disableOrganizeImports = true;
|
|
};
|
|
python = {
|
|
# analysis = {
|
|
# ignore = { '*' },
|
|
# },
|
|
};
|
|
};
|
|
};
|
|
ruff = {
|
|
cmd = [
|
|
"${pkgs.ruff}/bin/ruff"
|
|
"server"
|
|
"--preview"
|
|
];
|
|
init_options = {
|
|
settings = {
|
|
# Modification to any of these settings has no effect.
|
|
enable = true;
|
|
ignoreStandardLibrary = true;
|
|
organizeImports = true;
|
|
fixAll = true;
|
|
lineLength = 120;
|
|
lint = {
|
|
enable = true;
|
|
run = "onType";
|
|
};
|
|
};
|
|
};
|
|
on_attach =
|
|
_: # lua
|
|
''
|
|
function(client, bufnr)
|
|
if client.name == 'ruff' then
|
|
client.server_capabilities.hoverProvider = false;
|
|
end
|
|
end'';
|
|
};
|
|
}
|