aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
* | Select inserted space after join (#3549)Ivan Tham2022-10-03
| | | | | | | | | | | | | | | | | | * Select inserted space after join * Split join_selections with space selection to A-J Kakoune does that too and some users may still want to retain their selections. * Update join_selections docs
* | rust: Highlight function signatures as functions (#4073)Michael Davis2022-10-03
| | | | | | | | | | | | | | | | | | | | | | This stanza highlights functions within trait definitions. For example, in: pub trait Widget { fn render(self, area: Rect, buf: &mut Buffer); } `render` is currently highlighted as a variable. With this change it's highlighted as a function.
* | Add command names to command palette (#4071)nuid322022-10-03
| |
* | Fix signature help panic when too large (#4030)Ivan Tham2022-10-03
| | | | | | | | | | When signature help is too large it may cause a panic when it is too large, now I just make the hover do an intersection with surface to make sure it never overflow.
* | goto_window_* extends selection (#3985)greg-enbala2022-10-03
| | | | | | | | | | * goto_window_* extends selection * Don't push to the jumplist
* | [lsp-restart]: call the force_shutdown method for the old_client (#3972)Alexis Kalabura2022-10-03
| | | | | | | | | | | | | | * [lsp-restart]: call the shutdown_and_exit method for the old_client * change shutdown_and_exit to force_shutdown * remove extra log
* | feat(statusline): add option to show total line numbers in file (#3960)Joshua Pauline2022-10-03
| | | | | | | | | | * feat(statusline): add option to show total line numbers in file * feat(line numbers): add config to doc book
* | Add dark high contrast theme refer to vscode (#3312)Slug2022-10-03
| | | | | | | | | | | | | | | | | | * Add dark high contrast theme * Add my sign * Fix typo * Change gray to white for comment and remove Italic
* | Add configureable statusline mode names (#3311)PeepNSheep2022-10-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Added 'long-mode' statusline element * Added customizable statusline mode names * Removed a string clone * Added documentation * Updated documentation, moved modenames to a seperate section * Update configuration.md * Documentation update * Documentation update * Documentation update * Update configuration.md * Update configuration.md * Fixed merge error * Update configuration.md * Update configuration.md
* | Add `ui.gutter.selected` option for themes (#3303)ChrHorn2022-10-03
| | | | | | | | | | * add `ui.gutter.selected` * add `ui.gutter`, `ui.gutter.selected` to docs
* | Add tests for select-mode TS textobjectsMichael Davis2022-10-03
| |
* | Extend textobject selections in select modeMichael Davis2022-10-03
| |
* | Use Range::with_direction consistentlyMichael Davis2022-10-03
| |
* | Use requested direction for new textobject selection rangeMichael Davis2022-10-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the behavior of operations like `]f`/`[f` to set the direction of the new range to the direction of the action. The original behavior was to always use the head of the next function. This is inconsistent with the behavior of goto_next_paragraph and makes it impossible to create extend variants of the textobject motions. This causes a behavior change when there are nested functions. The behavior in the parent commit is that repeated uses of `]f` will select every function in the file even if nested. With this commit, functions are skipped. It's notable that it's possible to emulate the original behavior by using the `ensure_selections_forward` (A-:) command between invocations of `]f`.
* | Cycled to end/beginning + no more matches msgs (#3176)A-Walrus2022-10-03
| | | | | | | | | | | | | | | | | | * Show status msg when next/prev cycles around * Add msg when there is no wraparound * Cleanup code * Change msg to "Wrapped around document"
* | Inherit theme (#3067)Christoph Schmidler2022-10-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add RawTheme to handle inheritance with theme palette * Add a intermediate step in theme loading it uses RawTheme struct to load the original ThemePalette, so we can merge it with the inherited one. * Load default themes via RawThemes, remove Theme deserialization * Allow naming custom theme same as inherited one * Remove RawTheme and use toml::Value directly * Resolve all review changes resulting in a cleaner code * Simplify return for Loader::load * Add implementation to avoid extra step for loading of base themes
* | Show "Invalid regex" message on enter (Validate) (#3049)A-Walrus2022-10-03
| | | | | | | | | | | | | | | | | | | | | | * Show "Invalid regex" message on enter (Validate) * Reset selection on invalid regex * Add popup for invalid regex * Replace set_position with position * Make popup auto close
* | Add goto preview (#2982)Joe2022-10-03
| |
* | Update treesitter markdown (#4078)David2022-10-03
| | | | | | | | | | * Update treesitter markdown * Update inline and add table injections
* | Add pseudo_pending for t/T/f/F (#4062)Matt Freitas-Stavola2022-10-02
| |
* | diff full-doc LSP edits (#4041)Kirawi2022-10-02
| | | | | | Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
* | Onedarker theme: some improvements (#4069)nuid322022-10-02
| |
* | Adjust light-gray in onedarker theme (#4060)nuid322022-10-01
|/
* Ensure cursor in view after format (#4047)zensayyy2022-10-01
| | | Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
* Add support for webassembly text format (#4040)Roberto Vidal2022-10-01
|
* themes: Add onedarker (#3980)nuid322022-10-01
|
* WGSL syntax highlighting fix (#3996)Chickenkeeper2022-09-30
|
* Add comment injection for R (#4031)Maximilian Muecke2022-09-29
|
* tutor: missing <ESC> before removing the second cursor (#4027)joleaf2022-09-29
| | | This step was missing in section 5.2 of tutor.
* Fix tutor typo `favourite` to `favorite` (#4007)Sora2022-09-28
|
* Add gruvbox dark (#3948)Sven-Hendrik Haase2022-09-28
| | | | | * Add gruvbox dark * fixup! Add gruvbox dark
* nix: replace `runCommandNoCC` with `runCommand` (#3992)Erin Kim2022-09-27
|
* build(deps): bump serde from 1.0.144 to 1.0.145 (#3989)dependabot[bot]2022-09-26
| | | Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump thiserror from 1.0.35 to 1.0.36 (#3991)dependabot[bot]2022-09-26
| | | Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump unicode-general-category from 0.5.1 to 0.6.0 (#3990)dependabot[bot]2022-09-26
| | | Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix: Improve JSX and TSX tag highlighting (#3973)Jacob Chandler2022-09-26
|
* build(deps): bump tokio-stream from 0.1.9 to 0.1.10 (#3988)dependabot[bot]2022-09-26
| | | Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump once_cell from 1.14.0 to 1.15.0 (#3987)dependabot[bot]2022-09-26
| | | Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Remove `do_block` from Ruby indents (#3976)Oskar Köök2022-09-26
| | | `do_block` and `block` seem to conflict, causing double-indentation in some cases. Removing `do_block` does not seem to have any negative effect, while fixing the double-indentation issue.
* Add documentation for `max-line-length` (#3974)Oskar Köök2022-09-26
|
* chore: remove unneeded attribute after MSRV bump to 1.61 (#3961)Poliorcetics2022-09-25
|
* heex: upgrade grammar, add roots matching elixir (#3959)Clay2022-09-25
|
* Add bufferline colors to 15 themes (#3881)Invader Zim2022-09-23
| | | | | | | | | | | | | | | | | | | Themes: * acme * ayu_dark * ayu_light * ayu_mirage * base16_default_dark * base16_default_light * bogster * catppuccin_frappe * catppuccin_latte * catppuccin_macchiato * catppuccin_mocha * darcula * dark_plus * doom_acario_dark * emacs
* docs: Punctuation on tutor (#3888)adrian52022-09-23
|
* Add mix.exs and mix.lock as Elixir root markers (#3917)Riccardo Binetti2022-09-23
|
* Split helix_core::find_root and helix_loader::find_local_config_dirs (#3929)Riccardo Binetti2022-09-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Split helix_core::find_root and helix_loader::find_local_config_dirs The documentation of find_root described the following priority for detecting a project root: - Top-most folder containing a root marker in current git repository - Git repository root if no marker detected - Top-most folder containing a root marker if not git repository detected - Current working directory as fallback The commit contained in https://github.com/helix-editor/helix/pull/1249 extracted and changed the implementation of find_root in find_root_impl, actually reversing its result order (since that is the order that made sense for the local configuration merge, from innermost to outermost ancestors). Since the two uses of find_root_impl have different requirements (and it's not a matter of reversing the order of results since, e.g., the top repository dir should be used by find_root only if there's not marker in other dirs), this PR splits the two implementations in two different specialized functions. In doing so, find_root_impl is removed and the implementation is moved back in find_root, moving it closer to the documented behaviour thus making it easier to verify it's actually correct * helix-core: remove Option from find_root return type It always returns some result, so Option is not needed
* Document MSRV policy (#3913)Pascal Kuthe2022-09-23
|
* Deduplicate regexes in search_selection command (#3941)A-Walrus2022-09-22
|
* Theme: Papercolor: Tune inactive statusline (#3938)Henrik Tjäder2022-09-22
|
* Improve keymap errors from command typos (#3931)Michael Davis2022-09-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Improve keymap errors from command typos Currently, opening helix with a config containing a bad command mapping fails with a cryptic error. For example, say we have a config (bad.toml) with a command name that doesn't exist: [keys.normal] b = "buffer_close" # should be ":buffer-close" When we `hx -c bad.toml`, we get... > Bad config: data did not match any variant of untagged enum KeyTrie for key `keys.normal` at line 1 column 1 > Press <ENTER> to continue with default config This is because of the way that Serde tries to deserialize untagged enums such as `helix_term::keymap::KeyTrie`. From the Serde docs[^1]: > Serde will try to match the data against each variant in order and the > first one that deserializes successfully is the one returned. `MappableCommand::deserialize` fails (returns an Err variant) when a command does not exist. Serde interprets this as the `KeyTrie::Leaf` variant failing to match and declares that the input data doesn't "match any variant of untagged enum KeyTrie." Luckily the variants of KeyTrie are orthogonal in structure: we can tell them apart by the type hints from a `serde::de::Visitor`. This change uses a custom Deserialize implementation along with a Visitor that discerns which variant of the KeyTrie applies. With this change, the above failure becomes: > Bad config: No command named 'buffer_close' for key `keys.normal.b` at line 2 column 5 > Press <ENTER> to continue with default config We also provide more explicit information about the expectations on the field. A config with an unexpected type produces a message with that information and the expectation: [keys.normal] b = 1 > Bad config: invalid type: integer `1`, expected a command, list of commands, or sub-keymap for key `keys.normal.b` at line 2 column 5 > Press <ENTER> to continue with default config [^1]: https://serde.rs/enum-representations.html#untagged * Update helix-term/src/keymap.rs Co-authored-by: Ivan Tham <pickfire@riseup.net> Co-authored-by: Ivan Tham <pickfire@riseup.net>