I have just found out that my recent Windows Terminal version
supported rendering undercurl (see
https://devblogs.microsoft.com/commandline/windows-terminal-preview-1-20-release
). However, looking at the source, terminfo is required for helix to
emit the undercurl control code, which isn't available on Windows AFAIK.
This commit make helix respects the `editor.undercurl` option when
there is no terminfo.
Tested on Windows Terminal Preview 1.20
Signed-off-by: Khang Nguyen <khang.nguyenduycse@hcmut.edu.vn>
Before the fix, the color that the original (Neovim) tokyonight uses for
Neovim's visual mode was used in Helix for highlighting the selected
item in the picker. But for the highlighting of selected _text_ in
Helix (corresponding to Neovim's visual mode), a much darker background
was used. This made it very hard to pick out selected text, in
particular in suboptimal lighting conditions.
I swapped the two colors, so that text selection now looks like in
Neovim, while selected items in the picker are highlighted a bit less
strongly. (But still easy to see because the whole line is highlighted.)
* 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>
* feat: add 'file-abs-path' to statusline (#4434)
* cleanup implementation
* rename to be non-abbreviated names
---------
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
* 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
* implement another selection modifying command
* Selection feels more ergonomic in case of swapping the direction. This also fixes a problem when starting at an empty line.
* rename select_line_up/down to select_line_above/below
* apply clippy suggestion of using cmp instead of if-chain
* revert `Extent` implementing `Clone/Copy`
* move select_line functions below extend_line implementations
* implement help add function, which saturates at the number of text lines
---------
Co-authored-by: Emi <emanuel.boehm@gmail.com>
* 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
Test Document
-------------
```
a)b
```
Steps to Reproduce
------------------
1. % # select_all
1. ms( # surround_add
1. mam # select_textobject_around
Debug and Release
-----------------
`thread 'main' panicked at 'Attempt to index past end of RopeSlice:
char index 7, RopeSlice char length 6', ropey-1.6.1/src/slice.rs:796:13`
Description
-----------
An index was selected beyond the end of the slice with chars_at. The fix
adds a guard check to `find_nth_open_pair`, like in the other find_nth*
functions.
Test Document
-------------
```
{{
}
}
```
Steps To Reproduce
------------------
1. 2j # move_visual_line_down
1. C # copy_selection_on_next_line
1. mdm # surround_delete
Debug
-----
`assertion failed: last <= from', transaction.rs:597:13`
Release
-------
`called `Result::unwrap()` on an `Err` value: Char range out of bounds:
char range 18446744073709551614..18446744073709551615,
Rope/RopeSlice char length 7', ropey-1.6.1/src/rope.rs:546:37`
Description
-----------
Processing the surrounding pairs in order violates the assertion the
ranges are ordered. To handle nested surrounds all positions have to
be sorted. Also surround_replace has to track the proper replacement
character for each position.