Commit Graph

731 Commits (655e3d3cbb996af0f70dbc8a097ab3b99bf00492)

Author SHA1 Message Date
tingerrr 80e0e98e45
Add `py`, `hs`, `rs` and `typ` injection regexes (#10785)
* Add `py` as valid python injection regex

* Add `hs` and `rs` for `haskell` and `rust`

* Add `typ` injection regex for `typst`
6 months ago
Gaëtan Lehmann a801044152
update tree-sitter-earthfile to 0.5.3 (#10779) 6 months ago
Yorick Peterse f1c9580e4b
tree-sitter: update Inko grammar (#10805) 6 months ago
Dmitry Salin 889bbefeb3
Add support for Mojo (#10743)
* Add support for Mojo

* Update grammar

* Fix queries

* Fix docs

* Use inheritance for some files
6 months ago
Tobias Hunger 5fea7cd0cc
tree-sitter: Update slint grammar (#10749) 7 months ago
Chris 81d4cbc66e
Update Odin tree sitter grammar (#10698)
* Replace Odin grammar source

* Update Odin highlights

* Update Odin indents

* Update Odin injections
7 months ago
Ryan Roden-Corrent 0432d9cf14
lang(starlark): Add WORKSPACE glob. (#10713)
In addition to BUILD files, bazel repositories contain a WORKSPACE file,
which is also written in starlark.
See https://bazel.build/reference/be/workspace.
7 months ago
Yorick Peterse b437b8b0ee
Add support for Inko (#10656)
This adds formatting and Tree-sitter support for Inko
(https://inko-lang.org/).
7 months ago
Arthur D 295a9a95ce
feat: add support for gjs and gts (#9940) 7 months ago
Ashley Vaughn 61818996c6
remove ' and add ⟨⟩ in lean autopairs (#10688) 7 months ago
Erasin Wang 724a96abc8
Add pest support (#10616)
Support [pest-parser](https://github.com/pest-parser)

- [pest-language-server](https://github.com/pest-parser/pest-ide-tools)
- [tree-sitter-pest](https://github.com/pest-parser/tree-sitter-pest)

close #7878
7 months ago
Keir Lawson 31248d4e2f
Enable metals inlay hints (#10597) 7 months ago
Yoav Lavi 50c90cb47c
Add support for highlighting any `.*ignore` file (#10579) 7 months ago
Chris Sergienko 345e687573
feat: update bash grammar to latest tree-sitter-bash rev (#10526) 7 months ago
Blaž Hrastnik f06a166962 Add Move language support 7 months ago
Gaëtan Lehmann ab203b5f53
update earthfile grammar and highlight queries (#10489) 7 months ago
Jonathan Lebon 36ee9ba7d6
languages/rust: add `rust-script` and `cargo` shebangs (#10484)
The former is one of the more popular forks of the original idea:

https://rust-script.org/

The latter is an RFC for folding that functionality into cargo itself,
available on nightly:

https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#script
7 months ago
Kieran Moy 50470f755f
Add missing hyprlang support (#10383) 7 months ago
Idobenhamo 68765f51c9
Support Typst 0.11 (#10321)
* Update the tree sitter to support Typst 0.11 and changed the lsp to Tinymist

* Fixed

* Added typst-lsp & tinymist

---------

Co-authored-by: Idobenhamo <idobenhamo@users.noreply.github.com>
7 months ago
Alexis-Lapierre 8256ca7bc3
Add support for Xena OpenAutomation files (#10448)
Add support for .xtc/.xoa/.xpc files

* XTC stand for Xena Traffic Configuration
* XOA stand for Xena OpenAutomation
* XPC stand for Xena Port Configuration

Theses three file time seems to be the most common file extension I
encountered in the wild
7 months ago
Pedro Fedricci 0546273570
chore: update tree-sitter-rust to v0.21.0 (#10365)
* chore: update tree-sitter-rust to 0.21.0

* fix: pretty print and textobject tests
7 months ago
Christopher Kaster 9df1266376
Add lldb-dap debugger support for Odin (#10175) 8 months ago
Matthew Toohey 081f7d0bd8
Update tree-sitter-ld and highlights (#10379) 8 months ago
Arthur c9ae694aff
fix(languages/helm): recognize _*.tpl as helm (#10344) 8 months ago
Alexander Brevig 009a5498ca
add LDIF support (#10330)
* feat(lang): add LDIF support

* style: no unnecessary glob

* Update runtime/queries/ldif/highlights.scm

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
8 months ago
blt-r b974716b92
Hightlight meson.options as meson file (#10323) 8 months ago
Valentin B b8ddb2f114
feat(solidity): add textobject queries for solidity (#10318)
* feat: add textobject queries for solidity

* feat(solidity): add parameter textobject query for call expressions

* feat(solidity): add more textobject queries for parameters

* feat(solidity): add yul function textobject query

* feat(solidity): add textobject query for emit statement arguments

* feat(solidity): add textobject query for revert call arguments

* feat(solidity): update tree-sitter grammar and fix typo

* docs: update auto-generated docs

* fix(solidity): fix identifiers highlight query priority

* feat(solidity): add "abstract" to keywords list

* feat(solidity): add highlight query for type alias

* feat(solidity): add variable builtin highlight queries
8 months ago
Gary Miller 0da809c981
feat: Add ADL language support (#10029)
* feat: Add ADL language support

* removed error match & change captures to match https://docs.helix-editor.com/master/themes.html\#syntax-highlighting

* fixes to grammar, highlight changes based on PR and grammar fixes
8 months ago
Pebrianz e663dafcd8
Add angular language server (#10166) 8 months ago
Ricardo Fernández Serrata 1ba5763a0c
recognize more files and shebangs (#10120)
* recognize `.node_repl_history` as JS

* recognize `bun` shebang

also add comments explaining Deno & Bun history files

* recognize `.python_history` file and `python3` shebang

* recognize more shells

* rm Py3 shebang

Co-authored-by: ath3 <45574139+ath3@users.noreply.github.com>

* rm non-standard deno/bun hist recognition

---------

Co-authored-by: ath3 <45574139+ath3@users.noreply.github.com>
8 months ago
Matthew Toohey a2ee2e66f2
Add koka language server and update grammar (#10119) 8 months ago
Blaž Hrastnik 5fece0054d
Disable todotxt grammar for files named "todo.txt"
The file name is too common and can unintentionally conflict. Users
should manually opt in.

Fixes #10113
8 months ago
Eloi Torrents 88f2931153
Add tcl highlighting (#9837)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
8 months ago
Evgeniy Tatarkin e54e3f07cb
feat(languages): Tiltfile as starlark language (#10072) 8 months ago
Angus Dippenaar e0ec34421b
languages: update templ (#10114) 8 months ago
Gaëtan Lehmann 226b2755fb
add earthfile language configuration (#10111) 8 months ago
Sampo Siltanen 54844241ce
Add fsharp block comment tokens to languages.toml (#10108) 8 months ago
RoloEdits b24c465a08
uswd lldb-dab instead of lldb-dap in the default dap configuration (#10091)
`LLVM v18.0.0` changed the name here: llvm/llvm-project#69264

Current users of `lldb-vscode` not able to upgrade will have to create a
symlink so that `lldb-dap` links to `lldb-vscode`.

BREAKING CHANGE: debugger looks for `lldb-dap` rather than `lldb-vscode`

closes: #9964
8 months ago
Pascal Eberhard 9a80f7203d
add initial support for bitbake language (#10010)
Signed-off-by: Pascal Eberhard <pascal.eberhard@se.com>
8 months ago
Matouš Dzivjak 2533b08f64
feat(languages): .mkdn as markdown extension (#10065)
GitHub recognizes `.mkdn` as markdown files. Add `.mkdn` as a valid
file type for Markdown.
8 months ago
Chris 64c1de1988
Add main.odin to Odin roots (#9968) 8 months ago
Daniel Flanagan 527cbe656c
chore: update tree-sitter-markdown (#10039) 8 months ago
Novus Nota 2d9e336f64
feat: Add `Ohm` language support (#9991)
* feat: Add `Ohm` language support

Hope this commit makes it into release :)

* Update runtime/queries/ohm/highlights.scm

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

* chore: final newline

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
8 months ago
David Else c9e34c556b
Add rclone.conf as a glob to make it behave as an ini file (#9959) 8 months ago
Michael Davis 9ceeea5a83 Update tree-sitter-gleam and highlights
This contains a few syntax fixes. The highlights have been updated as
well for reserved identifiers and escape sequences
8 months ago
Michael Davis fdcd461e65 Update tree-sitter-erlang and highlights
A few changes:

* 0-arity type specs like the following previously would not have the
  expected 'variable.parameter' highlighting for the return type:

    -spec foo() -> Value when Value :: term().

* Highlight module, type and function docs as documentation comments
  and inject markdown into them.

* Replace `#match?` predicates with `#any-of?` where possible.

* Remove custom auto-pairs. Now that Erlang uses markdown for
  documentation, the asciidoc-style backtick-singlequote pair is no
  longer useful.
8 months ago
Michael Davis 459eb9a4c1 Recognize 'mmd' as mermaid 8 months ago
Michael Davis 961025433d Update tree-sitter-git-commit
This commit has partial support for escapes within strings.
8 months ago
Hendrik Norkowski b8e79c0ef5
fix(languages): specify correct comment-token for PKGBUILD files (#9943) 8 months ago
Arthur Deierlein 427dd2f383
Add support for ember.js templates (#9902)
* feat: add support for ember .hbs (glimmer) templates

* adjust highlights to helix

* highlight this correctly in block statements

* correctly highlight attributes

* correctly highlight hash_pair

* add newline to highlights.scm

* refactor: use #any-of and #eq instead of #match

* chore: add newline to languages.toml
8 months ago
Arthur Deierlein 4b4947639a
feat: add suport for helm charts (#9900) 8 months ago
Damian Zaręba 485c5cf0b8
Initial Ada language support (after stale) (#9908)
* Adding initial support for ada language, based off #7790 PR from tomekw

* More translation to helix-specific tree-sitter scm labels, add ada gpr switch to ada LSP

* Generate ada in lang-support.md using cargo xtask docgen

* Update tree-sitter definitions according to comments

* Remove .gpr glob from languages.toml

* Fix unit in languages.toml for ada, update locals.scm to helix needs
8 months ago
Arthur Deierlein 0b6dea6dc2
Enhance support for PKGBUILDS (#9909)
* enhance support for PKGBUILDS

* run cargo xtask docgen
8 months ago
Jaakko Paju 58022586a0
Add yaml LSP for docker compose (#9916)
* Add yaml LSP for docker compose

* Change docs
8 months ago
Matthew Toohey 2e4653ea31
add koka language support (#8727)
Co-authored-by: Pascal Kuthe <pascal.kuthe@semimod.de>
8 months ago
Phil 94d210c9bf
Add initial support for SuperCollider (#9329) 8 months ago
Leonardo Eugênio d99b6177c2
Add blade support (#9513)
* Add php-only language config and queries

php-only is required enabling php injections like in blade templates

* Add blade templates support
8 months ago
Erasin Wang 64389f97fe
Updated grammar for hurl 4 (#9775) 8 months ago
Benedikt Ritter f7913c1a3b
Extend groovy support (#9677)
* Extend groovy support

Use more complete parser introduced in nvm-treesitter in
d4dac523d2

* Update runtime/queries/groovy/locals.scm

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

* Drop indent.scm for groovy

It was copied from the tree-sitter repository but is not
compatiblw with the way indent queries are implemented
in Helix.

* Adapt groovy highlights to helix syntax

* Update documentation

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
8 months ago
George "Riye" Hollister e36774c2c8
Add Support for JSONC (#9906)
* Added `jsonc` language with support for comments

The `vscode-json-language-server` accepts `jsonc` as a language id.
Allowing the use of comments within JSON files.

* fix: Update `injdection-rejex` to be unique

* fix: use includes to remove redundant queries

* ci: Generate language-support docs
8 months ago
Arthur Deierlein 9ec0271873
Add support for hyprland config (#9899)
* feat: add hyprland config language

* adjust indents to helix

* adjust highlights to helix
8 months ago
Nick 6fea7876a4
Fix comment key bind behaviour in OCaml (#9894) 8 months ago
Aidan Gauland 3bd493299f
Use Nu language for NUON files (#9839) 9 months ago
Matthew Toohey e3c6c82828
add linker script language (#9835) 9 months ago
Alexander Brevig fd89c3c833
fix: close #9771 fix comments with `(` and `)` (#9800)
* fix: close #9771 update OCaml

* fix: no longer match on ( ) as the underlying grammar handles these

* fix: implement excellent corrections from review

* fix: module -> namespace to match theme scopes
9 months ago
Chris 301dfb07cc
Add PowerShell highlighting (#9827) 9 months ago
RoloEdits cc43e3521e
feat(languages): add support for `*.Dockerfile` `file-types` naming convention (#9772)
Current `file-types` only supports up to a `Dockerfile.frontend` naming scheme.

With these changes `frontend.Dockerfile` now gives proper highlights and lsp actions.
9 months ago
Malpha f04dafa2e2
languages.toml: add elvish shebang (#9779) 9 months ago
Marcin Drzymala 1d6db30acf
Fix bug 9703 by commenting out the wrong command (#9778)
* Fix bug 9703 by commenting out the wrong command

This fixes issue https://github.com/helix-editor/helix/issues/9703 by removing the wrong formatting command for justfiles.

* Fix indentation width for justfile
9 months ago
Felix Zeller 062fb819a2
feat: Add markdown-oxide language server (#9758) 9 months ago
Keir Lawson d0bb774471
Mark GTK builder ui files as XML (#9754) 9 months ago
JJ e51a1e4e2a
Switch Nim tree-sitter queries to alaviss/tree-sitter-nim (#9722) 9 months ago
Brian Dorsey f03b91d1b7
update languages.toml: tree-sitter-lua grammar (#9727)
* update languages.toml: tree-sitter-lua grammar

repo has moved, use new URL and the rev of the latest release (v0.0.19)

* update highlight queries

a novice attempt to port query updates from the
source repo to Helix captures and ordering

* Apply suggestions from code review

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
9 months ago
Chris 083a9e775d
Add support for pde files (#9741) 9 months ago
Gabriel Dinner-David 26b3dc29be
toggling of block comments (#4718) 9 months ago
巢鹏 358ac6bc1f
add fidl support (#9713) 9 months ago
Tobias Hunger c68ec92c5e
slint: Update SHA of tree-sitter parser (#9698) 9 months ago
DS/Charlie ec9efdef3b
Bump tree-sitter-sql (#9634) 9 months ago
Jake Low 03623f2f40
Add osm and osc extensions to xml language filetypes (#9697) 9 months ago
Benedikt Ritter eca537615a
Use groovy support when editing Gradle files (#9681)
The Gradle build tool provides two DSLs for configuring builds. On is
based on Groovy and Gradle build files written in Gradle Groovy DSL use
*.gradle file ending.

This change adds `gradle` to the supported file types of the groovy
language configuration.
9 months ago
Volodymyr Chernetskyi 990378a46b
Add Groovy grammar (#9350)
* Add Groovy grammar

* Rewrite Neovim captures into Helix for Groovy

* Simplify Groovy injections

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

* Remove Neovim's spell from Groovy highlights

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

* Apply suggestions to languages.toml

* Escape backslash in groovy highlights.scm

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
9 months ago
Malpha c72426cc87
Add docker-compose language (#9661)
* languages: add docker-compose language

it uses docker-compose-langserver as lsp
And yaml for syntax highlighting, indents and injections

* languages: add luajit as a shebang of lua

This helps to provide syntax highlighting and
other lua goodies when writing luajit

* book(update): run cargo xtask docgen

* since #8006 full filenames uses glob
9 months ago
Vince Varga 6432669822
Add tmux.conf as a bash file type (#9653)
* Add conf as a bash file type

Tmux and tmux.conf is used widely in software developer circles.

Having the tmux.conf file not have any syntax highlighting by default is (IMO) not ideal for an editor that otherwise "just works".

* Use tmux.conf glob instead of simply conf for tmux

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
9 months ago
Michael Davis 59369d99e2
Bump tree-sitter-erlang, add `*.app.src` file-type (#9627) 9 months ago
Chris 661e123152
Add support for Odin's formatter (#9537) 10 months ago
Tom Manner bb1e2ddcd8
Added "zon" file type to zig language section. (#9582)
`build.zig.zon` is what 0.11.0 uses for external dependencies.  The syntax is a subset of zig and can be highlighted and formatted like normal zig code.
10 months ago
kpbaks 78ed3aded3 feat(languages): use `fish_indent` as the formatter for fish 10 months ago
kpbaks 0eec518ff6 feat(languages): add formatter for just 10 months ago
iko d7c7589fd5
Add Hoon (#9190)
* Added Hoon

* Added highlights.scm

* Updated docs

* Update runtime/queries/hoon/highlights.scm

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
10 months ago
Jimmy Zelinskie d9f7aaacaf
languages: add CEL, SpiceDB schema language (#9296)
* languages: add CEL language and grammar

* languages: add spicedb schema language

* chore: docgen

* runtime/queries: refine spicedb & cel highlights

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

* languages: update spicedb

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
10 months ago
7ombie 204c3707b0
Updated Swift grammar, adding 'any' and 'await' keywords. (#9586) 10 months ago
Galen Abell 581a1ebf5d
Add glob file type support (#8006)
* Replace FileType::Suffix with FileType::Glob

Suffix is rather limited and cannot be used to match files which have
semantic meaning based on location + file type (for example, Github
Action workflow files). This patch adds support for a Glob FileType to
replace Suffix, which encompasses the existing behavior & adds
additional file matching functionality.

Globs are standard Unix-style path globs, which are matched against the
absolute path of the file. If the configured glob for a language is a
relative glob (that is, it isn't an absolute path or already starts with
a glob pattern), a glob pattern will be prepended to allow matching
relative paths from any directory.

The order of file type matching is also updated to first match on globs
and then on extension. This is necessary as most cases where
glob-matching is useful will have already been matched by an extension
if glob matching is done last.

* Convert file-types suffixes to globs

* Use globs for filename matching

Trying to match the file-type raw strings against both filename and
extension leads to files with the same name as the extension having the
incorrect syntax.

* Match dockerfiles with suffixes

It's common practice to add a suffix to dockerfiles based on their
context, e.g. `Dockerfile.dev`, `Dockerfile.prod`, etc.

* Make env filetype matching more generic

Match on `.env` or any `.env.*` files.

* Update docs

* Use GlobSet to match all file type globs at once

* Update todo.txt glob patterns

* Consolidate language Configuration and Loader creation

This is a refactor that improves the error handling for creating
the `helix_core::syntax::Loader` from the default and user language
configuration.

* Fix integration tests

* Add additional starlark file-type glob

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
10 months ago
Matouš Dzivjak d137a08231
feat(languages): pkl (#9515)
* feat(languages): pkl

Add [pkl](https://github.com/apple/pkl) language.
Official documentation: https://pkl-lang.org/

* remove branch indent
10 months ago
Tobias Hunger a1272bdb17
slint: Update treesitter parser and queries (#9551)
* slint: Update treesitter parser and queries

* slint: Port over suggestions from nvim review
10 months ago
zetashift 6e3ed7f0fa
Update Unison tree-sitter grammar for type changes and add indent queries (#9505)
* Update Unison tree-sitter grammar for type changes

* Add indent queries for Unison

* Improve Unison indent queries
10 months ago
Novus Nota d1054de3ce
feat: Add `Tact` language support (#9512)
Re-submitting
10 months ago
Devyn Cairns 3f380722fb
Update grammars for Nushell to rev 358c4f50 (#9502) 10 months ago
sogaiu f5b67d9acb
Use janet-simple grammar for Janet (#9247)
* Use janet-simple grammar for Janet

* Update book

* Tweak language name and related

* Rename janet-simple to janet in book

* Remove spurious language section for janet

* Drop quote_lit and qq_lit related highlighting

---------

Co-authored-by: sogaiu <983021772@users.noreply.github.com>
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
10 months ago
Poliorcetics 0d09fb4f55
lang(git-ignore): add `helix/ignore` to git-ignore file types (#9447) 10 months ago
blinxen 2661e05b34
Update some grammars to a commit where the license file is included (#9279)
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
10 months ago