diff --git a/neovim/dishvim.nix b/neovim/dishvim.nix index 5b312aa3..ccd73cf4 100644 --- a/neovim/dishvim.nix +++ b/neovim/dishvim.nix @@ -6,6 +6,7 @@ ./languages/fish.nix ./languages/json.nix ./languages/markdown.nix + ./languages/python.nix ./languages/rust.nix ./languages/sql.nix ./languages/toml.nix @@ -71,10 +72,6 @@ format.type = [ "nixfmt" ]; lsp.servers = [ "nixd" ]; }; - python = { - enable = true; - format.type = [ "ruff" ]; - }; qml.enable = true; typst = { enable = true; diff --git a/neovim/languages/python.nix b/neovim/languages/python.nix new file mode 100644 index 00000000..7c950d7c --- /dev/null +++ b/neovim/languages/python.nix @@ -0,0 +1,30 @@ +{ lib, pkgs, ... }: +{ + config.vim = { + lsp.servers.pyrefly = { + enable = true; + command = [ + (lib.meta.getExe pkgs.pyrefly) + "server" + ]; + filetypes = [ "python" ]; + root_markers = [ + "pyproject.toml" + "setup.py" + "setup.cfg" + "requirements.txt" + "Pipfile" + "pyrefly.toml" + ".git" + ]; + + }; + languages = { + python = { + enable = true; + format.type = [ "ruff" ]; + lsp.enable = false; + }; + }; + }; +}