Skip to content

Commit

Permalink
refactor(health): keep in mind new way of health check (#63)
Browse files Browse the repository at this point in the history
  • Loading branch information
olexsmir committed Jun 7, 2024
1 parent 10cec9c commit 65fa148
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,11 @@ function health.is_binary_found(bin)
return false
end

---@param ft string
---@return boolean
function health.is_treesitter_parser_available(ft)
local ok, parser = pcall(vim.treesitter.get_parser, 0, ft)
return ok and parser ~= nil
end

return health
16 changes: 13 additions & 3 deletions lua/gopher/health.lua
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
local health = {}
local cmd = require("gopher.config").commands
local u = require "gopher._utils.health"
local u = require "gopher._utils.health_util"

local deps = {
plugin = {
Expand All @@ -24,11 +24,12 @@ local deps = {
},
{ bin = cmd.dlv, msg = "required for debugging, (`nvim-dap`, `gopher.dap`)", optional = true },
},
treesitter = {
{ parser = "go", msg = "required for `gopher.nvim`", optional = false },
},
}

function health.check()
u.info "install go treesitter parser by `:TSInstall go` if you don't have it already"

u.start "required plugins"
for _, plugin in ipairs(deps.plugin) do
if u.is_lualib_found(plugin.lib) then
Expand All @@ -55,6 +56,15 @@ function health.check()
end
end
end

u.start "required treesitter parsers"
for _, parser in ipairs(deps.treesitter) do
if u.is_treesitter_parser_available(parser.parser) then
u.ok(parser.parser .. " parser installed")
else
u.error(parser.parser .. " parser not found, " .. parser.msg)
end
end
end

return health

0 comments on commit 65fa148

Please sign in to comment.