Similar to OCaml and other ML languages, single quote is a normal
character that can appear in identifiers and is also used in type
parameters. It is not used for strings or character literals, which both
use double quote.
Co-authored-by: Rose Hogenson <rosehogenson@posteo.net>
The `-stdin` in `odinfmt` does not take any arguments, the `true` part here just confuses the formatter, and makes it ignore `odinfmt.json` file.
Removing it fixes the issue.
* Point HCL grammer to newest
This adds support for provider-defined function calls in Terraform.
* Update HCL grammar repo
The repository was moved from the original authors personal GitHub to the `tree-sitter-grammars` organization.
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
---------
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
The Lean process, spawned by the language server, might use excessive
memory in certain situation, causing the entire system to freeze. See:
https://github.com/leanprover/lean4/issues/5321
The language server accepts a CLI flag for limiting memory use. I set
it to 1024MB, which might be a bit arbitrary, but definitly prevents
the system from crashing.
The repository reference used here was a fork from the actual
repository, which has now been moved under ionide organization, where it is
in active maintenance and development.
The commit SHA is the currently latest commit from main branch.
The injections.scm is copied as is from the fsharp treesitter repo
[queries](https://github.com/ionide/tree-sitter-fsharp/blame/main/queries).
The locals.scm is copied from the repo and the capture names are to follow
the standard names:
- Replace @local.definition.var @local.definition.function, and @local.definition.parameter with @local.definition
- Remove (#set! "definition.function.scope" "parent")
The highlights.scm is copied as well from the fsharp
treesitter repo, but modified here to match helix highlight scopes based
on my best guesstimates. The changes made:
- Remove @spell scopes
- Split @comment into @comment.line and @comment.block
- Replace @comment.documentation with @comment.block.documentation
- Replace @character.special with @special
- Replace @variable.member with @variable.other.member
- Replace @type.definition with @type
- Replace @function.member with @function.method
- Replace @module with @namespace
- Replace @constant.macro with @function.macro
- Replace @property with @variable.other.member
- Replace @variable.member with @variable.other.member
- Replace @variable.parameter.builtin with @variable.builtin
- Replace @function.call with @function
- Replace @number with @constant.numeric.integer and @constant.numeric.float
- Replace @boolean with @constant.builtin.boolean
- Replace @keyword.conditional with @keyword.control.conditional
- Replace @keyword.return with @keyword.control.return
- Replace @keyword.repeate with @keyword.control.repeat
- Replace @keyword.import with @keyword.control.import
- Replace @keyword.modifier with @keyword.storage.modifier
- Replace @keyword.type with @keyword.storage.type
- Replace @keyword.exception with @keyword.control.exception
- Replace @module.builtin with @namespace
* Add TypeSpec support
Adds support for TypeSpec <https://typespec.io> in helix.
* Resolve PR comments
* Pull in LICENSE
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
---------
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
The primary executable that comes with Tcl is `tclsh`. Not really sure what `tclish` is, as I initially thought it was a typo. However, there seems to be references to it based on a quick search (e.g. [here](https://wiki.tcl-lang.org/page/Tclish) and [here](https://tclish.sourceforge.net/)), so maybe it's a valid executable that I just haven't been aware of. I was hesitant to replace it and instead opted to just add `tclsh`.
* feat(languages): update `just` grammar and queries
Bump the
* refactor(syntax): inject shebang by id not name
---------
Co-authored-by: Trevor Gross <tmgross@umich.edu>
* 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>
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
* 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>
`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
* 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>
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.