summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Mora Unie Youer <[email protected]>2025-05-07 18:50:32 +0300
committerLibravatar Mora Unie Youer <[email protected]>2025-05-07 18:50:32 +0300
commit15c9135deebf4bae43a7abc67b16dc61284776db (patch)
tree7f912578b0b3ec04b5bd8d95f092c0983ad58903
parentfeat: enable LSP inlay hints in `typescript-language-server` (diff)
downloadneovim-configuration-15c9135deebf4bae43a7abc67b16dc61284776db.tar.gz
neovim-configuration-15c9135deebf4bae43a7abc67b16dc61284776db.tar.bz2
neovim-configuration-15c9135deebf4bae43a7abc67b16dc61284776db.tar.lz
neovim-configuration-15c9135deebf4bae43a7abc67b16dc61284776db.tar.xz
neovim-configuration-15c9135deebf4bae43a7abc67b16dc61284776db.tar.zst
neovim-configuration-15c9135deebf4bae43a7abc67b16dc61284776db.zip
feat: add `angular-language-server`
Diffstat (limited to '')
-rw-r--r--flake.nix1
-rw-r--r--lsp/angular-language-server.lua11
-rw-r--r--lua/config/lsp.lua10
3 files changed, 22 insertions, 0 deletions
diff --git a/flake.nix b/flake.nix
index 65a317a..3bfa69b 100644
--- a/flake.nix
+++ b/flake.nix
@@ -152,6 +152,7 @@
];
typescript = [
+ angular-language-server
biome
typescript-language-server
];
diff --git a/lsp/angular-language-server.lua b/lsp/angular-language-server.lua
new file mode 100644
index 0000000..63a61c6
--- /dev/null
+++ b/lsp/angular-language-server.lua
@@ -0,0 +1,11 @@
+return {
+ cmd = { "ngserver", "--stdio" },
+ root_markers = { "angular.json" },
+ filetypes = {
+ "html",
+ "htmlangular",
+ "typescript",
+ "typescriptreact",
+ "typescript.tsx",
+ },
+}
diff --git a/lua/config/lsp.lua b/lua/config/lsp.lua
index 58edc2e..413e06f 100644
--- a/lua/config/lsp.lua
+++ b/lua/config/lsp.lua
@@ -12,8 +12,18 @@ vim.lsp.enable({
"rust-analyzer",
+ "angular-language-server",
"biome",
"typescript-language-server",
})
vim.lsp.inlay_hint.enable(true)
+
+-- Enable Angular HTML Treesitter grammar when needed
+vim.api.nvim_create_autocmd({ "BufReadPost", "BufNewFile" }, {
+ pattern = { "*.component.html", "*.container.html" },
+ callback = function()
+ vim.bo.filetype = "htmlangular"
+ vim.treesitter.start(nil, "angular")
+ end,
+})