Commit Graph

826 Commits (aa21bafaac259951567b41c52eb6096d0e7e1078)

Author SHA1 Message Date
Michael Davis 9e88e2ced5
Add rainbow_brackets configuration option
This option is similar to the `rulers` config: it can be set no the
editor key in config and also overridden for specific languages, so
you could enable rainbow brackets for lisps for example without
enabling it globally.
2 weeks ago
Michael Davis 64de0ef3f0
Parse rainbow style array in themes
This change adds a field to the schema of themes which takes a
list of styles.

    rainbow = ["red", "orange", "yellow", { modifiers = ["reversed"] }]
    [palette]
    red = "#ff0000"
    orange = "#ffa500"
    yellow = "#fff000"

Normal style rules apply for each element in `rainbows`: you can
use definitions from the palette and the full fg/bg/modifiers
notation.

Themes written with `rainbow` keys are not backwards compatible.
Parsing errors will be generated for older versions of Helix
attempting to use themes with `rainbow` keys.

A default rainbow is provided with base16 colors.

This change is made with rainbow pair characters (parens, brackets, etc.)
in mind but it could also be used for other rainbow cosmetic elements
like rainbow indent-guides.
2 weeks ago
Elliot Fontaine 38faf74feb
feat: Add support for cylc configuration files (#11830)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
4 weeks ago
Sebastian Dall a1453350df
Adding snakemake to language (#11858)
* feat: snakemake language

* feat: snakemake syntax highlighting

* doc: xtask docgen - snakemake

* Addressed feedback: removed redundant grammar

* fixed indentation

* removed has-ancestor predicate

---------

Co-authored-by: “SebastianDall” <“semoda@bio.auu.dk”>
1 month ago
Ivan B. 5ab1f1eb5a
docs(themes): place `ui.highlight.frameline` and `ui.highlight` together (#11896)
* docs(themes): place `ui.highlight.frameline` and `ui.highlight` together

* docs(themes): small fix
1 month ago
langurmonkey 1437ba1e5a
Add glsl_analyzer as default language server for GLSL (#11891)
* Add glsl_analyzer as default language server for GLSL

* Generate docs
1 month ago
David Else f2d54db24f
Update repology URL after change from helix to helix-editor (#11877)
* Update repology URL after change from helix to helix-editor

* Update book/src/package-managers.md

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

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
1 month ago
Christopher Kaster 048973fc55
Add support for dune project language (#11829) 2 months ago
offsetcyan e5dd60f794
Add Erlang Language Platform (ELP) support to Erlang (#11499)
* Add ELP LSP to Erlang

* generate docs

---------

Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
2 months ago
David Crespo 42453786a0
add key concepts to usage.md (#11485) 2 months ago
RoloEdits 24f24299f2
feat(languages): add `superhtml` as lsp for `html` (#11609) 2 months ago
chtenb 5ffd4ae529
Add undocumented keybindings to book (#11662) 2 months ago
chtenb 8cdce9212c
Improve tree-sitter-subtree (#11663)
* Make unnamed nodes visible in subtree view

* Refine command description

* Update generated docs

* Update unit test expected output
2 months ago
Thor 🪁 c850b90f67
add circom tree-sitter, syntax-highlighting, and lsp support (#11676)
* add circom tree-sitter and lsp support

* add circom syntax highlighting queries

* cargo xtask docgen

* updated highlights to reflect helix themes typing

* bugfix: ~= operator causing issues

* minor adjustment: add = and ; operator and delimiter
2 months ago
Nicolas Karolak a7b8b27abf
chore: add ruff and jedi lsp servers (#11630)
* chore: add ruff lsp server

Ruff provide a `server` command that starts a LSP server:
https://docs.astral.sh/ruff/editors/#language-server-protocol

* chore: add jedi lsp server

[jedi-language-server](https://github.com/pappasam/jedi-language-server) is a Python LSP server based the popular [jedi](https://jedi.readthedocs.io/en/latest/) library.

* docs: add ruff and jedi as python lsp servers
2 months ago
Jaakko Paju b90ec5c779
Add/improve textobject queries (#11513)
* Add textobject queries for YAML

* Add textobject queries for SQL

* Add textobject queries for HOCON

* Add textobject queries for git-config

* Add textobject queries for env

* Add textobject queries for Dockerfile

* Add textobject queries for docker-compose

* Add textobject queries for prisma

* Add entry textobject queries for hcl

* Add entry textobject queries for Nix

* Update docs
3 months ago
Samy AB 91e642ce50
Add gherkin syntax highlighting (#11083)
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
4 months ago
Michael Davis 7e85fd5b77 Add documentation for static/typable/macro commands 4 months ago
Timothy Hutz bb43a90b86
removed duplicate in lang-support MD file with vector dedup. (#10563) 4 months ago
Kiara Grouwstra 3b306fa022
Update languages.toml - add nixd, closes #10734 (#10767) 4 months ago
chtenb e884daea41
Document completion menu bindings (#10994)
* Update keymap.md

* Update keymap.md

* Update keymap.md
4 months ago
Eduard Bardají Puig 779ce41a1f
Provide more details on runtime directory (#11026)
* Provide more details on runtime directory

* Improve pre-built binaries description
4 months ago
麦芽糖 aaaafb8f5f
feat: add thrift hightlight (#11367) 4 months ago
Val Packett 2f60c21727
Add jq language support (#11393)
jq is a language for manipulating JSON data: https://jqlang.github.io/jq/
4 months ago
Heath Stewart d6431f41d9
Add TypeSpec support (#11412)
* 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>
4 months ago
Raph ca47b3c140
Added `mesonlsp` as the default LSP for Meson (#11416)
* defaulted meson to JCWasmx86/mesonlsp

* generated docs for mesonlsp
4 months ago
Erasin Wang b19551b11b
Updated Godot support (#11235)
- update gdscript highlights
- add godot-resource textobjects
4 months ago
麦芽糖 08ac37d295
Add theme keys for the picker header area (#11343)
* feat: pertty header

* 更新 themes.md

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

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
4 months ago
Damir Vandic 9b65448f53
Fix example query in pickers.md (#11322)
Co-authored-by: Pascal Kuthe <pascalkuthe@pm.me>
4 months ago
karei f34dca797c
Add support for `jjdescription` files (#11271) 4 months ago
Ryan Roden-Corrent 5d3f05cbe1
Document use of filter columns in pickers (#11218)
* Document use of filter columns in pickers.

Filtering on columns was implemented in #9647.
The only documentation I could find on this feature
was the PR itself, and the video demo used a different syntax.

* Note that column filters are space-separated.

* Note that picker filters can be abbreviated.

* Specify correct picker in docs.

* Clarify picker filter prefix shortenting.

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

* Move picker docs to their own section.

* Update book/src/pickers.md

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

* Improve docs on picker registers, keybinds, and syntax.

* Clarify wording around picker queries.

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

---------

Co-authored-by: Ryan Roden-Corrent <ryan@rcorre.net>
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
4 months ago
Trevor Gross 70a9477ec8
Add `:mv` as an alias for `:move` (#11256)
`mv` is the familiar shell command to move or rename a file. Add this to
Helix as an alias for `:move`.
4 months ago
Adam Perkowski 850c9f691e
Fixed headings (# / ##) to match other docs (#11192) 4 months ago
Masanori Ogino 6b947518c6
Regenerate documentation (#11196) 4 months ago
Pascal Kuthe 6d051d7084
render diagnostic inline 4 months ago
Michael Davis 9de5f5cefa
Picker: Highlight the currently active column
We can track the ranges in the input text that correspond to each column
and use this information during rendering to apply a new theme key that
makes the "active column" stand out. This makes it easier to tell at
a glance which column you're entering.
4 months ago
Michael Davis f40fca88e0
Refactor Picker in terms of columns
`menu::Item` is replaced with column configurations for each picker
which control how a column is displayed and whether it is passed to
nucleo for filtering. (This is used for dynamic pickers so that we can
filter those items with the dynamic picker callback rather than nucleo.)

The picker has a new lucene-like syntax that can be used to filter the
picker only on certain criteria. If a filter is not specified, the text
in the prompt applies to the picker's configured "primary" column.

Adding column configurations for each picker is left for the child
commit.
4 months ago
David Else 501af93c92
Documentation: Convert links in the `.desktop` file to absolute paths (#11115) 5 months ago
David Else d70f58da10
Fix multiple broken links in the documentation (#10953)
* Fix multiple broken links in the documentation

* Apply code review suggestion

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

---------

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
5 months ago
Hendrik Wolff 265608a3d8
Auto Save All Buffers After A Delay (#10899)
* auto save after delay

* configable

* clearer names

* init

* working with some odd behaviour

* working with greater consistency

* Apply reviewer suggestions

- Remove unneccessary field
- Remove blocking save

* Improve auto-save configuration

Auto save can be configured to trigger on focus loss:
```toml
auto-save.focus-lost = true|false
```

and after a time delay (in milli seconds) since last keypress:
```toml
auto-save.after-delay.enable = true|false
auto-save.after-delay.timeout = [0, u64::MAX] # default: 3000
```

* Remove boilerplate and unnecessary types

* Remove more useless types

* Update docs for auto-save.after-delay

* Fix wording of (doc) comments relating to auto-save

* book: Move auto-save descriptions to separate section

---------

Co-authored-by: Miguel Perez <miguelvojito@gmail.com>
Co-authored-by: Miguel Perez <perezoji@cs.fsu.edu>
6 months ago
Arturs Krumins aa1630a41a
Update Swift Grammar and Queries (#10802) 6 months ago
Zoey Hewll 44504b720b
add elisp support (#10644)
* add elisp support

* update queries for some constants
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
Felix Richter 00e9e5eade
docs/src/package-managers: update nixos link to official wiki (#10718)
This commit updates the the link from the former, unofficial
nixos wiki page to the new https://wiki.nixos.org

ref: https://github.com/NixOS/foundation/issues/113
7 months ago
Aral Balkan f4a61006bf
Remove outdated comment about key binding being disabled (#10717)
I just used the `=` binding to format a selection in a CSS file in helix 23.10 (5931a46c) so removing this comment as outdated.
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
David Else a959c0ef9b
Improve the structure of the documentation (#10619) 7 months ago
Guilherme Salustiano 50b13d1aea
docs[install/pre-build binaries]: add runtime setup (#10693) 7 months ago
Silvan Schmidt 7d1e5f18a2
fix: update link in adding_languages.md (#10677)
Previously, the link would point to the now moved "How to install the default language servers" page. The link now directly points to the up-to-date page.
7 months ago