Commit Graph

460 Commits (27891cdc8d48a61b4a25b95a8ac45256ff69fcbe)

Author SHA1 Message Date
Antonius Naumann 56c0810c68
Change default language server for 'v' from 'vls' to 'v ls' (#5677) 2 years ago
Eloi Torrents 7e191f5915
Support sagemath language (#5649) 2 years ago
Eric Crosson 17acadb305
Use markdown language for hub pull-request files (#5634)
The hub[^1] command-line tool uses a file called `PULLREQ_EDITMSG`[^2].
This file is used to edit the text from of each commit being submitted
in a pull request, and the final content is rendered as markdown by
GitHub.

This commit adds `PULLREQ_EDITMSG` to the list of markdown file-types.

[^1]: https://github.com/github/hub
[^2]: c8e68d548a/commands/pull_request.go (L225)
2 years ago
Jared Moulton 5c6b7127f8
Add build.gradle to list of java roots (#5641) 2 years ago
anna 8e10c592b9
add lua injection regex (#5606) 2 years ago
eugene yokota 4535d0fa74 highlight(scala): update to fix potential crash (#5576)
* highlight(scala): update to fix crash

tree-sitter-scala has recently add a fix to workaround segv crashes in other editors.
Not sure if it happens to Helix as well, but it's probably a good idea to use the latest.

* highlight(scala): String interpolator support

This captures String interpolator as `function`

Co-authored-by: Chris Kipp <ckipp@pm.me>
2 years ago
Nachum Barcohen 94ef6fb69b
Add more file-types for python (#5593) 2 years ago
Ayoub Benali 97083f8836
Enable http server by default in Metals config (#5551)
This is required to make commands like [doctor-run](https://scalameta.org/metals/docs/integrations/new-editor#run-doctor) work.
It simply opens a browser to get general information about the build.

Co-authored-by: Ayoub Benali <ayoub.benali@xing.com>
2 years ago
eugene yokota 6f6334f3c6
highlight(scala): update the Scala highlight queries (#5546)
There have been a lot of changes in tree-sitter/tree-sitter-scala,
including partial support for Scala 3 syntax and breaking changes in
some of the nodes.

This bumps up the grammar to the latest, and adjusts the queries.

Co-authored-by: Anton Sviridov <keynmol@gmail.com>
Co-authored-by: Chris Kipp <ckipp@pm.me>
2 years ago
Clément Delafargue 1f6809c9ce Language support for dhall
https://dhall-lang.org/
2 years ago
Yura Shymon 4e9a0700db
Update tree-sitter-json, add jsonc as file-type for json (#5509)
New git revision of tree-sitter-json that supports comments.
Jsonc is alias for json.
Both formats doesn't mark comments as errors now.
2 years ago
Sam McCall a8248c50e1
Update tree-sitter-cpp, support injections in tagged rawstrings (#5457)
The grammar now exposes the delimiter of raw-strings.
We can now inject the inner grammar in cases like:

    const char* script = R"js(
      alert('hello world!');
    )js";
2 years ago
Matthias Wahl e65f28d41a
Add language support for ponylang (#5416)
See https://www.ponylang.io
2 years ago
Michael Davis b368df5785
Use tree-sitter-ruby for crystal (#5205) 2 years ago
Julius de Bruijn 5627c604ef
Update Prisma tree-sitter for view support (#5417) 2 years ago
Jonathan LEI febe1a5172
Fix comment token for sshclientconfig (#5351) 2 years ago
k12ish 6f8f9cac9a
Add bash syntax highlighting for `.bash_aliases` (#5347) 2 years ago
Erasin f0c6e6c9ee
fix comment token of godot resource file (#5276) 2 years ago
g-s-k 042d03269e
Add support for MATLAB/Octave files (#5192) 2 years ago
Jonas Everaert aecb524e50
Crystal language support (#4993) 2 years ago
alice 3e6887648c
set 'c++' as a recognised extension for cpp (#5183) 2 years ago
Erasin 436296b76c
Add Mermaid.js for markdown support (#5147) 2 years ago
Blaž Hrastnik bae890d8fa
Update tree-sitter-scheme 2 years ago
garlic0x1 a34ba071be
Fix commonlisp filetypes typo and auto-pairs (#5091) 2 years ago
Danilo Spinella f323ffabcc
Treat patches as diff files (#5085) 2 years ago
Felipe S. S. Schneider d14de27709
Add support for the BibTeX file format (#5064) 2 years ago
Blaž Hrastnik 417676953b
Add basic support for common lisp 2 years ago
Aleksey Kuznetsov 2123e91e56
Enable auto format for css and scss files (#4987)
provideFormatter enables capability in LS and
auto-format performs format on save
2 years ago
Matouš Dzivjak d0bc38d6fa
feat(lang): bump tree-sitter-go (#4969)
Update tree-sitter-go to latest with updated support for generics.

See: 0fa917a702..05900faa3c
for full diff.
2 years ago
Michael Davis 67415e096e
Fix file-types declaration for racket (#4915)
Both the racket and scheme entries used the rkt file-extension. This
commit removes that entry for scheme and so that the racket entry takes
precedence. We explicitly point to the scheme grammar now and setup
queries that inherit from scheme. This should enable using the racket
language server configuration.
2 years ago
Chickenkeeper bf908cc4a1
Update CSS syntax highlighting (#4882) 2 years ago
Lennard Hofmann fc811726e0
Update tree-sitter-java and add Java textobjects (#4886) 2 years ago
Chickenkeeper f2a55331d0
Bump tree-sitter-html version (#4881) 2 years ago
Michael Davis ee06d4d337 Update tree-sitter-gleam
This update includes a handful of fixes, a new binary concatenation
operator (already highlighted by the `binary_operator` rule), and a
new `use` language construct. The nodes are backwards compatible but
this update introduces two new nodes for highlighting: `use` and `<-`.
2 years ago
Michael Davis cbc72e84d7 Update tree-sitter-heex
tree-sitter-heex split out the ending_expression_value from the
partial_expression value which can help with indentation.
2 years ago
Michael Davis 452f7d071c Improve Edoc highlighting within Erlang
This highlights edoc within Erlang comments. The trick was to have
the Erlang grammar consume newlines and then give them to EDoc in the
injection to use so that line-wise elements could be parsed accurately.
2 years ago
alois31 26ec1cf39a
Add QML language support (#4842)
Fixes https://github.com/helix-editor/helix/issues/2771
2 years ago
ath3 598bd8bf11
Update tree-sitter-cmake (#4809) 2 years ago
Ollie Charles eada6d534e
Match `.hs-boot` files to Haskell (#4800)
Haskell source files are now either `.hs` (as before) or `.hs-boot`, which is a type of Haskell file that only contains type declarations (https://downloads.haskell.org/ghc/latest/docs/users_guide/separate_compilation.html#how-to-compile-mutually-recursive-modules)
2 years ago
Blaž Hrastnik 433ccef3fc
Make nil the preferred language server over rnix-lsp 2 years ago
Garrett D'Amore f843967059
Improvements to Meson syntax. (#4572)
Co-authored-by: Garrett D'Amore <garrett.damore@weka.io>
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Michael Davis 652497bdd6
Use tree-sitter-bicep fork with sources checked in (#4751) 2 years ago
Jonathan 1233c9a989
Add support for Bicep files (#4403) 2 years ago
Alexis (Poliorcetics) Bourget 53b70d821e deps: Update tree-sitter-rust (supports let-else && let-chains) 2 years ago
Chris Kipp d7be5463c5
update scala roots (#4701)
This adds in a couple more roots that are common in Scala.

- `build.sc` which is used in Mill
- `build.gradle` for Scala Gradle projects
- `.scala-build` for scala-cli projects
2 years ago
Gabriel Dinner-David 7367abd6c6
Update typescript grammar and queries (#4703)
* fix(grammars): update treesitter grammar and queries

* add override keyword

* Update runtime/queries/typescript/highlights.scm

Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
2 years ago
Philip Giuliani e17ad2722a
Enable elixir-ls for heex language (#4679) 2 years ago
Chris Kipp 183d1fadf4
feat: add sc to filetypes for Scala (#4697)
Files ending in `.sc` are known as "Scala Scripts". The scalac compiler
knows how to handle these, popular tools like
[Ammonite](https://github.com/com-lihaoyi/Ammonite) and
[scala-cli](https://github.com/Virtuslab/scala-cli) use them, and even
some Scala build tools like [mill](https://github.com/com-lihaoyi/mill)
use them as their build files (`build.sc`). This change just makes sure
that they are treated as Scala files so Metals kicks in.
2 years ago
ChrHorn 4ec2a21c6e
Update Julia grammar, queries (#4588) 2 years ago
Antoine Stevan 921d351013
bump up LhKipp/tree-sitter-nu's version to latest (#4583) 2 years ago
throwaway-helix-zsh d357f1673f
Use language=bash when shebang line uses zsh (#4582)
This PR makes the editor use language=bash when the shebang line uses
zsh. This is in the same line as using language=bash for zsh related
file (~/.zshrc, ~/.zshenv etc.) as we already do.
2 years ago
ChrHorn c667ff8da3
Increase default language server timeout for Julia (#4575) 2 years ago
Sebastian Hoß 9b247b1104
Update SSH client config grammar & highlight queries (#4538)
Co-authored-by: Sebastian Hoß <seb@hoß.de>
2 years ago
seshotake ed7ea8c9ba
add highlights for env and ini file formats (#4536) 2 years ago
hh9527 9df4358492
Support WIT grammar (#4525) 2 years ago
seshotake f6710879d1
Update SQL grammar (#4529) 2 years ago
Triton171 908529ccac
Update LaTex grammar (#4528)
Fix comment injection & add highlighting for math delimiters.
2 years ago
Matthew Toohey f054a3f3ed
feat(lang): add xml (#4518) 2 years ago
Jaden b5e7501935
feat(lang): add kdl grammar (#4481) 2 years ago
rsteube 26f21da531
language: added vhs (#4486) 2 years ago
Sora de5b100556
Add the debugger for Zig (#4492) 2 years ago
Matthias Deiml 27217bb435
Update tree-sitter markdown grammar (#4483) 2 years ago
Owen Lynch d8ffa02255
Update scala treesitter grammar (#4353) 2 years ago
Michael Davis 17daf6ac0a
Change syntax for suffix file-types configurations (#4414)
The change in d801a6693c to search for
suffixes in `file-types` is too permissive: files like the tutor or
`*.txt` files are now mistakenly interpreted as R or perl,
respectively.

This change changes the syntax for specifying a file-types entry that
matches by suffix:

```toml
file-types = [{ suffix = ".git/config" }]
```

And changes the file-type detection to first search for any non-suffix
patterns and then search for suffixes only with the file-types entries
marked explicitly as suffixes.
2 years ago
Garrett D'Amore 36f97b6aad
Add support for D (#4372)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Jared Ramirez de607830a2
Upgrade rescript tree sitter & highlights (#4356)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
midnightexigent d801a6693c
Allow using path suffixes to associate language file-types (#2455)
* feat(syntax): add strategy to associate file to language through pattern

File path will match if it ends with any of the file types provided in the config.
Also used this feature to add support for the .git/config and .ssh/config files

* Add /etc/ssh/ssh_config to languages.toml

* cargo xtask docgen

* Update languages.md

* Update languages.md

* Update book/src/languages.md

Co-authored-by: Ivan Tham <pickfire@riseup.net>

* Update book/src/languages.md

Co-authored-by: Ivan Tham <pickfire@riseup.net>

Co-authored-by: Ivan Tham <pickfire@riseup.net>
2 years ago
Sukera a7e7c2cc05
Add `roots` for julia to languages.toml (#4361) 2 years ago
Clay b07ef6bec3
Bump tree-sitter-elixir (#4333) 2 years ago
Blaž Hrastnik 09a6df199e Support Cairo 0.10 syntax 2 years ago
Blaž Hrastnik 431f9c14f3 Support Cairo 0.10 syntax 2 years ago
Jonathan LEI 17488f14d6 Fix Cairo comment token 2 years ago
Filip Dutescu 2457111bf0
feat(csharp,debug): add C# debugger support (#4213) 2 years ago
Dario Oddenino 2d958d6c50
Add support for Purescript language (#4242) 2 years ago
Chickenkeeper b4e795d704
Fix C++ syntax highlighting, and improve C & WGSL highlighting (#4079) 2 years ago
Lennard Hofmann a24fae3b3c
Update tree-sitter-lua and add textobjects for Lua (#3552) 2 years ago
gbprod 9f36468b15
Change twig tree-sitter grammar (#4176) 2 years ago
Chickenkeeper 8e8ba06f60
Improve C# syntax highlighting (#4118) 2 years ago
David 18f6ec7a8e
Update treesitter markdown (#4078)
* Update treesitter markdown

* Update inline and add table injections
2 years ago
Roberto Vidal cc257e9bf9
Add support for webassembly text format (#4040) 2 years ago
Chickenkeeper 60aa7d3607
WGSL syntax highlighting fix (#3996) 2 years ago
Clay 1a4a9b86d7
heex: upgrade grammar, add roots matching elixir (#3959) 2 years ago
Riccardo Binetti 3a245fe792
Add mix.exs and mix.lock as Elixir root markers (#3917) 2 years ago
Alex Suraci ea25ed6431
add `bass` language + highlighting (#3771) 2 years ago
Artem Pyanykh 08937fc00e Add Markdown LSP via Marksman
Marksman is an LSP server for Markdown: https://github.com/artempyanykh/marksman
It supports a bunch of LSP features: symbols, references, rename, diag,
etc. and already has integrations with emacs, neovim, and vscode.
2 years ago
Benjamin Streit 714db9c666
fix: Improving JSX and TSX indents (#3853) 2 years ago
Benjamin Streit ffb41a94f0
feat: Syntax highlighting for Astro files (#3829) 2 years ago
Erasin a15420ed1c
Add textobject for gdscript (#3760) 2 years ago
Erasin 54e78dd24f
Add godot resource support (#3759)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Matouš Dzivjak 321cce3f13 enable lint option
Enable lint option to highlight unused vars, etc.
and take full advantage of the running language server.
2 years ago
Matouš Dzivjak 76b3f502c4 feat(lsp): jsonnet-language-server
Add jsonnet-language-server for jsonnet language.
See: https://github.com/grafana/jsonnet-language-server
2 years ago
ChemicalXandco 7210b39587
change to openscad-lsp (#3750) 2 years ago
Akseli 8a1047c844
Add "markdown" as a possible filetype (#3749) 2 years ago
Matouš Dzivjak 5ab85283e9
feat(languages): jsonnet (#3714)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Benoît Cortier 16ce036bdf
Add good default rulers when editing git messages (#3738)
Around 50 columns for the summary is good because it is often used as
heading or as subject in emails. 72 columns for the body is generally
good because some tools do not wrap long lines (`git log` with pager
`less` is a good example). Helix's `:reflow` command is really good to
help with the second point.

Linux kernel documentation says:

> For these reasons, the ``summary`` must be no more than 70-75
> characters, and it must describe both what the patch changes, as well
> as why the patch might be necessary.  It is challenging to be both
> succinct and descriptive, but that is what a well-written summary
> should do.

Source:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst#n627

tpope:
https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html

Commit message style guide for Git:
https://commit.style/
2 years ago
Giorbo 5b1113766d
Add syntax highlighting for SML (#3692)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Timothy DeHerrera 5ed751c67d remove `^$` from injection regexs 2 years ago
Michael Davis 43b31f702a
Update tree-sitter-diff (#3708)
This change also renames the grammar from `git-diff` to `diff`.
The grammar covers regular diff syntax so I renamed the repository
a while ago.
2 years ago
Lennard Hofmann fb92d71d08
Update tree-sitter-fish to latest commit (#3704) 2 years ago
Blaž Hrastnik 20ed8c2595
tree-sitter-solidity: Use upstream, update queries 2 years ago
voroskoi 6e5e38c2ba
update zig grammar and highlight rules (#3621) 2 years ago
Michael Davis 03f0ef93ac Update tree-sitter-rust to latest
There don't appear to be any regressions from the updates.
Also included is a fix which highlights the "#" as in attributes
as punctuation. This was previously unhighlighted.
2 years ago
Michael Davis acf3599723 erlang: Use Edoc style auto-pairs
Specifically this changes backtic's right-hand-side pair character
to single-quote which is the syntax for inline and block code in
Edoc.
2 years ago
Gustavo Bogarín e066782782
Add c-sharp textobjects (#3494)
Co-authored-by: Gustavo Bogarín <gbogarin@outlook.com>
Co-authored-by: Gustavo Bogarín <gbogarin@posibillian.tech>
2 years ago
ath3 86a8ea57bb
Pascal support (#3542) 2 years ago
Michael Davis 28c5e2170e
Update tree-sitter-ruby (#3527) 2 years ago
ath3 45add73fb1
AWK support (#3528) 2 years ago
Christoph Horn 77f11bf272 Julia queries: update grammar, fix breaking changes 2 years ago
Jaden 2b16fd43f9
feat(lang): Add esdl grammar (#3526) 2 years ago
seb-bl ccae718a67
Improve dart indent (#3419) 2 years ago
ChemicalXandco 6b912b8641
add syntax highlights for xit (#3521) 2 years ago
ScribblyBirb 7e330697e1
Update tree-sitter-elm to latest commit (#3497) 2 years ago
Michael Davis e61c0b461c
Update tree-sitter-org (#3489)
The update fixes a bug that caused the external scanner to hang during
error recovery.

Looking at the diff, there are no structural changes in this update.
There are a few new fields and it looks like some edge-case fixes
but nothing that breaks compatibility with the current queries.
2 years ago
Alexander Brevig aef00a3ab6
feat: add taskwarrior to languages so `task N edit` is nice (#3468)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
jdrst 9b0fd51318
removes deprecated stdio flag for omnisharp (#3480) 2 years ago
Michael Davis 254d558907
Update tree-sitter-swift (#3461) 2 years ago
Joshua Suskalo d192d59753
Update Clojure language definition (#3387) 2 years ago
Erasin 921027fb32
Update tree-sitter-latex and highlights (#3370)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Kyle L. Davis 4ce5a94552
Add language: beancount (#3297)
Co-authored-by: erasin <erasinoo@gmail.com>
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
Co-authored-by: Erasin <erasinoo@gmail.com>
2 years ago
Erasin f09d2bc56b Add slint-ui support
<https://slint-ui.com/>
lsp: <https://github.com/slint-ui/slint/tree/HEAD/tools/lsp>
tree-sitter-slint: <https://github.com/jrmoulton/tree-sitter-slint>
2 years ago
Matthias Deiml ea04220874
Use split_parser branch for markdown grammar (#3108) 2 years ago
PiergiorgioZagaria 219d2c2515
Change default formatter for any language (#2942)
* Change default formatter for any language

* Fix clippy error

* Close stdin for Stdio formatters

* Better indentation and pattern matching

* Return Result<Option<...>> for fn format instead of Option

* Remove unwrap for stdin

* Handle FormatterErrors instead of Result<Option<...>>

* Use Transaction instead of LspFormatting

* Use Transaction directly in Document::format

* Perform stdin type formatting asynchronously

* Rename formatter.type values to kebab-case

* Debug format for displaying io::ErrorKind (msrv fix)

* Solve conflict?

* Use only stdio type formatters

* Remove FormatterType enum

* Remove old comment

* Check if the formatter exited correctly

* Add formatter configuration to the book

* Avoid allocations when writing to stdin and formatting errors

* Remove unused import

Co-authored-by: Gokul Soumya <gokulps15@gmail.com>
2 years ago
Banst 7e06681413
feat: add cue support (#3262) 2 years ago
Erasin 919edfb323
Add Graphviz Dot lang support (#3241)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Ricardo Silva 2f1d3d0899
Add LSP config for Odin (#3214) 2 years ago
Kirawi 0a2646e720
Improve python highlighting (#3103)
* improve python queries

* update python grammar to `0.20.2`

* fix variadic parameter scope

* add punctuation scopes

* fix order of punctuation scopes

* undo  `embedded` delete
2 years ago
Daniel Longeuay 2ede98c4b4
feat(tree-sitter): add go template support (#3091)
* feat(tree-sitter):  add go template support

* fix(tree-sitter): 🐛 go template highlight scope selectors

* chore(tree-sitter): 🔧 update go template grammar commit
2 years ago
Joe d6fd93788c
Add rabl/jbuilder/jb extensions for Ruby (#3173)
* Add rabl and jbuilder

* Add jb
2 years ago
Andrey Tkachenko 1b3a10d906
Add `vh` verilog header file type to `file-types` (#3158) 2 years ago
Clay e560212ec5
Gleam: add support for built-in language server (#3139)
* Add gleam lsp support

* Docgen gleam lsp support
2 years ago
Joe 43761d426c
Remove .git extension from SCSS tree-sitter repo url (#3089) 2 years ago
Joe 0c9594e41e
Add SCSS language support (#3074) 2 years ago
Philipp Mildenberger e97b8607c1
Added ungrammar language support (#3048) 2 years ago
Austen LeBeau 0cb0c30618
add fortran language (#3025) 2 years ago
Erin van der Veen e0cf19c612
Update tree-sitter-nickel (#2987) 2 years ago
Ivan Tham b612211070
Update tree-sitter-ledger (#2936) 2 years ago
Michael Davis aacd0c8aa5
Update TSQ queries (#2960)
A few changes to make TSQ highlights better:

* A parsing error has been fixed in the grammar itself
    * Previously tree-sitter-tsq did not parse the variables
      in predicates like `(#set! injection.language "javascript")`
* Theme nodes as `tag`
    * The newly added node to the parser (from the above fix) is
      `variable` which takes over the `variable` capture from nodes
* Highlight known predicates as `function` and unsupported
  predicates as `error`
    * This may help when translating queries from nvim-treesitter.
      For example `#any-of?` is a common one used in nvim-treesitter
      queries but not implemented in Helix or tree-sitter-cli.
* Inject tree-sitter-regex into `#match?` predicates
2 years ago
Matthew Toohey d78354c537
add language `idris` (#2971) 2 years ago
0rphee e58d28a972
Add Haskell roots (#2954) 2 years ago
rsteube 4c30a3609a
languages: added elvish (#2948) 2 years ago
Michael Davis c5600c9c01 markdown: limit raw block highlight to code fence content 2 years ago
Michael Davis bf1aa8876c git-commit: fix highlight edge cases
* branch message with current branch and diverged branch has been
  added to the parser
* scissors used in verbose commits are marked as a punctuation
  delimiter
    * we could use comment instead since they're visually the
      same but IMO this works better
2 years ago
Michael Davis a890c4a64d tsq: update parser to fix escaping double quotes
This includes a fix for the new HTML highlights introduced a few
parent commits back:

    ["\"" (attribute_name)] @string

Would get tripped up and the entire line would be highlighted as
a string. Now `\"` is a valid escape.

I'm switching to my fork as the primary repo as the upstream hasn't
been touched in over a year (mostly because stability afaict) but
it has no watchers currently so I'm not hopeful that my PR will
be merged.
2 years ago
Michael Davis d8f036f0a9 erlang: update parser for fix on remote calls 2 years ago
Michael Davis 199a2460ca make: add injection-regex 2 years ago
Michael Davis beb19fe1bd bash: expand injection-regex to common shells 2 years ago
Michael Davis 64cf4c859b
support Bazel languages (#2903) 2 years ago
Kihaya Sugiura 24351c20d4
languages: Fix ruby rakefile and gemfile file type (#2875) 2 years ago
Hekno25 33e6df8707
feat: add wgsl_analyzer as wgsl language server (#2872) 2 years ago
Erin van der Veen b365f2d614
update tree-sitter-nickel to include ' in ident (#2859)
see https://github.com/nickel-lang/tree-sitter-nickel/pull/9
and  https://github.com/tweag/nickel/pull/737
2 years ago