Commit Graph

115 Commits

Author SHA1 Message Date
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
Pham Huy Hoang
217467c262 remove unnecessary ft aus
specify specific plugin files to load
2023-05-15 09:59:24 +02:00
Colin Kennedy
4c35c0b75d Added USD as a language + some queries
Added USD highlight unittests

Added USD indentation

Added USD indents.scm file

Added USD indent rules

Simplified USD highlight groups

Added explicit highlight groups

Added newline

Removed after/ftdetect/usda.lua

usd/indents.scm - Added inline comments explaining the nodes

Fixed USD highlight group unittests

Added indentation unittests

Simplified USD `@identifier` highlighting

Added USD documentation highlight group tests

Simplified USD highlight groups

Moved USD `@identifier` and `@namespace` highlights into one place

Removed and simplified tests/query/highlights/usd

Simplified tests/query/highlights/usd more

Removed trailing newline

Combined USD test files

Added `set filetype=usd` to minimal_init.lua
2023-05-15 09:28:11 +02:00
Zheng PiaoDan
32d0baae44 feat: add indents.scm for nickel (#4790) 2023-05-13 02:49:39 +09:00
Amaan Qureshi
853b1ab39a style: fill in missing code docs wherever applicable 2023-02-24 01:08:23 -08:00
Kiyoon Kim
b44871afb5 Add treesitter CLI in CI with Windows and mac 2023-02-15 03:23:38 -08:00
Stephan Seitz
41e013dd9a ci: improve CI output on query error 2022-12-27 17:52:29 +01:00
Raymond Ha
30a45fc76b test: Add test name to summary output 2022-12-13 21:09:54 +01:00
Stephan Seitz
c8afa9fd3f ci: fix check for valid capture
Arguments to vim.startswith where swapped. Prefix has to go second.
2022-11-25 09:42:20 +02:00
ObserverOfTime
370546d283 ci(readme): add experimental annotation
even when the grammar is unmaintained
2022-11-20 12:24:55 +01:00
Christian Clason
3b040ce854 test: remove bundled parsers in CI
ensure that queries are tested against parser version in lockfile
2022-11-01 13:41:33 +01:00
Stephan Seitz
9bfaf62e42 ci: relax check for valid captures (only check prefixes) 2022-09-29 09:06:50 +02:00