Rolo
6fbc85e168
feat(stdx): add `str` mod with `unescape` function
...
This commit introduces a `str` module and an `unescape` function to
`helix-stdx`, which processes escape sequences in strings and converts
them into their corresponding literal characters. The function handles a
variety of escape sequences, including:
- `\n` for newlines
- `\t` for tabs
- `\u{...}` for Unicode characters
The function does not unescape sequences like `\\` to `\`, leaving them
as they are. This opinionated behavior ensures that only certain escape
sequences are processed, and is built around user input, not general
input.
Given that its based around user input, a conservative approach was
taken for handling bad input, where if the string cannot be processed as
expected, it returns the original input.
Examples:
- Converting escaped newlines: `unescape("hello\\nworld")` results in
`"hello\nworld"`.
- Converting escaped tabs: `unescape("hello\\tworld")` results in
`"hello\tworld"`.
- Converting Unicode escape sequences:
`unescape("hello\\u{1f929}world")` results in `"hello🤩 world"`.
- Handling invalid Unicode escape sequence:
`unescape("hello\\u{999999999}world")` results in the original
`"hello\\u{999999999}world"`.
The implementation also includes tests, but no gaurantees for edgecases.
5 months ago
dependabot[bot]
b05ed9bf85
build(deps): bump the rust-dependencies group with 4 updates ( #11032 )
...
Bumps the rust-dependencies group with 4 updates: [bitflags](https://github.com/bitflags/bitflags ), [url](https://github.com/servo/rust-url ), [cc](https://github.com/rust-lang/cc-rs ) and [libloading](https://github.com/nagisa/rust_libloading ).
Updates `bitflags` from 2.5.0 to 2.6.0
- [Release notes](https://github.com/bitflags/bitflags/releases )
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md )
- [Commits](https://github.com/bitflags/bitflags/compare/2.5.0...2.6.0 )
Updates `url` from 2.5.1 to 2.5.2
- [Release notes](https://github.com/servo/rust-url/releases )
- [Commits](https://github.com/servo/rust-url/compare/v2.5.1...v2.5.2 )
Updates `cc` from 1.0.99 to 1.0.100
- [Release notes](https://github.com/rust-lang/cc-rs/releases )
- [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/cc-rs/compare/1.0.99...cc-v1.0.100 )
Updates `libloading` from 0.8.3 to 0.8.4
- [Commits](https://github.com/nagisa/rust_libloading/compare/0.8.3...0.8.4 )
---
updated-dependencies:
- dependency-name: bitflags
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: rust-dependencies
- dependency-name: url
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: cc
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: libloading
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
5 months ago
Ashley Vaughn
a982e5ce26
add ruler at 101 and text-width at 100 to lean in languages.toml ( #10969 )
5 months ago
Alejandro Gastón Alvarez
b894cf087b
Add "jsonl" as filetype for JSON lang ( #11004 )
5 months ago
tingerrr
3706c0dc85
Add block comment tokens for typst ( #10955 )
5 months ago
J. Dekker
3b5f2e66fc
base16_default: add styles to newer unthemed features ( #10858 )
...
* base16_default: add `ui.statusline` for `color-modes`
Signed-off-by: J. Dekker <jdek@itanimul.li>
* base16_default: add `ui.virtual` default
Previously virtual text such as LSP inlay was impossible to distinguish
from 'real' text by default.
Signed-off-by: J. Dekker <jdek@itanimul.li>
---------
Signed-off-by: J. Dekker <jdek@itanimul.li>
5 months ago
Michael Davis
44e113cb76
tree-sitter: Update parent links on reused injection layers ( #10978 )
...
When parsing injections, we skip adding a new layer if there is an
existing layer covering the same range. When doing so we did not update
the parent layer ID, so some layers could have `parent` layer IDs that
pointed to a layer that no longer existed in the `layers` HopSlotMap
which could cause a panic when using `A-o`.
To fix this we update the `parent` pointer for both newly created
injection layers and reused ones.
5 months ago
Kirawi
b55cb3aa11
Revert "Replace unicode-general-category with icu-properties ( #10989 )" ( #11006 )
...
This reverts commit 9b7dffbd61
.
5 months ago
Kirawi
9b7dffbd61
Replace unicode-general-category with icu-properties ( #10989 )
5 months ago
blt-r
0edf60964d
Update tree-sitter-rust ( #10973 )
...
Update to latest commit on master to include fix for a bug that doesn't
allow spaces in the shebang line.
5 months ago
TiredTumblrina
94a9c81eb0
Prevent improper files (like /dev/random) from being used as file arguments ( #10733 )
...
* Implement check before adding path to files
* fix problem where directories were removed from args.files
* Revert "Implement check before adding path to files"
This reverts commit c123944d9b
.
* Dissallow opening of irregular non-symlink files
* Fixed issue with creating new file from command line
* Fixed linting error.
* Optimized regularity check as suggested in review
* Created DocumentOpenError Sum Type to switch on in Application
* Forgot cargo fmt
* Update helix-term/src/application.rs
Accept suggestion in review.
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
* Moved thiserror version configuration to the workspace instead of the individual packages.
---------
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
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
Thomas Schafer
668f1239a9
Fix jump_backwards behaviour when jumplist is at capacity ( #10968 )
...
* Fix jump_backwards behaviour when jumplist is at capacity
* Decrement self.current while popping from front
* Fix issue with conflicting updates to self.current
* Realised that truncate is intentional
* Use saturating_sub when decrementing current
* Fix naming of previous jump, and remove unneeded comment change
* Remove unnecessary changes in push
* Return num elements removed from front, and use in backward method
* Hide num_removed from public interface and tidy up jump location check
5 months ago
adiabatic
69acf66cd8
Add curly single and double quotes to BRACKETS ( #10971 )
5 months ago
Meris Bahtijaragic
afe9049a0e
improve jump colors for github_dark themes ( #10946 )
5 months ago
Shaun_Sheep
bc73dd19d3
Make prompt use cursor set for Insert mode ( #10945 )
...
* Resolve issue #10874
* cargo fmt
5 months ago
slawomirlech
dbacaaddca
DAP: Deserialize number IDs ( #10943 )
...
* Fix deserialization of id
* Removing external dependencies
This reverts commit 27962afc16
.
* Fix incorrect import
* Adding tests
* Moved tests
---------
Co-authored-by: Sławomir Lech <slawomir.lech@bluesoft.com>
5 months ago
uncenter
43cc30d225
Sync latest Catppuccin themes changes ( #10954 )
5 months ago
Michael Davis
8eda96de6d
Downgrade unicode-width to 0.1.12 ( #10963 )
...
unicode-width 0.1.13 contains some fixes that change the widths of line
endings, which breaks some assumptions in helix-tui, causing some
rendering artifacts. We can downgrade to remove the rendering errors
for now.
5 months ago
RoloEdits
9c479e6d2d
fix(editor): prevent overflow in count modifier ( #10930 )
6 months ago
Sebastian Poeplau
62655e97f1
Optional history for rename_symbol ( #10932 )
...
Fix #10560 by accepting an optional history register for the
rename_symbol command.
6 months ago
Lucas @ StarkWare
9123d3fbb8
feat(cairo): update tree-sitter grammar and queries ( #10919 )
...
* feat(cairo): update tree-sitter grammar and queries
* fix suggestions
6 months ago
dependabot[bot]
8a549b767b
build(deps): bump the rust-dependencies group across 1 directory with 5 updates ( #10926 )
...
* build(deps): bump the rust-dependencies group across 1 directory with 5 updates
Bumps the rust-dependencies group with 5 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [unicode-width](https://github.com/unicode-rs/unicode-width ) | `0.1.12` | `0.1.13` |
| [regex](https://github.com/rust-lang/regex ) | `1.10.4` | `1.10.5` |
| [url](https://github.com/servo/rust-url ) | `2.5.0` | `2.5.1` |
| [open](https://github.com/Byron/open-rs ) | `5.1.3` | `5.1.4` |
| [cc](https://github.com/rust-lang/cc-rs ) | `1.0.98` | `1.0.99` |
Updates `unicode-width` from 0.1.12 to 0.1.13
- [Commits](https://github.com/unicode-rs/unicode-width/compare/v0.1.12...v0.1.13 )
Updates `regex` from 1.10.4 to 1.10.5
- [Release notes](https://github.com/rust-lang/regex/releases )
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/regex/compare/1.10.4...1.10.5 )
Updates `url` from 2.5.0 to 2.5.1
- [Release notes](https://github.com/servo/rust-url/releases )
- [Commits](https://github.com/servo/rust-url/compare/v2.5.0...v2.5.1 )
Updates `open` from 5.1.3 to 5.1.4
- [Release notes](https://github.com/Byron/open-rs/releases )
- [Changelog](https://github.com/Byron/open-rs/blob/main/changelog.md )
- [Commits](https://github.com/Byron/open-rs/compare/v5.1.3...v5.1.4 )
Updates `cc` from 1.0.98 to 1.0.99
- [Release notes](https://github.com/rust-lang/cc-rs/releases )
- [Commits](https://github.com/rust-lang/cc-rs/compare/1.0.98...1.0.99 )
---
updated-dependencies:
- dependency-name: unicode-width
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: regex
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: url
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: open
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: cc
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
* helix-tui: Use zero-width-space for zero-width grapheme test
The update of unicode-width 0.1.13 in the parent commit changed the
width of the U+1 codepoint to 1 from 0, causing the test to fail. We
can switch to a well known zero-width codepoint of U+200B to fix the
behavior.
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
6 months ago
emilylime
a64dbf825f
Improve readability of virtual text with 'noctis' theme ( #10910 )
6 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
Asger Juul Brunshøj
a1cda3c19e
in flake mkShell default RUSTFLAGS to an empty string if unset ( #10880 )
6 months ago
Chris Pyles
03813bbc2e
Remove special handling of line ending characters in selection replacement ( #10786 )
...
* Remove special-casing of line ending characters in selection replacement
* Refactor line ending handling and integration test to address code review comments
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
tingerrr
80e0e98e45
Add `py`, `hs`, `rs` and `typ` injection regexes ( #10785 )
...
* Add `py` as valid python injection regex
* Add `hs` and `rs` for `haskell` and `rust`
* Add `typ` injection regex for `typst`
6 months ago
Ricardo Fernández Serrata
3a03109a99
"it's" -> "its", in `crossterm.rs` ( #10860 )
6 months ago
Ryan Roden-Corrent
886d307b9e
Fix logic to update version when HEAD changes. ( #10896 )
6 months ago
Michael Davis
6f1437e9f3
LSP: Resolve completion items when any info is missing ( #10873 )
6 months ago
Marty
c39cde8fc2
Flush pending writes before suspend ( #10797 )
...
* flush saves before suspending
* review suggestion
Co-authored-by: Kirawi <67773714+kirawi@users.noreply.github.com>
* review changes
---------
Co-authored-by: PotatoesFall <martyk@tuta.io>
Co-authored-by: Kirawi <67773714+kirawi@users.noreply.github.com>
6 months ago
dependabot[bot]
31bcde360c
build(deps): bump toml in the rust-dependencies group ( #10879 )
...
Bumps the rust-dependencies group with 1 update: [toml](https://github.com/toml-rs/toml ).
Updates `toml` from 0.8.13 to 0.8.14
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.8.13...toml-v0.8.14 )
---
updated-dependencies:
- dependency-name: toml
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6 months ago
Gaëtan Lehmann
a801044152
update tree-sitter-earthfile to 0.5.3 ( #10779 )
6 months ago
dependabot[bot]
6dbab51f4a
build(deps): bump the rust-dependencies group across 1 directory with 10 updates ( #10871 )
...
Bumps the rust-dependencies group with 10 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [serde](https://github.com/serde-rs/serde ) | `1.0.201` | `1.0.203` |
| [toml](https://github.com/toml-rs/toml ) | `0.8.12` | `0.8.13` |
| [parking_lot](https://github.com/Amanieu/parking_lot ) | `0.12.2` | `0.12.3` |
| [anyhow](https://github.com/dtolnay/anyhow ) | `1.0.83` | `1.0.86` |
| [tokio](https://github.com/tokio-rs/tokio ) | `1.37.0` | `1.38.0` |
| [libc](https://github.com/rust-lang/libc ) | `0.2.154` | `0.2.155` |
| [pulldown-cmark](https://github.com/raphlinus/pulldown-cmark ) | `0.10.3` | `0.11.0` |
| [open](https://github.com/Byron/open-rs ) | `5.1.2` | `5.1.3` |
| [thiserror](https://github.com/dtolnay/thiserror ) | `1.0.60` | `1.0.61` |
| [cc](https://github.com/rust-lang/cc-rs ) | `1.0.97` | `1.0.98` |
Updates `serde` from 1.0.201 to 1.0.203
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.201...v1.0.203 )
Updates `toml` from 0.8.12 to 0.8.13
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.8.12...toml-v0.8.13 )
Updates `parking_lot` from 0.12.2 to 0.12.3
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Amanieu/parking_lot/compare/0.12.2...0.12.3 )
Updates `anyhow` from 1.0.83 to 1.0.86
- [Release notes](https://github.com/dtolnay/anyhow/releases )
- [Commits](https://github.com/dtolnay/anyhow/compare/1.0.83...1.0.86 )
Updates `tokio` from 1.37.0 to 1.38.0
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.37.0...tokio-1.38.0 )
Updates `libc` from 0.2.154 to 0.2.155
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.154...0.2.155 )
Updates `pulldown-cmark` from 0.10.3 to 0.11.0
- [Release notes](https://github.com/raphlinus/pulldown-cmark/releases )
- [Commits](https://github.com/raphlinus/pulldown-cmark/compare/v0.10.3...v0.11.0 )
Updates `open` from 5.1.2 to 5.1.3
- [Release notes](https://github.com/Byron/open-rs/releases )
- [Changelog](https://github.com/Byron/open-rs/blob/main/changelog.md )
- [Commits](https://github.com/Byron/open-rs/compare/v5.1.2...v5.1.3 )
Updates `thiserror` from 1.0.60 to 1.0.61
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.60...1.0.61 )
Updates `cc` from 1.0.97 to 1.0.98
- [Release notes](https://github.com/rust-lang/cc-rs/releases )
- [Commits](https://github.com/rust-lang/cc-rs/compare/1.0.97...1.0.98 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: toml
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: parking_lot
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: anyhow
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: rust-dependencies
- dependency-name: libc
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: pulldown-cmark
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: rust-dependencies
- dependency-name: open
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
- dependency-name: cc
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: rust-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6 months ago
Poliorcetics
972265640d
fix: correctly reset inlay hints when stopping or restarting LSPs for a document ( #10741 )
6 months ago
Christopher Bayliss
179673568d
avoid cnorm on certain terminals ( #10769 )
...
using a terminfo's cnorm doesn't reset the cursor for many terminals,
see issue: #10089
6 months ago
Mark Stosberg
730e684d1d
Correct typo in "current buffer's directory" ( #10814 )
6 months ago
Yorick Peterse
f1c9580e4b
tree-sitter: update Inko grammar ( #10805 )
6 months ago
dependabot[bot]
4dbb4eeba1
--- ( #10804 )
...
updated-dependencies:
- dependency-name: gix
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6 months ago
dependabot[bot]
41dec92b0f
--- ( #10798 )
...
updated-dependencies:
- dependency-name: cachix/install-nix-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6 months ago
dependabot[bot]
a789f72a88
--- ( #10799 )
...
updated-dependencies:
- dependency-name: cachix/cachix-action
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
6 months ago
Kirawi
5b9f5f9fdb
Handle relative symlinks on write ( #10790 )
...
try again
try
wip
6 months ago
Blaž Hrastnik
dfcd814389
tui: Constify functions, shrink Margin representation
6 months ago
Blaž Hrastnik
e94735bbd3
tui: Port https://github.com/ratatui-org/ratatui/pull/1036
6 months ago
Pascal Kuthe
8444f52e9a
correctly handle opening helix inside symlinked directory ( #10728 )
...
* correctly handle opening helix inside symlinked directory
* Update helix-stdx/src/env.rs
---------
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
6 months ago
Michael Davis
ff6aca12b7
Reset all changes overlapped by selections in ':reset-diff-change' ( #10178 )
...
This is useful for resetting multiple changes at once. For example you
might use 'maf' or even '%' to select a larger region and reset all
changes within.
The original behavior of resetting the change on the current line is
retained when the primary selection is 1-width since we look for chunks
in the line range of each selection.
6 months ago
Krishan
2301430e37
fix match bracket matching ( #10777 )
6 months ago