aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* Add port of VIM's Zenburn, a low-contrast color scheme for Vim (#4613)Anton Romanov2022-11-11
|
* update scala roots (#4701)Chris Kipp2022-11-11
| | | | | | | This adds in a couple more roots that are common in Scala. - `build.sc` which is used in Mill - `build.gradle` for Scala Gradle projects - `.scala-build` for scala-cli projects
* Update typescript grammar and queries (#4703)Gabriel Dinner-David2022-11-11
| | | | | | | | | * fix(grammars): update treesitter grammar and queries * add override keyword * Update runtime/queries/typescript/highlights.scm Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* improve performance of tree sitter query captures (for text object motions ↵Pascal Kuthe2022-11-11
| | | | | | | | | | | | | | | | in particular) (#4707) * add tree sitter match limit to avoid slowdowns for larger files Affects all tree sitter queries and should speedup both syntax highlighting and text object queries. This has been shown to fix significant slowdowns with textobjects for rust files as small as 3k loc. * Apply suggestions from code review Co-authored-by: Blaž Hrastnik <blaz@mxxn.io> Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* Enable elixir-ls for heex language (#4679)Philip Giuliani2022-11-10
|
* theme dark_plus color-modes insert and select (#4678)janos-r2022-11-10
|
* feat: add sc to filetypes for Scala (#4697)Chris Kipp2022-11-10
| | | | | | | | | Files ending in `.sc` are known as "Scala Scripts". The scalac compiler knows how to handle these, popular tools like [Ammonite](https://github.com/com-lihaoyi/Ammonite) and [scala-cli](https://github.com/Virtuslab/scala-cli) use them, and even some Scala build tools like [mill](https://github.com/com-lihaoyi/mill) use them as their build files (`build.sc`). This change just makes sure that they are treated as Scala files so Metals kicks in.
* Update ayu themes (#4662)André Sá2022-11-10
|
* fix test compilationBlaž Hrastnik2022-11-09
|
* Move terminal out of compositorBlaž Hrastnik2022-11-09
|
* This term specific behavior really doesn't belong to compositorBlaž Hrastnik2022-11-09
|
* Drop terminal interaction in compositor.size()Blaž Hrastnik2022-11-09
|
* Re-enable format_selections for a single selection rangeBlaž Hrastnik2022-11-09
|
* Add LSP workspace command picker (#3140)Matthias Deiml2022-11-09
| | | | | | | * Add workspace command picker * Make command typable * Add optional argument to lsp-workspace-command
* Fix panic from indenting on tree with errorsMichael Davis2022-11-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `deepest_preceding` is known to be a descendant of `node`. Repeated calls of `Node::parent` _should_ eventually turn `deepest_preceding` into `node`, but when the node is errored (the tree contains a syntax error), `Node::parent` returns None. In the typescript case: if(true) &&true // ^ press enter here The tree is: (program [0, 0] - [1, 0] (if_statement [0, 0] - [0, 15] condition: (parenthesized_expression [0, 2] - [0, 8] (true [0, 3] - [0, 7])) consequence: (expression_statement [0, 8] - [0, 15] (binary_expression [0, 8] - [0, 15] left: (identifier [0, 8] - [0, 8]) right: (true [0, 11] - [0, 15]))))) `node` is the `program` node and `deepest_preceding` is the `binary_expression`. The tree is errored on the `binary_expression` node with `(MISSING identifier [0, 8] - [0, 8])`. In the C++ case: ; << // press enter after the ';' The tree is: (translation_unit [0, 0] - [1, 0] (expression_statement [0, 0] - [0, 1]) (ERROR [0, 1] - [0, 4] (identifier [0, 1] - [0, 1]))) `node` is the `translation_unit` and `deepest_preceding` is the `ERROR` node. In both cases, `Node::parent` on the errored node returns None.
* style: Only call extend_nodes when deepest_preceding is SomeMichael Davis2022-11-09
|
* Update `dark_plus` diff colors (#4661)Kirawi2022-11-08
|
* [rust highlights] fix scoped attribute macro matching (#4659)Anton Romanov2022-11-08
| | | | | | | Without this scoped attribute macros are not matched as macros. Eg ``` #[path::macro] ```
* `error!` on unknown `CompletionItemKind` (#4658)Marko Klobučar Ledinšćak2022-11-08
|
* fix typo (#4656)Zhizhen He2022-11-08
|
* fix: small error (#4651)0xflotus2022-11-08
|
* bash completion: use builtin filenames option (#4648)Max Hille2022-11-08
| | | | Use a builtin bash option which detects filenames in completion outputs and reflects this in sensible <tab> completion behaviour.
* fix testsBlaž Hrastnik2022-11-08
|
* fix testsBlaž Hrastnik2022-11-08
|
* Dynamically resize line number gutter width (#3469)Doug Kelkhoff2022-11-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | * dynamically resize line number gutter width * removing digits lower-bound, permitting spacer * removing max line num char limit; adding notes; qualified successors; notes * updating tests to use new line number width when testing views * linenr width based on document line count * using min width of 2 so line numbers relative is useful * lint rolling; removing unnecessary type parameter lifetime * merge change resolution * reformat code * rename row_styler to style; add int_log resource * adding spacer to gutters default; updating book config entry * adding view.inner_height(), swap for loop for iterator * reverting change of current! to view! now that doc is not needed
* core: Move state into the history moduleBlaž Hrastnik2022-11-08
|
* lsp: Support insertReplaceBlaž Hrastnik2022-11-08
| | | | Fixes #4473
* Improve Ruby TextObjects (#4601)Danillo Melo2022-11-08
|
* build(deps): bump regex from 1.6.0 to 1.7.0 (#4640)dependabot[bot]2022-11-08
| | | | | | | | | | | | | | | | Bumps [regex](https://github.com/rust-lang/regex) from 1.6.0 to 1.7.0. - [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.6.0...1.7.0) --- updated-dependencies: - dependency-name: regex 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 libloading from 0.7.3 to 0.7.4 (#4639)dependabot[bot]2022-11-08
| | | | | | | | | | | | | | | Bumps [libloading](https://github.com/nagisa/rust_libloading) from 0.7.3 to 0.7.4. - [Release notes](https://github.com/nagisa/rust_libloading/releases) - [Commits](https://github.com/nagisa/rust_libloading/compare/0.7.3...0.7.4) --- updated-dependencies: - dependency-name: libloading 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>
* tutor: fix wording in recap for chapter 5 (#4629)Tobias Kohlbau2022-11-07
| | | | | | In recap for chapter 5.1 specify that the cursor is duplicted to the next suitable line instead of the next line. Signed-off-by: Tobias Kohlbau <tobias@kohlbau.de>
* Fixed disorienting selection palette on Gruvbox theme (#4626)Ryan Palmer2022-11-07
| | | Co-authored-by: ryan.palmer <ryan.palmer@servicenow.com>
* Run clippy on workspace in CI (#4614)Jonathan LEI2022-11-07
|
* Fix command-mode completion behavior when input is escapedMichael Davis2022-11-07
| | | | | | | If `a\ b.txt` were a local file, `:o a\ <tab>` would fill the prompt with `:o aa\ b.txt` because the replacement range was calculated using the shellwords-parsed part. Escaping the part before calculating its length fixes this edge-case.
* Escape filenames in command completionMichael Davis2022-11-07
| | | | | | This changes the completion items to be rendered with shellword escaping, so a file `a b.txt` is rendered as `a\ b.txt` which matches how it should be inputted.
* Fix whitespace handling in command-mode completionMichael Davis2022-11-07
| | | | | | | | | | 8584b38cfbe6ffe3e5d539ad953c413e44e90bfa switched to shellwords for completion in command-mode. This changes the conditions for choosing whether to complete the command or use the command's completer. This change processes the input as shellwords up-front and uses shellword logic about whitespace to determine whether the command or argument should be completed.
* Fix range offsets in multi-selection paste (#4608)Michael Davis2022-11-06
| | | | | | | | | | | | | * Fix range offsets in multi-selection paste d6323b7cbc21a9d3ba29738c76581dad93f9f415 introduced a regression with multi-selection paste where pasting would not adjust the ranges correctly. To fix it, we need to track the total number of characters inserted in each changed selection and use that offset to slide each new range forwards. * Inherit selection directions on paste * Add an integration-test for multi-selection pasting
* Update Julia grammar, queries (#4588)ChrHorn2022-11-05
|
* Fix panic on paste from blackhole register (#4497)Michael Davis2022-11-04
| | | | | The sequence "_y"_p panics because the blackhole register contains an empty values vec. This causes a panic when pasting since it unwraps a `slice::last`.
* Select text inserted by shell or paste (#4458)Michael Davis2022-11-04
| | | | | | | | | This follows changes in Kakoune to the same effects: * p/<space>p: https://github.com/mawww/kakoune/commit/266d1c37d0d970a7eff747f5e6a5773a3cea39d8 * !/<A-!>: https://github.com/mawww/kakoune/commit/85b78dda2e29d70b620836b04224b104426bdbae Selecting the new data inserted by shell or pasting is often more useful than retaining a selection of the pre-paste/insert content.
* nix: Bump flake dependenciesBlaž Hrastnik2022-11-04
|
* Resolve a bunch of upcoming clippy lintsBlaž Hrastnik2022-11-04
|
* bump up LhKipp/tree-sitter-nu's version to latest (#4583)Antoine Stevan2022-11-04
|
* Use language=bash when shebang line uses zsh (#4582)throwaway-helix-zsh2022-11-04
| | | | | This PR makes the editor use language=bash when the shebang line uses zsh. This is in the same line as using language=bash for zsh related file (~/.zshrc, ~/.zshenv etc.) as we already do.
* Increase default language server timeout for Julia (#4575)ChrHorn2022-11-04
|
* Fix panic from two windows editing the same document (#4570)Michael Davis2022-11-03
| | | | | | | | | | | | | | | | | | | | * Clamp highlighting range to be within document This fixes a panic possible when two vsplits of the same document exist and enough lines are deleted from the document so that one of the windows focuses past the end of the document. * Ensure cursor is in view on window change If two windows are editing the same document, one may delete enough of the document so that the other window is pointing at a blank page (past the document end). In this change we ensure that the cursor is within view whenever we switch to a new window (for example with `<C-w>w`). * Update helix-term/src/ui/editor.rs Co-authored-by: Blaž Hrastnik <blaz@mxxn.io> Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* Use OSC 52 as a fallback for setting the system clipboard (#3220)Charlie Groves2022-11-02
| | | | | This adds a simple base64 implementation to keep us from adding a crate for one function. It's mostly based on https://github.com/marshallpierce/rust-base64/blob/a675443d327e175f735a37f574de803d6a332591/src/engine/naive.rs#L42
* Add indentation for Python pattern matchingYuriy2022-11-02
| | | | Add indentation for `match` and `case`.
* Add syntax highlighting for Python pattern matchingYuriy2022-11-02
| | | | | Add syntax highlighting for `match` and `case` keywords in Python (https://peps.python.org/pep-0636/).
* Exit select mode on replace commands (#4554)Jonathan LEI2022-11-02
|