rename pattern to glob_pattern
This commit is contained in:
@@ -354,27 +354,33 @@ do
|
|||||||
cargo={'Cargo.toml'},
|
cargo={'Cargo.toml'},
|
||||||
}
|
}
|
||||||
|
|
||||||
---@param pattern string
|
local function file_exists(dir, glob_pattern)
|
||||||
|
return vim.fn.globpath(dir, glob_pattern, false, false, false) ~= ''
|
||||||
|
end
|
||||||
|
|
||||||
|
---@param glob_pattern string
|
||||||
---@return boolean
|
---@return boolean
|
||||||
local function look_for_file(pattern)
|
local function look_for_file(glob_pattern)
|
||||||
---@type string[]
|
---@type string[]
|
||||||
local folders = {vim.fn.getcwd()}
|
local folders = {vim.fn.getcwd()}
|
||||||
for dir in vim.fs.parents(vim.fn.getcwd()) do
|
for dir in vim.fs.parents(vim.fn.getcwd()) do
|
||||||
table.insert(folders, dir)
|
table.insert(folders, dir)
|
||||||
|
if file_exists(dir, '.git') then
|
||||||
|
break
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
for _, dir in ipairs(folders) do
|
for _, dir in ipairs(folders) do
|
||||||
local result = vim.fn.globpath(dir, pattern, false, false, false)
|
if file_exists(dir, glob_pattern) then
|
||||||
if result ~= '' then
|
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
for compiler, patterns in pairs(compiler_mapping) do
|
for compiler, glob_patterns in pairs(compiler_mapping) do
|
||||||
for _, pattern in ipairs(patterns) do
|
for _, glob_pattern in ipairs(glob_patterns) do
|
||||||
if look_for_file(pattern) then
|
if look_for_file(glob_pattern) then
|
||||||
vim.cmd('compiler! '..compiler)
|
vim.cmd('compiler! '..compiler)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user