aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
Commit message (Collapse)AuthorAgeFilesLines
* fix(ci): update to changed neovim release nameChristian Clason2025-05-121-2/+2
|
* fix(install): return error code in callbackChristian Clason2025-05-121-4/+7
|
* feat(install): allow specifying max jobsChristian Clason2025-05-121-1/+4
|
* feat!: use tree-sitter buildChristian Clason2025-05-122-7/+3
|
* feat!: track parser revision in LuaChristian Clason2025-05-125-67/+90
| | | | | | | | | | | Problem: Tracking parser revision in lockfile and allowing override through the parsers module complicates the code. In addition, only revision changes are handled robustly, not changes to other installation info. Solution: Track parser revision in the parsers module directly. Reload parser table on every install or update call. Support modifying parser table in a `User TSUpdate` autocommand.
* feat(install)!: generate from json instead of requiring nodeChristian Clason2025-05-122-11/+20
| | | | | | | | | | | | Problem: Many parsers require node/npm to evaluate the `grammar.js` before being able to generate a parser from it. Solution: Generate from `grammar.json` instead, which is fully resolved. Drops `node` and `npm` as (optional) requirements for nvim-treesitter. Note that this requires parsers to commit the generated json iff the grammar requires evaluation (which is currently the case for all tracked languages).
* fix(format): update scripts to support nightly (#6126)Phạm Huy Hoàng2025-05-121-12/+27
| | | | No need for assert as the use is contained within the script only
* fix: better output for update-lockfileChristian Clason2025-05-121-13/+20
|
* feat: improve check-queriesChristian Clason2025-05-121-58/+39
|
* feat: add parser tiersChristian Clason2025-05-121-3/+4
| | | | | | | | | | Tier 1: Stable Tier 2: Core (maintained by org members) Tier 3: Community (maintained by external contributors, to varying degree) Tier 4: Unsupported (lacking active maintainer or declared experimental); skipped in lockfile update and ignored for automatic install by default
* feat!: drop makefile support, norg parserChristian Clason2025-05-121-52/+0
| | | | | | | | | Norg install_info and queries are maintained by neorg. All other parsers are compatible with C++11, so fix that as standard. (Can be bumped if all supported platforms support C++14.) Remove Makefile support, as it's no longer needed.
* refactor: use vim.system (#4923)Lewis Russell2025-05-121-25/+40
|
* refactor: use `vim.uv`Christian Clason2025-05-122-50/+32
|
* fix: install dependenciesChristian Clason2025-05-122-24/+29
|
* ci: remove update-lockfile shell scriptChristian Clason2025-05-128-59/+45
|
* refactor: rewrite installation using jobs and asyncLewis Russell2025-05-122-15/+8
| | | | Replace sync variants with callback support
* refactor: use vim.fs.joinpathChristian Clason2025-05-121-1/+1
|
* feat(locals)!: refactor `locals.lua` into standaloneChristian Clason2025-05-121-0/+1
| | | | Co-authored-by: TheLeoP <eugenio2305@hotmail.com>
* feat!: drop modules, general refactor and cleanupChristian Clason2025-05-127-138/+220
|
* feat(formatter): support formatting missing nodesRiley Bruins2025-02-041-0/+11
| | | | | | | | | | | | | | | | | This commit makes missing nodes take formatting identical to that of regular named nodes, with the only exception being that a newline will not be prepended to a node name. E.g. this pattern: ```query (MISSING identifier) ``` will *not* be changed to: ```query (MISSING (identifier)) ```
* fix(formatter): prefer #-prefixed predicatesRiley Bruins2025-02-041-0/+3
| | | | | | This prevents the formatter for appending a space after the "." in a predicate prefix, and changes it to a "#" to match all other occurrences in the codebase.
* fix(ci): fixupChristian Clason2025-01-301-1/+1
|
* fix(ci): update to changed neovim release nameChristian Clason2025-01-301-8/+1
|
* ci(install): adapt to new Neovim release artefact namesChristian Clason2025-01-271-1/+8
| | | | Old name can be removed after 0.10.4 release
* fix: formatter idempotency for nested groupings (#7345)Riley Bruins2024-11-111-0/+1
| | | | | | Currently, for something like `(((((node))))) @cap`, the formatter will produce `((node)) @cap`, and then after another pass it will produce `(node) @cap`. This commit makes it so that all extraneous parentheses are removed on the first pass.
* fix(formatter): simplify code, remove odd line breakRiley Bruins2024-10-261-48/+26
|
* fix(formatter): adapt formatter for nightlyRiley Bruins2024-09-071-2/+4
| | | | | After Neovim pull #30193, the formatter was broken due to changes in the way node data is passed to predicates.
* fix(format): field_def inside grouping再生花2024-08-011-0/+1
|
* feat(predicates)!: rename `has-type` to `kind-eq` to align with HelixChristian Clason2024-06-021-4/+4
| | | | No point in having a different name for the same predicate.
* feat(query): adapt to upstream changesAmaan Qureshi2024-05-261-2/+2
|
* ci: Nvim 0.10 macos artifact nameChristian Clason2024-05-171-3/+4
|
* fix(textproto): use 'pbtxt' filetype (#6427)Bruno BELANYI2024-04-111-1/+0
| | | | This is the actual name of the detected filetype.
* refactor(format): drop extra indentation for fieldPhạm Huy Hoàng2024-03-211-10/+0
|
* fix(scripts): actually skip lockfile updatesObserverOfTime2024-03-122-10/+7
|
* feat(highlights)!: enforce documented captures (#6232)Christian Clason2024-03-031-12/+2
| | | | | | | | | | | | | | | Problem: Allowing undocumented "secret" (sub)captures makes it harder to write comprehensive colorschemes and catch inconsistent captures. Solution: Only allow captures listed in CONTRIBUTING.md. Add useful (cross-language) subcaptures and drop language-specific or too niche ones. Follow-up: Adding further `*.builtin` captures and changing queries to use them. Language-specific subcaptures should instead be added in user config or a custom language plugin.
* feat(format): extra newline after modelinePhạm Huy Hoàng2024-02-291-1/+16
|
* feat(format-scripts): linewrap predicates再生花2024-02-231-4/+39
| | | "format-ignore".kick()
* fix(scripts): add missing \n for nested groupingPhạm Huy Hoàng2024-02-201-6/+2
|
* fix(scripts): format-queries defaults to cwdChristian Clason2024-02-201-6/+4
|
* fix: typosdundargoc2024-02-191-1/+1
|
* fix(format): fix nested grouping indentation (#6128)Phạm Huy Hoàng2024-02-181-1/+6
|
* ci: fix invalid workflowdundargoc2024-02-104-22/+25
| | | | | | | | Context variables aren't always available, so we can't rely on them for e.g. environment variables. Also merge all install scripts into `script/ci-install.sh`, that way it can be called the same way regardless of system.
* ci: use M1 for macOSChristian Clason2024-01-311-0/+0
| | | | | | GH Actions runners use M1 hardware for `macos-14` now. Since macOS is one of the slowest platforms for parser compilation, switching should give us not only ARM coverage but also shorter CI times.
* fix(format): handle list with 300 nodesPhạm Huy Hoàng2024-01-301-15/+3
|
* fix(format): improve error messageChristian Clason2024-01-301-1/+2
|
* feat(tests): allow check-queries to take list of parsersChristian Clason2024-01-261-1/+1
| | | | `./scripts/check-queries.lua foo bar baz`
* fix(format-scripts): remove parens if possiblePhạm Huy Hoàng2024-01-211-1/+26
|
* Fixup format (#5934)Phạm Huy Hoàng2024-01-201-3/+4
| | | | | | | * fix(format): newline between top-level field defs * fixup: newline between node and comment * fixup: optimize pattern
* feat: query formatting scriptPham Huy Hoang2024-01-191-0/+396
| | | | | | | | Usage: - nvim -l scripts/format-queries.lua /path/to/file.scm - nvim -l scripts/format-queries.lua /path/to/dir fixup: add `format-ignore` directive to query/highlights.scm
* test(queries): print ALL errors at endChristian Clason2024-01-191-12/+9
|