diff options
| author | Michael Lingelbach <m.j.lbach@gmail.com> | 2021-03-19 21:54:51 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-03-19 21:54:51 -0700 |
| commit | 1c3ac1319cc2f7c4523cf3f072460cbba2825c4d (patch) | |
| tree | 739e2c1637a32f5621b588035064069ac21e01f6 /scripts/docgen.lua | |
| parent | [docgen] Update CONFIG.md (diff) | |
| parent | docgen: when no description provided fallback to reading function from source (diff) | |
| download | nvim-lspconfig-1c3ac1319cc2f7c4523cf3f072460cbba2825c4d.tar nvim-lspconfig-1c3ac1319cc2f7c4523cf3f072460cbba2825c4d.tar.gz nvim-lspconfig-1c3ac1319cc2f7c4523cf3f072460cbba2825c4d.tar.bz2 nvim-lspconfig-1c3ac1319cc2f7c4523cf3f072460cbba2825c4d.tar.lz nvim-lspconfig-1c3ac1319cc2f7c4523cf3f072460cbba2825c4d.tar.xz nvim-lspconfig-1c3ac1319cc2f7c4523cf3f072460cbba2825c4d.tar.zst nvim-lspconfig-1c3ac1319cc2f7c4523cf3f072460cbba2825c4d.zip | |
Merge pull request #785 from mjlbach/improve_docgen
Improve docgen
Diffstat (limited to 'scripts/docgen.lua')
| -rw-r--r-- | scripts/docgen.lua | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/scripts/docgen.lua b/scripts/docgen.lua index 33f78130..42ae95cd 100644 --- a/scripts/docgen.lua +++ b/scripts/docgen.lua @@ -114,6 +114,23 @@ local function make_lsp_sections() local description = ((docs or {}).default_config or {})[k] if description and type(description) ~= 'string' then description = inspect(description) + elseif not description and type(v) == "function" then + local info = debug.getinfo(v) + local file = io.open(string.sub(info.source, 2), 'r') + + local fileContent = {} + for line in file:lines() do + table.insert (fileContent, line) + end + io.close(file) + + local root_dir = {} + for i = info.linedefined, info.lastlinedefined do + table.insert(root_dir, fileContent[i]) + end + + description = table.concat(root_dir, '\n') + description = string.gsub(description, ".*function", "function") end return indent(2, string.format("%s = %s", k, description or inspect(v))) end) |
