Commit graph

126 commits

Author SHA1 Message Date
Christian Clason
885c2960ef fix: better output for update-lockfile 2025-05-12 18:43:40 +02:00
Christian Clason
e77506bde3 feat: improve check-queries 2025-05-12 18:43:40 +02:00
Christian Clason
bae77b87b1 feat: add parser tiers
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
2025-05-12 18:43:40 +02:00
Christian Clason
f0a984347c feat!: drop makefile support, norg parser
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.
2025-05-12 18:43:40 +02:00
Lewis Russell
c5152f3e83 refactor: use vim.system (#4923) 2025-05-12 18:43:40 +02:00
Christian Clason
37957d6bcf refactor: use vim.uv 2025-05-12 18:43:40 +02:00
Christian Clason
cd2c826972 fix: install dependencies 2025-05-12 18:43:40 +02:00
Christian Clason
9c0a99819c ci: remove update-lockfile shell script 2025-05-12 18:43:40 +02:00
Lewis Russell
cde679e435 refactor: rewrite installation using jobs and async
Replace sync variants with callback support
2025-05-12 18:43:40 +02:00
Christian Clason
5aa2984a02 refactor: use vim.fs.joinpath 2025-05-12 18:43:40 +02:00
Christian Clason
5817ff01b5 feat(locals)!: refactor locals.lua into standalone
Co-authored-by: TheLeoP <eugenio2305@hotmail.com>
2025-05-12 18:43:40 +02:00
Christian Clason
692b051b09 feat!: drop modules, general refactor and cleanup 2025-05-12 18:43:40 +02:00
Riley Bruins
53a6b3993f feat(formatter): support formatting missing nodes
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))
```
2025-02-04 09:56:51 +01:00
Riley Bruins
7194ff9511 fix(formatter): prefer #-prefixed predicates
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.
2025-02-04 09:56:39 +01:00
Christian Clason
aeaac6a208 fix(ci): fixup 2025-01-30 09:10:34 +01:00
Christian Clason
7d28f8afc4 fix(ci): update to changed neovim release name 2025-01-30 08:53:22 +01:00
Christian Clason
2206739829 ci(install): adapt to new Neovim release artefact names
Old name can be removed after 0.10.4 release
2025-01-27 17:09:08 +01:00
Riley Bruins
a069bb62a8
fix: formatter idempotency for nested groupings (#7345)
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.
2024-11-11 11:59:21 +09:00
Riley Bruins
674100c1fc fix(formatter): simplify code, remove odd line break 2024-10-26 10:07:30 +02:00
Riley Bruins
58030e6d6f fix(formatter): adapt formatter for nightly
After Neovim pull #30193, the formatter was broken due to changes in the
way node data is passed to predicates.
2024-09-07 17:31:18 +02:00
再生花
929e4739cc
fix(format): field_def inside grouping 2024-08-01 08:40:23 +02:00
Christian Clason
a80fe081b4 feat(predicates)!: rename has-type to kind-eq to align with Helix
No point in having a different name for the same predicate.
2024-06-02 12:07:58 +02:00
Amaan Qureshi
488e39a8f1 feat(query): adapt to upstream changes 2024-05-26 00:24:03 +02:00
Christian Clason
4d9fb7d8b0 ci: Nvim 0.10 macos artifact name 2024-05-17 08:57:04 +02:00
Bruno BELANYI
5c4892b055
fix(textproto): use 'pbtxt' filetype (#6427)
This is the actual name of the detected filetype.
2024-04-11 18:03:22 +02:00
Phạm Huy Hoàng
722617e672 refactor(format): drop extra indentation for field 2024-03-21 15:51:26 +01:00
ObserverOfTime
8d3176cfbc fix(scripts): actually skip lockfile updates 2024-03-12 09:55:48 +02:00
Christian Clason
99ddf57353
feat(highlights)!: enforce documented captures (#6232)
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.
2024-03-03 11:00:11 +01:00
Phạm Huy Hoàng
62b0bb4f24 feat(format): extra newline after modeline 2024-02-29 23:05:30 +09:00
再生花
31641d72a4
feat(format-scripts): linewrap predicates
"format-ignore".kick()
2024-02-23 10:42:01 +02:00
Phạm Huy Hoàng
917d696592 fix(scripts): add missing \n for nested grouping 2024-02-20 10:36:49 +09:00
Christian Clason
4b27f87fef fix(scripts): format-queries defaults to cwd 2024-02-20 09:59:02 +09:00
dundargoc
9bc21966f2 fix: typos 2024-02-19 17:45:54 +01:00
Phạm Huy Hoàng
fef26b5eee
fix(format): fix nested grouping indentation (#6128) 2024-02-18 23:13:39 +09:00
dundargoc
6444286cbf ci: fix invalid workflow
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.
2024-02-10 19:49:14 +01:00
Christian Clason
364b86ec8e ci: use M1 for macOS
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.
2024-01-31 15:19:51 +01:00
Phạm Huy Hoàng
5f950cdcb8 fix(format): handle list with 300 nodes 2024-01-30 22:59:27 +07:00
Christian Clason
e9602f4119 fix(format): improve error message 2024-01-30 09:57:54 +01:00
Christian Clason
efda19a54a feat(tests): allow check-queries to take list of parsers
`./scripts/check-queries.lua foo bar baz`
2024-01-26 13:32:10 +01:00
Phạm Huy Hoàng
76ca66db38 fix(format-scripts): remove parens if possible 2024-01-21 23:55:02 +09:00
Phạm Huy Hoàng
d198a75e2c
Fixup format (#5934)
* fix(format): newline between top-level field defs

* fixup: newline between node and comment

* fixup: optimize pattern
2024-01-20 18:47:56 +09:00
Pham Huy Hoang
15de22a2e1 feat: query formatting script
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
2024-01-19 16:58:37 +01:00
Christian Clason
fc0fceb43a test(queries): print ALL errors at end 2024-01-19 16:58:37 +01:00
PorterAtGoogle
b4f6dd7298
feat(textproto): Add Textproto parser and queries (#5402)
* Add textproto parser and queries

* remove extra newline

* Apply suggestions from code review

Co-authored-by: ObserverOfTime <chronobserver@disroot.org>

---------

Co-authored-by: ObserverOfTime <chronobserver@disroot.org>
2023-09-19 01:26:02 +09:00
ObserverOfTime
f8bc6c69d7 ci: add shebangs to scripts 2023-08-18 11:09:57 +03:00
Christoph Sax
536c8a3880 feat(t32): re-enable tests
- Switch to GitLab mirror repository
- Lock grammar version 2.2.0
- Revert "fix(tests): mark t32 as allowed to fail"
  This reverts commit ba223ceecc.
- Revert "fix(tests): remove t32 tests"
  This reverts commit 97957a547b.
2023-07-30 19:29:33 +02:00
Christian Clason
ba223ceecc fix(tests): mark t32 as allowed to fail 2023-07-29 10:41:51 +02:00
Jacob Pfeifer
d186a9e95a
feat: add Hurl
Co-authored-by: Amaan Qureshi <amaanq12@gmail.com>
Co-authored-by: Pham Huy Hoang <hoangtun0810@gmail.com>

---------

Co-authored-by: Amaan Qureshi <amaanq12@gmail.com>
Co-authored-by: Pham Huy Hoang <hoangtun0810@gmail.com>
2023-07-11 02:18:26 -04:00
Glib Shpychka
f460cc8ee7
feat(wing): add parser (#5021)
Co-authored-by: Christian Clason <c.clason@uni-graz.at>
Co-authored-by: ObserverOfTime <chronobserver@disroot.org>
2023-06-29 10:34:46 +00:00
Pham Huy Hoang
9ec2a6bbda
tests: fix failed tests (#4901)
fix failed tests for tiger, t32 and wgsl
2023-06-05 09:52:36 +09:00