Commit Graph

677 Commits (9652a137d41aa0a6d739cf5841893beda4b38e70)

Author SHA1 Message Date
Matthew Toohey 2e4653ea31
add koka language support (#8727)
Co-authored-by: Pascal Kuthe <pascal.kuthe@semimod.de>
9 months ago
Phil 94d210c9bf
Add initial support for SuperCollider (#9329) 9 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
9 months ago
Erasin Wang 64389f97fe
Updated grammar for hurl 4 (#9775) 9 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>
9 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
9 months ago
Arthur Deierlein 9ec0271873
Add support for hyprland config (#9899)
* feat: add hyprland config language

* adjust indents to helix

* adjust highlights to helix
9 months ago
Nick 6fea7876a4
Fix comment key bind behaviour in OCaml (#9894) 9 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
10 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>
10 months ago
Michael Davis 59369d99e2
Bump tree-sitter-erlang, add `*.app.src` file-type (#9627) 10 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
Idobenhamo 299bcce481
Update Typst Tree-Sitter grammar (#9403)
Co-authored-by: Idobenhamo <idobenhamo@users.noreply.github.com>
10 months ago
Boris Verkhovskiy 7d7ace551c
Highlight .bash_history as bash (#9401) 10 months ago
Jaakko Paju 9ed3dc52e0
Update Scala tree-sitter grammar (#9348)
* Update Scala tree-sitter grammar

* Support block comments

Modify comment handling in textobjects and highlights to support new TS-scala node type 'block_comment'
10 months ago
Jeremy Brudvik f41727cc9c
Support PureScript's new spago.yaml configs (#9362) 11 months ago
Michael Davis 17dd102e5c
Remove sourcehut tree-sitter grammars from default build (#9316)
Sourcehut has outages occasionally that cause the CI and from-source
builds to fail. It also doesn't setup redirects when a user renames
themselves, so if a user that publishes a tree-sitter grammar we use
changes their sourcehut name then it breaks the build and any prior
builds using that grammar.

For now let's remove them from the default build. It's a bandaid over
a larger reliability and trust problem with the grammar repositories
but it should fix the build for now.
11 months ago
Kirawi 7af78c7788
update comment grammar (#9253) 11 months ago
Greedwolf DSS 918bd9c2b0
feat: update wren tree-sitter grammar (#8544)
Co-authored-by: masai.dss <masai.dss@bytedance.com>
11 months ago
Jaakko Paju a32d537d0a
Add HOCON language support (#9203)
* Add HOCON language support

* Remove error query

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

* Change include query

* Fix query error

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
11 months ago
petrak@ 7e389b67c2
Add auto-pairs to scheme language support (#9232)
Currently, typing a single quote in a `.scm` file "helpfully" auto-
completes a closing quote. This is because there is no auto-pairs
section in the languages.toml. This commit adds that.
11 months ago
Jaakko Paju a6ed104ea2
Add .prettierrc to json file types (#9214) 11 months ago
Pascal Kuthe 8653e1b02f Add config to mark diagnostic sources as persistent 11 months ago
romi ab50299efa
Add .glif to XML file-types (#9130)
`.glif` files are standard files in the type design industry. From the
Unified Font Object specification website:

The Glyph Interchange Format (GLIF) is a simple and clear XML
representation of a single glyph. GLIF files typically have a .glif
extension.
https://unifiedfontobject.org/versions/ufo3/glyphs/glif/
11 months ago
Evan Richter a98b8ddd1a
add smali language support (#9089) 12 months ago
Lucas Wagler 970f9e6333
Add Avro schema file support (#9113) 12 months ago
0rphee 0a83d85124
Add haskell-language-server as lsp for cabal files (#9111) 12 months ago
JJ c56cd6ee8b
Add support for Agda (#8285)
* agda language support (wip)

* improve highlights

* disable agda-language-server

* minor addendum to documentation

* cargo xtask docgen

* oh i can just do this neat

* minor comment cleanup

* upstream updated

* imports: missed a spot

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
12 months ago
Matthew Toohey 11856329bf
Change R markdown language name to fix language server detection (#9012) 12 months ago
Phil b4571c292e
Add initial support for janet-lang (#9081)
* Add initial support for janet-lang

* Use default roots for janet-lang
12 months ago
Michal Rostecki c2591445c9
chore: Update tree-sitter-d (#9021)
One of the included changes is gdamore/tree-sitter-d#22 which
fixes the build of Helix when using clang as `CC`.
12 months ago
Frederick Schwalbe c3cb1795bf
Update gleam grammar and queries (#9003) 1 year ago
Manuel Mendez 9fcfb88132
Add .envrc.local and .envrc.private to env file-types (#8988) 1 year ago
Skyler Hawthorne fcd564fddf
upgrade tree-sitter-python (#8976)
supports new syntaxes from Python 3.12
1 year ago
Nan Zhong 466b87c8e5
languages: update rescript grammar (#8962)
This bump fixes a build failure of the grammer with clang.
1 year ago
Tudyx f8d261cd20
add log tree-sitter (#8916)
* add log tree-sitter

* better highlight queries
1 year ago
A-Walrus 0739d13b03
Add musicxml to xml extensions (#8935) 1 year ago
Blaž Hrastnik 6d168eda27
fix CI: tree-sitter-gemini user renamed 1 year ago
ghashy ff095ebd9b
DBML Language support (#8860)
* DBML language support

* DBML language support, highlights.scm added

* DBML support

* Update runtime/queries/dbml/highlights.scm

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

* Update runtime/queries/dbml/highlights.scm

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

* Update runtime/queries/dbml/highlights.scm

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

* remove unnecessary block highlight

* remove unnecessary line

* remove index_block query

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
1 year ago
Ethan Brierley f1b9c19fa9
add LSP for nushell (#8878) 1 year ago
Dan Field b306b25e82
GN language support (#6969)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
1 year ago
blinxen 39aa6fa646
Update some grammars to a commit where the license file is included (#8691) 1 year ago
Michael Davis 69a0df929a Remove 'roots' keys with default value from languages.toml 1 year ago
blt__ 172ef2fa9f
Highlight meson_options.txt as a meson file (#8794) 1 year ago
Triton171 cb0bc25a9f
Add indent queries for scheme (and reuse them for common-lisp & racket). (#8720) 1 year ago
postsolar a98ad137f9
Update PureScript grammar (#8712) 1 year ago
MDeiml 2fddc2a4fc Update markdown grammar to v0.1.6 1 year ago
cgahr 5c325fe342
replace kdl tree-sitter to fix highlighting (#8652)
* replace kdl tree-sitter

* kdl: adopt highlights for new tree-sitter

* kdl: add indent queries

* kdl: add textobjects

* kdl: improve syntax highlighting

* kdl: update lang-support

* kdl: make indents more concise

---------

Co-authored-by: Constantin Gahr <constantin.gahr@ipp.mpg.de>
1 year ago
Angus Dippenaar 44e03fa414
add golangci-lint-langserver (#8656)
* languages add golangci-lint-langserver

* update docs
1 year ago
Gabriel Dinner-David 4f1d414d9c
switch to tree-sitter-ron (#8624) 1 year ago
Frans Skarman 9eec9adb8f
Add LPF tree sitter (#8536)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
1 year ago
Alexander Brevig 2906660119
Add typst language and lsp (#7474)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
1 year ago
rsteube 764715a6c0
languages: add templ (#8540) 1 year ago
Ryan Mehri 814cf177d4
bump tree-sitter-haskell and update queries (#8558) 1 year ago
NomisIV 1ef7f24dae
Update purescript-tree-sitter grammar (#8527) 1 year ago
Kasper Juul Hermansen 5cb76e74f9
add lsp for graphql (#8492)
graphql-lsp has quite the strange name upstream, the project is technically called graphql-language-service,
but the binary shipped is called graphql-lsp hence the strange naming scheme

Signed-off-by: kjuulh <contact@kjuulh.io>
1 year ago
DS/Charlie 96bbfb7c2e
bump tree-sitter-sql (#8464)
* bump tree-sitter-sql

* update highlights classes to helix flavour

* replace lua-match with match
1 year ago
Laurent Wandrebeck bdf7937a59
Add ansible-language-server for yaml (#7973)
* Update languages.toml

Add ansible support to yaml.

* cargo xtask docgen
1 year ago
DS/Charlie 93e54fa0c8
add support for json5 (#8473)
* add json5 language

* docgen
1 year ago
David Else 68fce3e160
Add tailwindcss language server (#8442) 1 year ago
David Else 0e13db2832
Add validation to CSS and JSON language servers (#8433) 1 year ago
Yoav Lavi 893802d5a2
Add VSCode file associations (#8388)
* Add VSCode file associations

* Update languages.toml

Co-authored-by: Robert Clover <robert@clover.gdn>

* Change cpp *.in files to suffixes

---------

Co-authored-by: Robert Clover <robert@clover.gdn>
1 year ago
Ken Micklas 0c879d4edc
Add shebangs for Makefiles (#8410)
For example, this is standard for Debian rules files: https://www.debian.org/doc/manuals/maint-guide/dreq.en.html#defaultrules
1 year ago
nerohd 0252c7b162
add polkit rules files to javascript detection (#8370) 1 year ago
nerohd 7702e130ba
add polkit policy files to xml detection (#8369)
polkit policy files are just xml files, https://www.freedesktop.org/software/polkit/docs/latest/polkit.8.html for more info
1 year ago
zefr0x 842687e845
Add `.webmanifest` as supported JSON files (#8342)
Closes #8310
1 year ago