Set ada configuration file dynamically on startup
This commit is contained in:
@@ -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 = {
|
||||||
|
|||||||
Reference in New Issue
Block a user