local M = {} ---@param path string ---@return string M.parent = function(path) if path == "/" then return "/" elseif path == "" then return "" elseif vim.endswith(path, "/") then return path:match("^(.*/)[^/]*/$") or "" else return path:match("^(.*/)[^/]*$") or "" end end ---@param path string ---@return nil|string M.basename = function(path) if path == "/" or path == "" then return elseif vim.endswith(path, "/") then return path:match("^.*/([^/]*)/$") else return path:match("^.*/([^/]*)$") end end return M