From 7c9ffe9e190cd954dc56fac74d5bf80448cb4b8c Mon Sep 17 00:00:00 2001 From: Stephan Seitz Date: Sat, 15 Aug 2020 18:12:37 +0200 Subject: Fix #292: Add parser links to README.md --- scripts/update-readme.lua | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100755 scripts/update-readme.lua (limited to 'scripts') diff --git a/scripts/update-readme.lua b/scripts/update-readme.lua new file mode 100755 index 000000000..8cc91f86d --- /dev/null +++ b/scripts/update-readme.lua @@ -0,0 +1,38 @@ +-- Execute as `nvim --headless -c "luafile ./scripts/update-readme.lua"` +local parsers = require 'nvim-treesitter.parsers'.get_parser_configs() +local sorted_parsers = {} + +for k, v in pairs(parsers) do + table.insert(sorted_parsers, {name = k, parser = v}) +end + +table.sort(sorted_parsers, function(a, b) return a.name < b.name end) + +local generated_text = '' + +for _, v in ipairs(sorted_parsers) do + local link = '['..(v.parser.readme_name or v.name)..']('..v.parser.install_info.url..')' + + if v.parser.maintainers then + generated_text = generated_text.. + '- [x] '..link..' (maintained by '..table.concat(v.parser.maintainers, ', ')..')\n' + else + generated_text = generated_text.. + '- [ ] '..link..'\n' + end +end + +print(generated_text) +print("\n") + +local readme_text = table.concat(vim.fn.readfile('README.md'), '\n') + +local new_readme_text = string.gsub(readme_text, ".*", + "\n"..generated_text.."") +vim.fn.writefile(vim.fn.split(new_readme_text, '\n'), "README.md") + +if string.find(readme_text, generated_text, 1, 'plain') then + vim.cmd('q') +else + vim.cmd('cq') +end -- cgit v1.2.3-70-g09d2