Commit Graph

6567 Commits (de413982819df8756e899dc324785fee5a628e63)

Author SHA1 Message Date
dependabot[bot] 112b2878ae
build(deps): bump the rust-dependencies group with 4 updates (#11476)
Bumps the rust-dependencies group with 4 updates: [serde](https://github.com/serde-rs/serde), [serde_json](https://github.com/serde-rs/json), [tempfile](https://github.com/Stebalien/tempfile) and [cc](https://github.com/rust-lang/cc-rs).


Updates `serde` from 1.0.204 to 1.0.207
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.204...v1.0.207)

Updates `serde_json` from 1.0.122 to 1.0.124
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.122...v1.0.124)

Updates `tempfile` from 3.11.0 to 3.12.0
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/commits)

Updates `cc` from 1.1.7 to 1.1.10
- [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/cc-v1.1.7...cc-v1.1.10)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-dependencies
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-dependencies
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
  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>
2024-08-13 07:59:42 +02:00
RoloEdits e46cedfc26
refactor(commands): `trim_end` of `sh` output (#11161) 2024-08-11 10:24:51 -05:00
Samy AB 91e642ce50
Add gherkin syntax highlighting (#11083)
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
2024-08-10 08:25:31 +09:00
Pascal Kuthe e604d9f8e0
keep (cursor) position when exactly replacing text (#5930)
Whenever a document is changed helix maps various positions like the
cursor or diagnostics through the `ChangeSet` applied to the document.

Currently, this mapping handles replacements as follows:

* Move position to the left for `Assoc::Before` (start of selection)
* Move position to the right for `Assoc::After` (end of selection)

However, when text is exactly replaced this can produce weird results
where the cursor is moved when it shouldn't. For example if `foo` is
selected and a separate cursor is placed on each character (`s.<ret>`)
and the text is replaced (for example `rx`) then the cursors are moved
to the side instead of remaining in place.

This change adds a special case to the mapping code of replacements:
If the deleted and inserted text have the same (char) length then
the position is returned as if the replacement doesn't exist.

only keep selections invariant under replacement

Keeping selections unchanged if they are inside an exact replacement
is intuitive. However, for diagnostics this is not desirable as
helix would otherwise fail to remove diagnostics if replacing parts
of the document.
2024-08-10 00:40:34 +09:00
Michael Davis 7e85fd5b77 Add documentation for static/typable/macro commands 2024-08-10 00:39:47 +09:00
Michael Davis b7820ee668 Disallow macro keybindings within command sequences
This is a temporary limitation because of the way that command sequences
are executed. Each command is currently executed back-to-back
synchronously, but macros are by design queued up for the compositor.
So macros mixed into a command sequence will behave undesirably: they
will be executed after the rest of the static and/or typable commands
in the sequence.

This is pending a larger refactor of how we handle commands.
<https://redirect.github.com/helix-editor/helix/issues/5555> has
further details and <https://redirect.github.com/helix-editor/helix/issues/4508>
discusses a similar problem faced by the command palette.
2024-08-10 00:39:47 +09:00
Michael Davis 1098a348aa Parse and execute macro mappable commands 2024-08-10 00:39:47 +09:00
Timothy Hutz bb43a90b86
removed duplicate in lang-support MD file with vector dedup. (#10563) 2024-08-10 00:36:47 +09:00
Chromo-residuum-opec 9daf5c6f8b
feat: add iceberg light/dark themes (#10674)
* feat: add iceberg light/dark themes

* set ui.virtual and ui.virtual.ruler

* quote ui.menu.selected key
2024-08-10 00:35:41 +09:00
Kiara Grouwstra 3b306fa022
Update languages.toml - add nixd, closes #10734 (#10767) 2024-08-10 00:35:29 +09:00
chtenb e884daea41
Document completion menu bindings (#10994)
* Update keymap.md

* Update keymap.md

* Update keymap.md
2024-08-10 00:34:29 +09:00
Eduard Bardají Puig 779ce41a1f
Provide more details on runtime directory (#11026)
* Provide more details on runtime directory

* Improve pre-built binaries description
2024-08-10 00:34:18 +09:00
Sampo Siltanen 2e90868a37
Update fsharp tree sitter repo reference (#11061)
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
2024-08-10 00:34:08 +09:00
kanielrkirby f0282689da
Use `try_lock` in `diff_handle` for Diff gutter (#11092)
* Use `try_lock` in `diff_handle` for Diff gutter
- Add the method `try_load() -> Option<Diff>` to `DiffHandle`, using `try_lock` to avoid deadlocks.
- Use said method in `gutter.rs diff()`, which will use a blank `GutterFn` instead when met with a locked `Diff`.

* Revert changes

* Replace `Mutex` with `RwLock` in `Diff`

---------

Co-authored-by: Kaniel Kirby <pirate7007@runbox.com>
2024-08-10 00:32:46 +09:00
麦芽糖 aaaafb8f5f
feat: add thrift hightlight (#11367) 2024-08-10 00:26:58 +09:00
Poliorcetics 68f495b023
just: Use updated grammar with recent language changes and correct highlighting (#11380) 2024-08-10 00:26:48 +09:00
lefp 8851031449
add verilog comment textobjects (#11388) 2024-08-10 00:26:34 +09:00
Val Packett 2f60c21727
Add jq language support (#11393)
jq is a language for manipulating JSON data: https://jqlang.github.io/jq/
2024-08-10 00:26:28 +09:00
David Else 931ddbb077
Update HTML highlights (#11400)
* Update HTML highlights

* Update after review comments
2024-08-10 00:26:19 +09:00
RoloEdits f52251960a
fix(picker): no longer `trim` search pattern (#11406) 2024-08-10 00:26:09 +09:00
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>
2024-08-10 00:25:06 +09:00
bilabila c9c4452824
Support i3wm and sway config (#11424)
* Support i3wm and sway config

better syntax highlight and fix comment string

* typo
2024-08-10 00:24:19 +09:00
David Else f8f056d82f
dark_plus: add picker highlights, update underlined modifier syntax, and tweak a few settings (#11415) 2024-08-10 00:23:58 +09:00
Raph ca47b3c140
Added `mesonlsp` as the default LSP for Meson (#11416)
* defaulted meson to JCWasmx86/mesonlsp

* generated docs for mesonlsp
2024-08-10 00:23:42 +09:00
yehor 9678c3fe60
Add .svn as workspace root marker (#11429)
* add .svn as workspace-root marker

* cargo fmt
2024-08-10 00:23:27 +09:00
Jefta 518425e055
Add commands for movement by subwords (#8147)
* Allow moving by subword
* Add tests for subword movement
2024-08-08 13:57:59 -05:00
Blaž Hrastnik 0929704699 stdx: ...and this cast is now unnecessary 2024-08-07 07:29:35 +09:00
Blaž Hrastnik 7d017d8fd6 stdx: PSID now sits under Win32::Foundation 2024-08-07 07:21:50 +09:00
Blaž Hrastnik 8f6793a181 stdx: Include all required windows-sys APIs 2024-08-07 07:18:43 +09:00
Blaž Hrastnik 6ba46e5cbf Fix crossterm compilation on macOS 2024-08-07 06:46:59 +09:00
Blaž Hrastnik 70918570a9 tui: Port improvement from ratatui on crossterm 0.28 (https://github.com/ratatui-org/ratatui/pull/1072) 2024-08-07 04:30:38 +09:00
dependabot[bot] 92a87dbc31 build(deps): bump the rust-dependencies group with 9 updates
Bumps the rust-dependencies group with 9 updates:

| Package | From | To |
| --- | --- | --- |
| [regex](https://github.com/rust-lang/regex) | `1.10.5` | `1.10.6` |
| [dunce](https://gitlab.com/kornelski/dunce) | `1.0.4` | `1.0.5` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.121` | `1.0.122` |
| [toml](https://github.com/toml-rs/toml) | `0.8.16` | `0.8.19` |
| [crossterm](https://github.com/crossterm-rs/crossterm) | `0.27.0` | `0.28.1` |
| [tempfile](https://github.com/Stebalien/tempfile) | `3.10.1` | `3.11.0` |
| [serde_repr](https://github.com/dtolnay/serde-repr) | `0.1.12` | `0.1.19` |
| [which](https://github.com/harryfei/which-rs) | `6.0.1` | `6.0.2` |
| [windows-sys](https://github.com/microsoft/windows-rs) | `0.52.0` | `0.59.0` |

Updates `regex` from 1.10.5 to 1.10.6
- [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.5...1.10.6)

Updates `dunce` from 1.0.4 to 1.0.5
- [Commits](https://gitlab.com/kornelski/dunce/compare/v1.0.4...v1.0.5)

Updates `serde_json` from 1.0.121 to 1.0.122
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.121...v1.0.122)

Updates `toml` from 0.8.16 to 0.8.19
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.8.16...toml-v0.8.19)

Updates `crossterm` from 0.27.0 to 0.28.1
- [Release notes](https://github.com/crossterm-rs/crossterm/releases)
- [Changelog](https://github.com/crossterm-rs/crossterm/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crossterm-rs/crossterm/commits)

Updates `tempfile` from 3.10.1 to 3.11.0
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.10.1...v3.11.0)

Updates `serde_repr` from 0.1.12 to 0.1.19
- [Release notes](https://github.com/dtolnay/serde-repr/releases)
- [Commits](https://github.com/dtolnay/serde-repr/compare/0.1.12...0.1.19)

Updates `which` from 6.0.1 to 6.0.2
- [Release notes](https://github.com/harryfei/which-rs/releases)
- [Changelog](https://github.com/harryfei/which-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/harryfei/which-rs/compare/6.0.1...6.0.2)

Updates `windows-sys` from 0.52.0 to 0.59.0
- [Release notes](https://github.com/microsoft/windows-rs/releases)
- [Commits](https://github.com/microsoft/windows-rs/compare/0.52.0...0.59.0)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-dependencies
- dependency-name: dunce
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-dependencies
- dependency-name: serde_json
  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: crossterm
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
- dependency-name: serde_repr
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-dependencies
- dependency-name: which
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rust-dependencies
- dependency-name: windows-sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: rust-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-07 04:27:05 +09:00
dependabot[bot] 6d123aa549 build(deps): bump bitflags from 1.3.2 to 2.6.0
Bumps [bitflags](https://github.com/bitflags/bitflags) from 1.3.2 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/1.3.2...2.6.0)

---
updated-dependencies:
- dependency-name: bitflags
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-07 04:20:20 +09:00
Philip Giuliani b8c968fe47
Update Gleam tree sitter to support label shorthand syntax (#11427) 2024-08-07 04:16:44 +09:00
Stephen Broadley 786148a1e1 corrected 'split_centre_vertical' argument 2024-08-04 22:02:45 +01:00
Stephen Broadley 2fed0f87e6 corrected inner_area calculation 2024-08-04 22:02:18 +01:00
Stephen Broadley 4a2ad21247 ensure we don't form invalid Rects with 'split_***' API 2024-08-04 21:35:45 +01:00
Stephen Broadley c63246651b Merge remote-tracking branch 'refs/remotes/origin/nullspace' into nullspace 2024-08-04 20:51:00 +01:00
Stephen Broadley fb6d0d8f7b simplified code for 'nullspace' calculation in EditorView render 2024-08-04 20:49:53 +01:00
Stephen Broadley 6ffd2f8cbe add 'split_***' utility API to Rect 2024-08-04 20:49:53 +01:00
Stephen Broadley 0902fb4dc9 updated style name for 'nullspace' to 'ui.nullspace' 2024-08-04 20:49:53 +01:00
Stephen Broadley 940b1e6357 added 'shift_left' and 'shift_right' to Rect 2024-08-04 20:49:53 +01:00
Stephen Broadley 7c8e6792f7 corrected merge 2024-08-04 20:49:53 +01:00
Stephen Broadley a243e2e1e6 added 'nullspace' option 2024-08-04 20:49:53 +01:00
Stephen Broadley cf531cb854 simplified code for 'nullspace' calculation in EditorView render 2024-08-04 20:47:00 +01:00
Stephen Broadley eb614fc4a4 add 'split_***' utility API to Rect 2024-08-04 20:46:21 +01:00
Stephen Broadley faa03c4e85 updated style name for 'nullspace' to 'ui.nullspace' 2024-08-02 20:38:24 +01:00
Stephen Broadley 4e6cd3fd06 added 'shift_left' and 'shift_right' to Rect 2024-08-02 20:13:49 +01:00
Stephen Broadley 35657560dd corrected merge 2024-08-02 19:15:05 +01:00
Stephen Broadley 60dde3a409 added 'nullspace' option 2024-08-02 19:08:03 +01:00