diff options
author | TJ DeVries <devries.timothyj@gmail.com> | 2020-08-25 09:52:22 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-25 09:52:22 -0400 |
commit | 43202964f39eed4e28fd8ad6ad0ec79a1868c33f (patch) | |
tree | da9abce08cca5b7502f0a5a6320eba52ee42b8e8 /scripts/gen_vimdoc.py | |
parent | 8a333afec53a48c90de7b0bde30f9db2d02d1898 (diff) | |
parent | 9d9edebceb73657899256430ed3e2f49c92898a8 (diff) | |
download | rneovim-43202964f39eed4e28fd8ad6ad0ec79a1868c33f.tar.gz rneovim-43202964f39eed4e28fd8ad6ad0ec79a1868c33f.tar.bz2 rneovim-43202964f39eed4e28fd8ad6ad0ec79a1868c33f.zip |
Merge pull request #12708 from runiq/lsp-doc
Add docs for some methods in vim.lsp
Diffstat (limited to 'scripts/gen_vimdoc.py')
-rwxr-xr-x | scripts/gen_vimdoc.py | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/scripts/gen_vimdoc.py b/scripts/gen_vimdoc.py index a61690e99f..4b04ebb5fb 100755 --- a/scripts/gen_vimdoc.py +++ b/scripts/gen_vimdoc.py @@ -39,6 +39,7 @@ Each function :help block is formatted as follows: parameter is marked as [out]. - Each function documentation is separated by a single line. """ +import argparse import os import re import sys @@ -841,7 +842,7 @@ def delete_lines_below(filename, tokenstr): fp.writelines(lines[0:i]) -def main(config): +def main(config, args=None): """Generates: 1. Vim :help docs @@ -960,7 +961,11 @@ def main(config): i = 0 for filename in CONFIG[target]['section_order']: - title, helptag, section_doc = sections.pop(filename) + try: + title, helptag, section_doc = sections.pop(filename) + except KeyError: + print("Warning:", filename, "has empty docs, skipping") + continue i += 1 if filename not in CONFIG[target]['append_only']: docs += sep @@ -983,7 +988,8 @@ def main(config): with open(mpack_file, 'wb') as fp: fp.write(msgpack.packb(fn_map_full, use_bin_type=True)) - shutil.rmtree(output_dir) + if not args.keep_tmpfiles: + shutil.rmtree(output_dir) def filter_source(filename): @@ -1001,6 +1007,15 @@ def filter_source(filename): fp.read(), flags=re.M)) +def parse_args(): + ap = argparse.ArgumentParser() + ap.add_argument('source_filter', nargs='*', + help="Filter source file(s)") + ap.add_argument('-k', '--keep-tmpfiles', action='store_true', + help="Keep temporary files") + return ap.parse_args() + + Doxyfile = textwrap.dedent(''' OUTPUT_DIRECTORY = {output} INPUT = {input} @@ -1037,9 +1052,10 @@ Doxyfile = textwrap.dedent(''' ''') if __name__ == "__main__": - if len(sys.argv) > 1: - filter_source(sys.argv[1]) + args = parse_args() + if len(args.source_filter) > 0: + filter_source(args.source_filter[0]) else: - main(Doxyfile) + main(Doxyfile, args) # vim: set ft=python ts=4 sw=4 tw=79 et : |