aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Improve C, Rust & Python indent queries & add @align captures.Daniel Ebert2023-08-11
|
* Implement @align (and @anchor) indent query.Daniel Ebert2023-08-11
|
* expand indents guideSkyler Hawthorne2023-08-10
|
* Fix YAML auto indentSkyler Hawthorne2023-08-10
| | | | | | | | | YAML indents queries are tweaked to fix auto indent behavior. A new capture type `indent.always` is introduced to address use cases where combining indent captures on a single line is desired. Fixes #6661
* Jinja language family syntax support (#7233)Ivan Isekeev2023-08-09
| | | | | | | * feat: add jinja language support * feat: add nunjucks language support * feat: add to lang support book jinja and nunjucks languages
* feat: add todo.txt tree-sitter (#7835)Jan91032023-08-09
|
* Add new Yellowed theme to default themes (#7849)Gaël2023-08-09
| | | | | * added new Yellowed theme to default themes * syntax typo and missing color fix
* Update tree-sitter grammar for nu (#7873)Artemiy2023-08-09
| | | | | | | | | | | * Update tree-sitter grammar for nu Change tree-sitter grammar for nushell to 'officially' maintained by nushell project https://github.com/nushell/tree-sitter-nu. Update to the latest version. Replace queries with supported * Restore injection queries for nu Restore injection.scm queries for nushell tree-sitter grammar
* Enhance :toggle to support cycling numbers (#7877)Alex Vinyals2023-08-09
|
* Add Unison support (#7724)zetashift2023-08-08
|
* Detect non-existent files as non-readonly (#7875)Michael Davis2023-08-08
|
* use AND operator when searching (#7839)Tshepang Mbambo2023-08-08
| | | This makes search results less surprising, because it is how major web search engines behave
* build(deps): bump globset from 0.4.12 to 0.4.13 (#7864)dependabot[bot]2023-08-08
| | | | | | | | | | | | | | | | Bumps [globset](https://github.com/BurntSushi/ripgrep) from 0.4.12 to 0.4.13. - [Release notes](https://github.com/BurntSushi/ripgrep/releases) - [Changelog](https://github.com/BurntSushi/ripgrep/blob/master/CHANGELOG.md) - [Commits](https://github.com/BurntSushi/ripgrep/compare/globset-0.4.12...globset-0.4.13) --- updated-dependencies: - dependency-name: globset 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 tempfile from 3.7.0 to 3.7.1 (#7862)dependabot[bot]2023-08-08
| | | | | | | | | | | | | | | Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.7.0 to 3.7.1. - [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md) - [Commits](https://github.com/Stebalien/tempfile/compare/v3.7.0...v3.7.1) --- updated-dependencies: - dependency-name: tempfile 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 lsp-types from 0.94.0 to 0.94.1 (#7861)dependabot[bot]2023-08-08
| | | | | | | | | | | | | | | Bumps [lsp-types](https://github.com/gluon-lang/lsp-types) from 0.94.0 to 0.94.1. - [Changelog](https://github.com/gluon-lang/lsp-types/blob/master/CHANGELOG.md) - [Commits](https://github.com/gluon-lang/lsp-types/compare/v0.94.0...v0.94.1) --- updated-dependencies: - dependency-name: lsp-types 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>
* Align view for background buffer opened with `alt-ret` (#7691)woojiq2023-08-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix(picker): `alt-ret' changes cursor pos of current file, not new one Closes #7673 * fix other pickers * symbol pickers * diagnostick pickers This is done using the already patched `jump_to_location` method. * fix global and jumplist pickers * use `view` as old_id; make `align_view` method of `Action` * test(picker): basic <alt-ret> functionality * fix: picker integrational test * fix nit Co-authored-by: Michael Davis <mcarsondavis@gmail.com> --------- Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
* build(deps): bump serde from 1.0.180 to 1.0.183 (#7860)dependabot[bot]2023-08-08
| | | | Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Show whether file readonly in statusline (#7740)Connortsui202023-08-08
|
* Center the picker preview selection using visual lines (#7837)Jesse Luehrs2023-08-08
| | | | this way the preview always shows the selection even if lines were wrapped
* Skip rendering gutters when gutter width exceeds view width (#7821)Anshul Dalal2023-08-08
|
* build(tree-sitter): update javascript, typescript and tsx (#7852)woojiq2023-08-07
| | | | | | | | | | | | | * build(tree-sitter): update javascript, typescript and tsx * update revision of tree-sitter parsers for these languages. * rename `?.` to `optional_chain`, introduced in tree-sitter/tree-sitter-javascript@186f2adbf790552b354a9ba712341c7d48bdbccd. * fix(highlight): change jsx queries to match latest tree-sitter Latest tree-sitter/tree-sitter-javascript@bb1f97b643b77fc1f082d621bf533b4b14cf0c3 added some breaking changes that broke highlighting. * Remove some queries with `nested_identifier`. * Remove deprecated `jsx_fragment` from indent query. * Count `</` and `/>` as a single token.
* Add tree-sitter textobjects queries for bash (#7764)Petr Gajdůšek2023-08-07
| | | | | | This implements function, (calling) argument and comment captures for use in the textobject selections in bash. This also updates the generated docs after adding the textobjects for bash.
* Update tree-sitter-git-commit (#7831)Michael Davis2023-08-07
| | | | This fixes a problem parsing the "On branch _branch_" part of the commit comment when the branch contains a slash.
* CI: Remove the aarch64 appimage build steps from release (#7832)Michael Davis2023-08-07
| | | | | The steps mistakenly produce a x86_64 appimage and call it aarch64. linuxdeploy doesn't currently support producing aarch64 appimages so we should just remove these steps for aarch64-linux.
* Only use tsq for tsq filesBlaž Hrastnik2023-08-07
| | | | | This makes our highlight files more plain but it correctly highlights scheme :/
* Update tree-sitter-schemeBlaž Hrastnik2023-08-07
|
* feat(indent): add basic java indentation queries (#7844)woojiq2023-08-07
|
* Add new moon theme to default themes (#7834)Mohamed Imrane Chehabi2023-08-04
| | | | | * Add new moon theme to default themes * Remove .DS_Store
* Improve wren support (#7819)Jummit2023-08-04
|
* Update t32 language queries to version 2.2.1 (#7811)Christoph Sax2023-08-04
| | | | | | | | | | | | | | Version 2.2.1 of the grammar adds extended support for HLL (C, C++,..) expressions. Quite a few node types were added, renamed or removed in the process. This change brings the highlight queries in sync with the ones found in the repository of the grammar. The highlighting tests "look" okay after updating the queries. Recently, Codeberg had some reliability issues. That is why the language is now using the mirror repository on GitLab as source instead. Co-authored-by: Christoph Sax <christoph.sax@mailbox.org>
* Bump the version of Hare's grammar (#7784)J. Brock2023-08-04
|
* build(deps): bump serde from 1.0.175 to 1.0.180 (#7794)dependabot[bot]2023-08-04
| | | | | | | | | | | | | | | Bumps [serde](https://github.com/serde-rs/serde) from 1.0.175 to 1.0.180. - [Release notes](https://github.com/serde-rs/serde/releases) - [Commits](https://github.com/serde-rs/serde/compare/v1.0.175...v1.0.180) --- 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>
* fix range formatting error message typo (#7823)Austin L Wolfgram2023-08-04
|
* Update tree-sitter-zig (#7803)voroskoi2023-08-02
|
* languages: add protobuf language servers (#7796)Jimmy Zelinskie2023-08-02
| | | | | * languages: add bufls protobuf language server * languages: add pbkit protobuf language server
* feat: smart_tabSkyler Hawthorne2023-08-01
| | | | | | Implement `smart_tab`, which optionally makes the tab key run the `move_parent_node_start` command when the cursor has non- whitespace to its left.
* add node boundary movementSkyler Hawthorne2023-08-01
|
* update yanked dependency (#7800)Zoey Hewll2023-08-01
|
* build(deps): bump serde_json from 1.0.103 to 1.0.104 (#7793)dependabot[bot]2023-08-01
| | | | Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump globset from 0.4.11 to 0.4.12 (#7795)dependabot[bot]2023-08-01
| | | | Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add yank_to_clipboard commands, bind to `<space>y` by defaultMichael Davis2023-07-31
| | | | | | | | The clipboard special registers are able to retain multiple selections and also join the value when copying it to the clipboard. So by default we should yank regularly to the '*' and '+' registers. That will have the same behavior for the clipboards but will allow pasting multiple selections if the clipboard doesn't change between yanks.
* Reimplement clipboard commands in terms of special regsMichael Davis2023-07-31
| | | | | | | | | | Since the clipboard provider now lives on the Registers type, we want to eliminate it from the Editor. We can do that and clean up the commands that interact with the clipboard by calling regular yank, paste and replace impls on the clipboard special registers. Eventually the clipboard commands could be removed once macro keybinding is supported.
* Preview the latest value for regular registersMichael Davis2023-07-31
| | | | | | | | | | | | | | | | | | | | | | | This fixes a discrepancy between regular registers which are used for yanking multiple values (for example via `"ay`) and regular registers that store a history of values (for example `"a*`). Previously, the preview shown in `select_register`'s infobox would show the oldest value in history. It's intuitive and useful to see the most recent value pushed to the history though. We cannot simply switch the preview line from `values.first()` to `values.last()`: that would fix the preview for registers used for history but break the preview for registers used to yank multiple values. We could push to the beginning of the values with `Registers::push` but this is wasteful from a performance perspective. Instead we can have `Registers::read` return an iterator that returns elements in the reverse order and reverse the values in `Register::write`. This effectively means that `push` adds elements to the beginning of the register's values. For the sake of the preview, we can switch to `values.last()` and that is then correct for both usage- styles. This also needs a change to call-sites that read the latest history value to switch from `last` to `first`.
* book: Document default and special registersMichael Davis2023-07-31
|
* commands: Allow using selected register where hardcodedMichael Davis2023-07-31
| | | | | These snippets use hardcoded registers but it can be useful to be able to specify a register for these commands.
* Use refactored Registers typeMichael Davis2023-07-31
| | | | | | | This is an unfortunately noisy change: we need to update virtually all callsites that access the registers. For reads this means passing in the Editor and for writes this means handling potential failure when we can't write to a clipboard register.
* Add system & primary clipboards as special registersMichael Davis2023-07-31
| | | | | | | | | | | | | | These special registers join and copy the values to the clipboards with '*' corresponding to the system clipboard and '+' to the primary as they are in Vim. This also uses the trick from PR6889 to save the values in the register and re-use them without joining into one value when pasting a value which was yanked and not changed. These registers are not implemented in Kakoune but Kakoune also does not have a built-in clipboard integration. Co-authored-by: CcydtN <51289140+CcydtN@users.noreply.github.com> Co-authored-by: Pascal Kuthe <pascal.kuthe@semimod.de>
* Add the '%' (current filename) registerMichael Davis2023-07-31
| | | | | | | | | | This register also comes from Kakoune. It's read-only and produces the current document's name, defaulting to the scratch buffer name constant. (Also see PR5577.) Co-authored-by: Ivan Tham <pickfire@riseup.net>
* Add '#' and '.' special registersMichael Davis2023-07-31
| | | | | | | | | | | | | | | | | | These come from Kakoune: * '#' is the selection index register. It's read-only and produces the selection index numbers, 1-indexed. * '.' is the selection contents register. It is also read-only and mirrors the contents of the current selections when read. We switch the iterators returned from Selection's `fragments` and `slices` methods to ExactSizeIterators because: * The selection contents register can simply return the fragments iterator. * ExactSizeIterator is already implemented for iterators over Vecs, so it's essentially free. * The `len` method can be useful on its own.
* Refactor Registers to take EditorMichael Davis2023-07-31
| | | | | | | | | | | | | | | | | | | | | | This sets up a new Registers type that will allow us to expand support for special registers. (See the child commits.) We start simple with the regular (`Vec<String>`) registers and the simplest special register, the black hole. In the child commits we will expand these match arms with more special registers. The upcoming special registers will need a few things that aren't possible with the current Registers type in helix-core: * Access to the `Editor`. This is only necessary when reading from registers, so the `&Editor` parameter is only added to `Registers::read`. * Returning owned values. Registers in helix-core returns references to the values backed by the `Vec<String>` but future special registers will need to return owned values. We refactor the return value of the read operations to give `Cow<str>`s and iterators over those. * Returning a `Result` for write/push functions. This will be used by the clipboard special registers.