neovim/scripts
Lewis Russell 9beb40a4db feat(docs): replace lua2dox.lua
Problem:

The documentation flow (`gen_vimdoc.py`) has several issues:
- it's not very versatile
- depends on doxygen
- doesn't work well with Lua code as it requires an awkward filter script to convert it into pseudo-C.
- The intermediate XML files and filters makes it too much like a rube goldberg machine.

Solution:

Re-implement the flow using Lua, LPEG and treesitter.

- `gen_vimdoc.py` is now replaced with `gen_vimdoc.lua` and replicates a portion of the logic.
- `lua2dox.lua` is gone!
- No more XML files.
- Doxygen is now longer used and instead we now use:
  - LPEG for comment parsing (see `scripts/luacats_grammar.lua` and `scripts/cdoc_grammar.lua`).
  - LPEG for C parsing (see `scripts/cdoc_parser.lua`)
  - Lua patterns for Lua parsing (see `scripts/luacats_parser.lua`).
  - Treesitter for Markdown parsing (see `scripts/text_utils.lua`).
- The generated `runtime/doc/*.mpack` files have been removed.
   - `scripts/gen_eval_files.lua` now instead uses `scripts/cdoc_parser.lua` directly.
- Text wrapping is implemented in `scripts/text_utils.lua` and appears to produce more consistent results (the main contributer to the diff of this change).
2024-02-27 14:41:17 +00:00
..
bump_deps.lua build: enable lintlua for scripts/ dir #26391 2023-12-04 12:38:31 -08:00
cdoc_grammar.lua feat(docs): replace lua2dox.lua 2024-02-27 14:41:17 +00:00
cdoc_parser.lua feat(docs): replace lua2dox.lua 2024-02-27 14:41:17 +00:00
check_urls.vim vim-patch: move test_urls.vim out of runtime/ 2018-11-12 12:36:40 -05:00
cliff.toml chore: forward-port changes from v0.8.2 release 2022-12-29 17:36:28 +01:00
download-unicode-files.sh build(lintsh): double quote to prevent word splitting (#21571) 2022-12-28 22:50:24 +01:00
gen_eval_files.lua feat(docs): replace lua2dox.lua 2024-02-27 14:41:17 +00:00
gen_filetype.lua build: enable lintlua for scripts/ dir #26391 2023-12-04 12:38:31 -08:00
gen_help_html.lua fix(gen_help_html): type warnings, spell_ignore_files #27254 2024-01-29 11:02:10 -08:00
gen_lsp.lua fix(lsp): add parentheses to generated union array types (#27560) 2024-02-21 12:31:56 +01:00
gen_vimdoc.lua feat(docs): replace lua2dox.lua 2024-02-27 14:41:17 +00:00
genappimage.sh build: various fixes 2024-02-01 12:06:55 +01:00
git-log-pretty-since.sh build(lint): add more shell scripts to lintsh 2022-11-01 18:37:21 +01:00
legacy2luatest.pl legacy2luatest: Use before_each instead of setup. 2016-02-01 09:09:08 +01:00
lintcommit.lua build: enable lintlua for scripts/ dir #26391 2023-12-04 12:38:31 -08:00
lintdoc.lua build(docs): separate lint job to validate vimdoc #27227 2024-01-28 14:22:39 -08:00
luacats_grammar.lua feat(docs): replace lua2dox.lua 2024-02-27 14:41:17 +00:00
luacats_parser.lua feat(docs): replace lua2dox.lua 2024-02-27 14:41:17 +00:00
movedocs.pl Move documentation from function declarations to definitions 2014-06-02 11:04:04 -03:00
release.sh build(lint): add more shell scripts to lintsh 2022-11-01 18:37:21 +01:00
shadacat.py Merge #11319 'inccommand: fix issues with modifiers and prompting' 2019-11-05 17:34:21 -08:00
text_utils.lua feat(docs): replace lua2dox.lua 2024-02-27 14:41:17 +00:00
update_terminfo.sh refactor: replace manual header guards with #pragma once 2023-11-12 22:01:28 +01:00
vim-patch.sh build(vim-patch.sh): don't add vim/vim to issue of another repo (#27493) 2024-02-16 20:19:26 +08:00
vimpatch.lua build: enable lintlua for scripts/ dir #26391 2023-12-04 12:38:31 -08:00
windows.ti build: update builtin terminfo (#27272) 2024-01-31 21:45:30 +08:00