aboutsummaryrefslogtreecommitdiff
path: root/runtime/queries/go
Commit message (Collapse)AuthorAge
* Add rainbow tree-sitter highlightsJJ2023-11-01
| | | | | | | ref: https://github.com/helix-editor/helix/issues/695 ref: https://github.com/helix-editor/helix/pull/2857 Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
* update go highlight queries (#8399)Ben Haines2023-09-26
|
* Avoid extra indentation on Go switches (#6817)Daniel Martí2023-04-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unlike other languages, in Go, switches themselves are not indented; it's just each case body which is indented by one level: switch foo { case "bar": baz() } As such, we shouldn't `@indent` for type_switch_statement nor expression_switch_statement, as otherwise inserted lines show up as: switch foo { // inserted with "o" case "bar": // inserted with "o" baz() } With the fix, the inserted lines are indented properly: switch foo { // inserted with "o" case "bar": // inserted with "o" baz() } I also verified that indentation on selects similarly works well. Thanks to Triton171 for helping with this fix.
* Fix go locals query for var_spec identifiersMatthew Toohey2023-04-16
|
* Update highlights for golang (#6204)Erasin Wang2023-03-08
| | | | | | - update tree-sitter-go - refine keywords - set package as namespace - add label
* Fix Go select indenting (#5713)gavincrawford2023-02-08
| | | | | | | * Fix Go indenting * Fix bracket outdent predicate * Fix brace indenting (again)
* feat(highlights): go builtin funcs and types (#5010)Matouš Dzivjak2022-12-05
| | | | Add highlight scopes for golang built-in functions and types. Based on https://pkg.go.dev/builtin.
* feat(lang): bump tree-sitter-go (#4969)Matouš Dzivjak2022-12-02
| | | | | | Update tree-sitter-go to latest with updated support for generics. See: https://github.com/tree-sitter/tree-sitter-go/compare/0fa917a7022d1cd2e9b779a6a8fc5dc7fad69c75..05900faa3cdb5d2d8c8bd5e77ee698487e0a8611 for full diff.
* Fix Go variable indentation (#4906)gavincrawford2022-11-27
|
* add test textobjects queries for erlang,gleam,go,python,rustMichael Davis2022-06-21
|
* Add `parameter.around` text object queryAndrey Tkachenko2022-05-25
|
* Fix Golang textobject queries (#2153)Michael Davis2022-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * log textobject query construction errors The current behavior is that invalid queries are discarded silently which makes it difficult to debug invalid textobjects (either invalid syntax or an update may have come through that changed the valid set of nodes). * fix golang textobject query `method_spec_list` used to be a named node but was removed (I think for Helix, it was when updated to pull in the support for generics). Instead of a named node for the list of method specs we have a bunch of `method_spec` children nodes now. We can match on the set of them with a `+` wildcard. Example go for this query: type Shape interface { area() float64 perimeter() float64 } Which is parsed as: (source_file (type_declaration (type_spec name: (type_identifier) type: (interface_type (method_spec name: (field_identifier) parameters: (parameter_list) result: (type_identifier)) (method_spec name: (field_identifier) parameters: (parameter_list) result: (type_identifier))))))
* Indentation rework (#1562)Triton1712022-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * WIP: Rework indentation system * Add ComplexNode for context-aware indentation (including a proof of concept for assignment statements in rust) * Add switch statements to Go indents.toml (fixes the second half of issue #1523) Remove commented-out code * Migrate all existing indentation queries. Add more options to ComplexNode and use them to improve C/C++ indentation. * Add comments & replace Option<Vec<_>> with Vec<_> * Add more detailed documentation for tree-sitter indentation * Improve code style in indent.rs * Use tree-sitter queries for indentation instead of TOML config. Migrate existing indent queries. * Add documentation for the new indent queries. Change xtask docgen to look for indents.scm instead of indents.toml * Improve code style in indent.rs. Fix an issue with the rust indent query. * Move indentation test sources to separate files. Add `#not-kind-eq?`, `#same-line?` and `#not-same-line` custom predicates. Improve the rust and c indent queries. * Fix indent test. Improve rust indent queries. * Move indentation tests to integration test folder. * Improve code style in indent.rs. Reuse tree-sitter cursors for indentation queries. * Migrate HCL indent query * Replace custom loading in indent tests with a designated languages.toml * Update indent query file name for --health command. * Fix single-space formatting in indent queries. * Add explanation for unwrapping. Co-authored-by: Triton171 <triton0171@gmail.com>
* Add comment textobject for surround selection and navigation (#1605)Daniel S Poulin2022-03-06
|
* tree sitter comments injections (#1527)Mathis Brossier2022-01-20
| | | | | | | | | | | * tree sitter comments injections * trailing newlines & julia fix * Update runtime/queries/julia/injections.scm Co-authored-by: Michael Davis <michael.davis@nfiindustries.com> Co-authored-by: Michael Davis <michael.davis@nfiindustries.com>
* Update tree-sitter-go with generics supportBlaž Hrastnik2022-01-11
|
* Updated tree-sitter query scopes (#896)Kirawi2021-11-03
| | | | | | | | | | | | | | | | | | * updated theme scopes variable.property -> variable.field property -> variable.field * updated theme scopes * update book and themes updated book and themes to reflect scope changes * wip * update more queries * update dark_plus.toml
* Add treesitter textobjects (#728)Gokul Soumya2021-10-23
| | | | | | | | | | | | | | | | | | | | | | | | | * Add treesitter textobject queries Only for Go, Python and Rust for now. * Add tree-sitter textobjects Only has functions and class objects as of now. * Fix tests * Add docs for tree-sitter textobjects * Add guide for creating new textobject queries * Add parameter textobject Only parameter.inside is implemented now, parameter.around will probably require custom predicates akin to nvim' `make-range` since we want to select a trailing comma too (a comma will be an anonymous node and matching against them doesn't work similar to named nodes) * Simplify TextObject cell init
* syntax: Add go & rust locals, improve tree-sitter error messageBlaž Hrastnik2021-09-06
|
* syntax: Improve go highlightsBlaž Hrastnik2021-09-06
|
* Golang indent improvementsBlaž Hrastnik2021-08-19
|
* Golang indent queriesBlaž Hrastnik2021-06-01
|
* Adjust golang indents yet againBlaž Hrastnik2021-05-31
|
* Golang indent adjustmentBlaž Hrastnik2021-05-28
|
* Update deps, introduce the new tree-sitter lifetimesBlaž Hrastnik2021-05-27
|
* syntax: golang: Indent type declarationsBlaž Hrastnik2021-05-18
|
* Add indentation queries for golang.Blaž Hrastnik2021-05-15
|
* Add tree-sitter queries.Blaž Hrastnik2021-04-09