local util = require("neoconf.util") local M = {} function M.docs() local schemas = require("neoconf.build.schemas").get_schemas() local keys = vim.tbl_keys(schemas) table.sort(keys) local lines = {} for _, name in ipairs(keys) do local schema = schemas[name] local url = schema.package_url if url:find("githubusercontent") then url = url :gsub("raw%.githubusercontent", "github") :gsub("/master/", "/tree/master/", 1) :gsub("/develop/", "/tree/develop/", 1) :gsub("/main/", "/tree/main/", 1) end table.insert(lines, ("- [x] [%s](%s)"):format(name, url)) end local str = "\n" .. table.concat(lines, "\n") local md = util.read_file("README.md") md = md:gsub(".*", str) .. "\n" util.write_file("README.md", md) end function M.build() require("neoconf.build.schemas").build() require("neoconf.build.annotations").build() M.docs() end M.build() return M