aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Correctly reload theme on :config-reloadPascal Kuthe2023-03-31
| | | | | | The current implementation didn't reload the theme if no no theme was explicitly configured (so the default theme was used). This commit brings `refresh_theme` in line with the initialization code.
* Performant and correct set_spans_truncatedPascal Kuthe2023-03-31
| | | | | | | | | | the previous implementation used set_string_truncated. This is not only awkward with this kind of "streaming" string (and therefore lead to an inefficient and incorrect initial implementation) but that function also truncates strings of width 1 when there is only a single char available. The implementation here is performant, correct and also handles the single width case correctly.
* Truncate paths in the file picker (#6410)mWalrus2023-03-31
|
* update dependenciesPascal Kuthe2023-03-31
|
* Update tree-sitter-git-commit (#6493)Michael Davis2023-03-31
| | | | | | The last update introduced a bug with comments where a comment would be recognized as a message if there were multiple newlines between the last message or subject and the comment, causing a noticeable change in highlighting. This change fixes that behavior.
* Add indents.scm for Julia (#6490)Clara Hobbs2023-03-31
| | | | | * Add indents.scm for Julia * Update documentation for new indent support
* Add injection for markdown strings (#6489)Clara Hobbs2023-03-31
|
* Canonicalize paths before stripping current dir as prefix (#6290)jazzfool2023-03-30
| | | Co-authored-by: jazzfool <shamoslover69@gmail.com>
* implement proper lsp-workspace supportPascal Kuthe2023-03-29
| | | | | | fix typo Co-authored-by: LeoniePhiline <22329650+LeoniePhiline@users.noreply.github.com>
* add workspace config and manual LSP root managementPascal Kuthe2023-03-29
| | | | | | | | | | fixup documentation Co-authored-by: LeoniePhiline <22329650+LeoniePhiline@users.noreply.github.com> fixup typo Co-authored-by: LeoniePhiline <22329650+LeoniePhiline@users.noreply.github.com>
* feat(debug): highlight current line (#5957)Filip Dutescu2023-03-29
| | | | | | | | | | | | | | | | | | Add new theme highlight keys, for setting the colour of the breakpoint character and the current line at which execution has been paused at. The two new keys are `ui.highlight.frameline` and `ui.debug.breakpoint`. Highlight according to those keys, both the line at which debugging is paused at and the breakpoint indicator. Add an indicator for the current line at which execution is paused at, themed by the `ui.debug.active` theme scope. Update various themes to showcase how the new functionality works. Better icons are dependent on #2869, and as such will be handled in the future, once it lands. Closes: #5952 Signed-off-by: Filip Dutescu <filip.dutescu@gmail.com>
* tui: Handle keyboard enhancement check failure (#6438)Michael Davis2023-03-29
| | | | | | | | | If the terminal doesn't send the primary device attributes response to the query, the `terminal::supports_keyboard_enhancement` function from crossterm may timeout and return an Err. We should interpret this error to mean that the terminal doesn't support the keyboard enhancement protocol rather than an error in claiming the terminal.
* Update catppuccin theme (#6464)Ivan2023-03-28
|
* build(deps): bump thiserror from 1.0.39 to 1.0.40 (#6463)dependabot[bot]2023-03-28
| | | | | | | | | | | | | | | Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.39 to 1.0.40. - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/1.0.39...1.0.40) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump tokio from 1.26.0 to 1.27.0 (#6461)dependabot[bot]2023-03-28
| | | | | | | | | | | | | | | Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.26.0 to 1.27.0. - [Release notes](https://github.com/tokio-rs/tokio/releases) - [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.26.0...tokio-1.27.0) --- updated-dependencies: - dependency-name: tokio dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump anyhow from 1.0.69 to 1.0.70 (#6462)dependabot[bot]2023-03-28
| | | | | | | | | | | | | | | Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.69 to 1.0.70. - [Release notes](https://github.com/dtolnay/anyhow/releases) - [Commits](https://github.com/dtolnay/anyhow/compare/1.0.69...1.0.70) --- updated-dependencies: - dependency-name: anyhow dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump toml from 0.7.2 to 0.7.3 (#6459)dependabot[bot]2023-03-28
| | | | | | | | | | | | | | | Bumps [toml](https://github.com/toml-rs/toml) from 0.7.2 to 0.7.3. - [Release notes](https://github.com/toml-rs/toml/releases) - [Commits](https://github.com/toml-rs/toml/compare/toml-v0.7.2...toml-v0.7.3) --- updated-dependencies: - dependency-name: toml dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump chrono from 0.4.23 to 0.4.24 (#6460)dependabot[bot]2023-03-28
| | | | | | | | | | | | | | | | Bumps [chrono](https://github.com/chronotope/chrono) from 0.4.23 to 0.4.24. - [Release notes](https://github.com/chronotope/chrono/releases) - [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md) - [Commits](https://github.com/chronotope/chrono/compare/v0.4.23...v0.4.24) --- updated-dependencies: - dependency-name: chrono dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump regex from 1.7.1 to 1.7.3 (#6458)dependabot[bot]2023-03-28
| | | | | | | | | | | | | | | | Bumps [regex](https://github.com/rust-lang/regex) from 1.7.1 to 1.7.3. - [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.7.1...1.7.3) --- updated-dependencies: - dependency-name: regex dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Fix clippy lints (#6454)Philipp Mildenberger2023-03-27
|
* Add .arb as a supported extension with json highlighting (#6452)Philip Giuliani2023-03-27
|
* Update tree-sitter-git-commit, add comment textobject (#6439)Michael Davis2023-03-27
| | | | | | | The update includes a fix for comments in commit messages where there was no space separating the '#' and the comment text. The comment textobject can be useful occasionally to jump to the summary part of the commit edit message.
* respect line annotations in char_idx_at_visual_row_offsetPascal Kuthe2023-03-27
| | | | | | | | | | | | | | char_idx_at_visual_row_offset asssumed that a single line/block break always corresponded to a vertical offset of 1. However conceal can hide the line break (in which case the certical offset would be 0) and line annotations (or softwrapped inlay hints at the end of the line) can insert addtional vertical lines. To correctly account for these cases we simply compute the visual offset of the start of the next block from the previous block instead of the visual offset of the block end. This means that the line breaks at the end of the block (however many there may be) are automatically included and we don't need to manually add 1 to the `row_offset` anymore.
* do not ignore mouse scrolling when on top of virtual textPascal Kuthe2023-03-27
|
* make scrolloff calculation consistentPascal Kuthe2023-03-27
| | | | | | While scrolling (with the `scroll`) command scrolloff was calculated slightly differently than in `ensure_cursor_in_view` which could cause the cursor to get stuck while scrolling
* allow scrolling past virtual text linePascal Kuthe2023-03-27
| | | | | | | | | | | | | Virtual text lines (either caused by softwrapped inlay hints that take multiple or line annotations) currently block scrolling downwards. if the visual offset passed to char_idx_at_visual_offset or visual_offset_from_block is within a virtual text line then the char position before the virtual text and a visual offset are returned. We previously ignored that visual offset and as a result the cursor would be stuck at the start of the virtual text. This commit fixes that by simply moving the cursor to the next char (so past the virtual text) if this visual offset is non-zero
* use partition_point instead of binary_search_byPascal Kuthe2023-03-27
| | | | | | | | Using `partition_point` ensures we always find the first entry. With binary search it is "random" (deterministic but implementation specific) which index is retruned if there are multiple equal elements. `partition_point` was added to the standard library to cover extactly the usecase here.
* fix view anchors not at start of a visual linePascal Kuthe2023-03-27
| | | | | | | | | | | | | | | | | | | | | The top of a view is marked by a char idx anchor. That char idx is usually the first character of the visual line it's on. We use a char index instead of a line index because the view may start in the middle of a line with soft wrapping. However, it's possible to temporarily endup in a state where this anchor is not the first character of the first visual line. This is pretty rare because edits usually happen inside/after the view. In most cases we handle this case correctly. However, if the cursor is before the anchor (but still in view) there can be crashes or visual artifacts. This is caused by the fact that visual_offset_from_anchor (and the positioning code in view.rs) incorrectly assumed that the (cursor) position is always after the view anchor if the cursor is in view. But if the anchor is not the first character of the first visual line this is not the case anymore. In that case crashes and visual artifacts are possible. This commit fixes that problem by changing `visual_offset_from_anchor` (and callsites) to properly consider that case.
* remove incorrect assertPascal Kuthe2023-03-27
| | | | | This assert was added during early development of #5420 and makes no sense with the current code. We simply forgot to remove it.
* Initial Nim language support (#6123)JJ2023-03-26
|
* Add language support for rego (OpenPolicyAgent) (#6415)Juan C. Müller2023-03-26
|
* log failures in the git integration (#6441)Pascal Kuthe2023-03-26
|
* Add vhdl language support (#5826)Tom Burdick2023-03-25
| | | | | | | Simple highlight query file with keywords and builtin types matching. Many VHDL types however are defined in std libraries which do not currently get matched on. This is because the grammar doesn't consider them builtin types.
* Add theme keys for (un)checked markup list items (#6434)Erasin Wang2023-03-25
|
* feat(languages): highlight .svg as xml (#6431)Matouš Dzivjak2023-03-25
| | | | | Add "svg" as a file type for xml. Fixes: https://github.com/helix-editor/helix/issues/6337
* Recognize .cts and .mts file type as TypeScript (#6424)Alexis-Lapierre2023-03-24
| | | | | | | | | TypeScript can use three type of file extensions: - .ts for regular TypeScript - .cts for CommonJS modules - .mts for ES modules Official documentation on supported file extensions: https://www.typescriptlang.org/docs/handbook/esm-node.html#new-file-extensions
* Fix spelling of diagnostics (#6418)Juan C. Müller2023-03-24
|
* dracula theme: style wrap indicator like whitespace (#6414)Sebastian Zivota2023-03-23
|
* Add xib and storyboard file types (#6407)Aleksey Kuznetsov2023-03-22
|
* detailed snippet testsPascal Kuthe2023-03-22
|
* accept bracket snippet variables without defaultPascal Kuthe2023-03-22
|
* accept empty snippet regex replace elementsPascal Kuthe2023-03-22
|
* fix single-char variable namesPascal Kuthe2023-03-22
|
* do not fail snippet parsing when control chars are not explicitly escapedPascal Kuthe2023-03-22
|
* build(deps): bump bitflags from 1.3.2 to 2.0.2 (#6387)dependabot[bot]2023-03-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * build(deps): bump bitflags from 1.3.2 to 2.0.2 Bumps [bitflags](https://github.com/bitflags/bitflags) from 1.3.2 to 2.0.2. - [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.0.2) --- updated-dependencies: - dependency-name: bitflags dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * deps: Resolve bitflags 2.0 breaking changes Bitflags 2.0 release made some breaking changes requiring some small changes to the Helix codebase. Almost all of the necessary changes are to manually `#[derive(..)]` trait implementations which are no longer automatically derived for all bitflags. All of these were previously automatically derived: #[derive(PartialEq, Eq, PartialOrd, Ord, Hash, Debug, Clone, Copy] I have derived the minimum traits for each bitflag type. The other change was to the `.bits` field. This is now a `.bits()` method so the usage of this has been updated in the `Borders` type. --------- 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>
* Show diagnostic codes for LSP diagnostics (#6378)Francesc Elies2023-03-21
| | | Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
* Add `switch_statement` to ecma indents (#6369)Thor Adam2023-03-21
|
* Add initial Smithy support (#6370)zetashift2023-03-21
|
* fleet-dark improvements (#6375)Kristoffer Flottorp2023-03-21
| | | Co-authored-by: krfl <kr.fl@outlook.com>
* build(deps): bump serde from 1.0.152 to 1.0.158 (#6386)dependabot[bot]2023-03-21
| | | | | | | | | | | | | | | Bumps [serde](https://github.com/serde-rs/serde) from 1.0.152 to 1.0.158. - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.152...v1.0.158) --- updated-dependencies: - dependency-name: serde dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>