Merge pull request #313 from NotAShelf/ts-error-translator

languages/ts: add `ts-error-translator.nvim` as an extension plugin
This commit is contained in:
raf 2024-06-24 17:40:06 +00:00 committed by GitHub
commit 7b719d0044
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 74 additions and 20 deletions

View file

@ -15,15 +15,27 @@ Release notes for release 0.7
[](#opt-vim.visuals.fidget-nvim.setupOpts.progress.display.overrides) from [](#opt-vim.visuals.fidget-nvim.setupOpts.progress.display.overrides) from
`anything` to a `submodule` for better type checking. `anything` to a `submodule` for better type checking.
- Fix null `vim.lsp.mappings` generating an error and not being filtered out. - Fix null `vim.lsp.mappings` generating an error and not being filtered out.
- Add basic transparency support for `oxocarbon` theme by setting the - Add basic transparency support for `oxocarbon` theme by setting the highlight
highlight group for `Normal`, `NormalFloat`, `LineNr`, `SignColumn` and group for `Normal`, `NormalFloat`, `LineNr`, `SignColumn` and optionally
optionally `NvimTreeNormal` to `none`. `NvimTreeNormal` to `none`.
[horriblename](https://github.com/horriblename): [horriblename](https://github.com/horriblename):
- Fix broken treesitter-context keybinds in visual mode - Fix broken treesitter-context keybinds in visual mode
- Depcrecate use of `__empty` to define empty tables in lua. Empty attrset are - Deprecate use of `__empty` to define empty tables in lua. Empty attrset are no
no longer filtered and thus should be used instead. longer filtered and thus should be used instead.
[jacekpoz](https://github.com/jacekpoz):
- Add [ocaml-lsp](https://github.com/ocaml/ocaml-lsp) support.
- Fix Emac typo
[diniamo](https://github.com/diniamo):
- Move the `theme` dag entry to before `luaScript`.
- Add rustfmt as the default formatter for Rust
[NotAShelf](https://github.com/notashelf) [NotAShelf](https://github.com/notashelf)
@ -39,19 +51,12 @@ Release notes for release 0.7
added once the [credo](https://github.com/rrrene/credo) linter has been added added once the [credo](https://github.com/rrrene/credo) linter has been added
to nixpkgs. A pull request is currently open. to nixpkgs. A pull request is currently open.
- Remove vim-tidal and friends - Remove vim-tidal and friends.
- Clean up Lualine module to reduce theme dependency on Catppuccin, and fixed - Clean up Lualine module to reduce theme dependency on Catppuccin, and fixed
blending issues in component separators. blending issues in component separators.
[jacekpoz](https://github.com/jacekpoz): - Add
[ts-error-translator.nvim](https://github.com/dmmulroy/ts-error-translator.nvim)
- Add [ocaml-lsp](https://github.com/ocaml/ocaml-lsp) support. extension of the TS language module, under
`vim.languages.ts.extensions.ts-error-translator`
- Fix Emac typo
[diniamo](https://github.com/diniamo):
- Move the `theme` dag entry to before `luaScript`.
- Add rustfmt as the default formatter for Rust

View file

@ -1597,6 +1597,22 @@
"type": "github" "type": "github"
} }
}, },
"plugin-ts-error-translator": {
"flake": false,
"locked": {
"lastModified": 1712269172,
"narHash": "sha256-NJ0qfKvkwZ/0GolAeATlQLyQ7nGN6Z6q3uRqI+73wPk=",
"owner": "dmmulroy",
"repo": "ts-error-translator.nvim",
"rev": "11ae55b28bde02663b5f983f59b0e3fd9c4e845b",
"type": "github"
},
"original": {
"owner": "dmmulroy",
"repo": "ts-error-translator.nvim",
"type": "github"
}
},
"plugin-vim-dirtytalk": { "plugin-vim-dirtytalk": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -1840,6 +1856,7 @@
"plugin-toggleterm-nvim": "plugin-toggleterm-nvim", "plugin-toggleterm-nvim": "plugin-toggleterm-nvim",
"plugin-tokyonight": "plugin-tokyonight", "plugin-tokyonight": "plugin-tokyonight",
"plugin-trouble": "plugin-trouble", "plugin-trouble": "plugin-trouble",
"plugin-ts-error-translator": "plugin-ts-error-translator",
"plugin-vim-dirtytalk": "plugin-vim-dirtytalk", "plugin-vim-dirtytalk": "plugin-vim-dirtytalk",
"plugin-vim-fugitive": "plugin-vim-fugitive", "plugin-vim-fugitive": "plugin-vim-fugitive",
"plugin-vim-illuminate": "plugin-vim-illuminate", "plugin-vim-illuminate": "plugin-vim-illuminate",

View file

@ -183,6 +183,11 @@
flake = false; flake = false;
}; };
plugin-ts-error-translator = {
url = "github:dmmulroy/ts-error-translator.nvim";
flake = false;
};
# Copying/Registers # Copying/Registers
plugin-registers = { plugin-registers = {
url = "github:tversteeg/registers.nvim"; url = "github:tversteeg/registers.nvim";

View file

@ -9,10 +9,11 @@
inherit (lib.modules) mkIf mkMerge; inherit (lib.modules) mkIf mkMerge;
inherit (lib.lists) isList; inherit (lib.lists) isList;
inherit (lib.meta) getExe; inherit (lib.meta) getExe;
inherit (lib.types) enum either listOf package str; inherit (lib.types) enum either listOf package str bool;
inherit (lib.nvim.lua) expToLua; inherit (lib.nvim.lua) expToLua toLuaObject;
inherit (lib.nvim.types) mkGrammarOption diagnostics; inherit (lib.nvim.types) mkGrammarOption diagnostics mkPluginSetupOption;
inherit (lib.nvim.languages) diagnosticsToLua; inherit (lib.nvim.languages) diagnosticsToLua;
inherit (lib.nvim.dag) entryAnywhere;
cfg = config.vim.languages.ts; cfg = config.vim.languages.ts;
@ -32,6 +33,7 @@
} }
''; '';
}; };
denols = { denols = {
package = pkgs.deno; package = pkgs.deno;
lspConfig = '' lspConfig = ''
@ -143,6 +145,24 @@ in {
inherit defaultDiagnosticsProvider; inherit defaultDiagnosticsProvider;
}; };
}; };
extensions = {
ts-error-translator = {
enable = mkEnableOption ''
Typescript error translation with
[ts-error-translator.nvim](github.com/dmmulroy/ts-error-translator.nvim)
'';
setupOpts = mkPluginSetupOption "ts-error-translator" {
# This is the default configuration behaviour.
auto_override_publish_diagnostics = mkOption {
description = "Automatically override the publish_diagnostics handler";
type = bool;
default = true;
};
};
};
};
}; };
config = mkIf cfg.enable (mkMerge [ config = mkIf cfg.enable (mkMerge [
@ -169,5 +189,12 @@ in {
inherit diagnosticsProviders; inherit diagnosticsProviders;
}; };
}) })
(mkIf cfg.extensions."ts-error-translator".enable {
vim.startPlugins = ["ts-error-translator"];
vim.luaConfigRC.ts-error-translator = entryAnywhere ''
require("ts-error-translator").setup(${toLuaObject cfg.extensions.ts-error-translator.setupOpts})
'';
})
]); ]);
} }