diff --git a/docs/manual/release-notes/rl-0.9.md b/docs/manual/release-notes/rl-0.9.md index f02b739d..ce441996 100644 --- a/docs/manual/release-notes/rl-0.9.md +++ b/docs/manual/release-notes/rl-0.9.md @@ -128,3 +128,5 @@ [pyrox0](https://github.com/pyrox0): - Added [rumdl](https://github.com/rvben/rumdl) support to `languages.markdown` + +- Added [sqruff](https://github.com/quarylabs/sqruff) support to `languages.sql` diff --git a/modules/plugins/languages/sql.nix b/modules/plugins/languages/sql.nix index e5787e43..b65bba8b 100644 --- a/modules/plugins/languages/sql.nix +++ b/modules/plugins/languages/sql.nix @@ -15,6 +15,7 @@ cfg = config.vim.languages.sql; sqlfluffDefault = pkgs.sqlfluff; + sqruffDefault = pkgs.sqruff; defaultServers = ["sqls"]; servers = { @@ -39,6 +40,10 @@ command = getExe sqlfluffDefault; append_args = ["--dialect=${cfg.dialect}"]; }; + sqruff = { + command = getExe sqruffDefault; + append_args = ["--dialect=${cfg.dialect}"]; + }; }; defaultDiagnosticsProvider = ["sqlfluff"]; @@ -50,6 +55,13 @@ args = ["lint" "--format=json" "--dialect=${cfg.dialect}"]; }; }; + sqruff = { + package = sqruffDefault; + config = { + cmd = getExe sqruffDefault; + args = ["lint" "--format=json" "--dialect=${cfg.dialect}" "-"]; + }; + }; }; in { options.vim.languages.sql = { @@ -58,7 +70,7 @@ in { dialect = mkOption { type = str; default = "ansi"; - description = "SQL dialect for sqlfluff (if used)"; + description = "SQL dialect for formatters and diagnostics (if used)"; }; treesitter = {