Add lua type annotation and make sure to use opts where possible

This commit is contained in:
2025-05-31 00:47:06 +02:00
parent d2a4babb2e
commit 6c49b81f5a
35 changed files with 362 additions and 263 deletions

View File

@@ -1,32 +1,36 @@
local kubernetes = {}
kubernetes.name = "Kubernetes"
-- https://github.com/cenk1cenk2/schema-companion.nvim
--- @module "schema-companion"
--- @type schema_companion.Matcher
local kubernetes = {
name = "Kubernetes",
match = function(bufnr)
local lines = vim.api.nvim_buf_get_lines(bufnr, 0, -1, false)
local kind = false
local api_version = false
---@type schema_companion.MatcherMatchFn
kubernetes.match = function(bufnr)
local lines = vim.api.nvim_buf_get_lines(bufnr, 0, -1, false)
local kind = false
local api_version = false
for _, line in ipairs(lines) do
if kind or vim.regex("^kind: .*$"):match_str(line) then
kind = true
end
for _, line in ipairs(lines) do
if kind or vim.regex("^kind: .*$"):match_str(line) then
kind = true
if api_version or vim.regex("^apiVersion: .*$"):match_str(line) then
api_version = true
end
if kind and api_version then
return {
name = "Kubernetes",
uri = require("kubernetes").yamlls_schema(),
}
end
end
if api_version or vim.regex("^apiVersion: .*$"):match_str(line) then
api_version = true
end
if kind and api_version then
return {
name = "Kubernetes",
uri = require("kubernetes").yamlls_schema(),
}
end
end
return nil
end
return nil
end,
}
--- @module "lazy"
--- @type LazySpec
return {
"cenk1cenk2/schema-companion.nvim",
dependencies = {
@@ -34,16 +38,7 @@ return {
"nvim-telescope/telescope.nvim",
"diogo464/kubernetes.nvim",
},
config = function()
require("schema-companion").setup({
enable_telescope = true,
matchers = {
kubernetes,
},
schemas = {},
})
-- TODO: Set on lsp attach with filetype yaml?
init = function()
vim.keymap.set(
"n",
"<leader>ss",
@@ -61,4 +56,13 @@ return {
})
)
end,
--- @module "schema-companion"
--- @type schema_companion.Config
opts = {
enable_telescope = true,
matchers = {
kubernetes,
},
schemas = {},
},
}