Set ada configuration file dynamically on startup

This commit is contained in:
2025-02-04 07:26:10 +01:00
parent c8be7d19a7
commit f4909335c1

View File

@@ -60,10 +60,34 @@ require("lspconfig").verible.setup({
cmd = { "verible-verilog-ls", "--rules_config_search" }, cmd = { "verible-verilog-ls", "--rules_config_search" },
}) })
-- @name file_exists
-- @param (name
-- @short Check if a file does exists (i. e. an ada project file)
local function file_exists(name)
local f = io.open(name, "r")
return f ~= nil and io.close(f)
end
-- @name get_config_file -- @name get_config_file
-- @param -- @param
-- @short Get the configuration file. -- @short Get the configuration file.
local function get_config_file() end local function get_config_file()
local filename = vim.api.nvim_buf_get_name(0)
local basedirectory = filename:gsub("/[^%/]-$", "")
local currentdirectory = filename:match("[^%/]-$")
if file_exists(basedirectory .. currentdirectory .. ".gpr") then
return basedirectory .. currentdirectory .. ".gpr"
else
basedirectory = basedirectory:gsub("/[^%/]-$", "")
currentdirectory = filename:match("[^%/]-$")
if file_exists(basedirectory .. currentdirectory .. ".gpr") then
return basedirectory .. currentdirectory .. ".gpr"
else
return "default.gpr"
end
end
end
require("lspconfig").als.setup({ require("lspconfig").als.setup({
settings = { settings = {