summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* fix: editor.close now takes only a single parameterBlaž Hrastnik2021-11-15
|
* Add command to inc/dec number under cursor (#1027)Jason Hansen2021-11-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add command to inc/dec number under cursor With the cursor over a number in normal mode, Ctrl + A will increment the number and Ctrl + X will decrement the number. It works with binary, octal, decimal, and hexidecimal numbers. Here are some examples. 0b01110100 0o1734 -24234 0x1F245 If the number isn't over a number it will try to find a number after the cursor on the same line. * Move several functions to helix-core * Change to work based on word under selection * It no longer finds the next number if the cursor isn't already over a number. * It only matches numbers that are part of words with other characters like "foo123bar". * It now works with multiple selections. * Add some unit tests * Fix for clippy * Simplify some things * Keep previous selection after incrementing * Use short word instead of long word This change requires us to manually handle minus sign. * Don't pad decimal numbers if no leading zeros * Handle numbers with `_` separators * Refactor and add tests * Move most of the code into core * Add tests for the incremented output * Use correct range * Formatting * Rename increment functions * Make docs more specific * This is easier to read * This is clearer * Type can be inferred
* Readline style insert mode (#1039)Bob2021-11-15
| | | | | | | | | | | | | | | | | | | | | * readline style insert mode * update keymap.md * don't save change history in insert mode * Revert "don't save change history in insert mode" This reverts commit cb47f946d7fb62ceda68e7d1692a3914d0be7762. * don't affect register and history in insert mode * add insert_register * don't call exit_select_mode in insert mode * avoid set_selection * avoid duplicated current!
* helix-term/commands: implement buffer-close (bc, bclose) (#1035)Cole Helbling2021-11-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * helix-view/view: impl method to remove document from jumps * helix-view/editor: impl close_document * helix-view/editor: remove close_buffer argument from `close` According to archseer, this was never implemented or used properly. Now that we have a proper "buffer close" function, we can get rid of this. * helix-term/commands: implement buffer-close (bc, bclose) This behaves the same as Kakoune's `delete-buffer` / `db` command: * With 3 files opened by the user with `:o ab`, `:o cd`, and `:o ef`: * `buffer-close` once closes `ef` and switches to `cd` * `buffer-close` again closes `cd` and switches to `ab` * `buffer-close` again closes `ab` and switches to a scratch buffer * With 3 files opened from the command line with `hx -- ab cd ef`: * `buffer-close` once closes `ab` and switches to `cd` * `buffer-close` again closes `cd` and switches to `ef` * `buffer-close` again closes `ef` and switches to a scratch buffer * With 1 file opened (`ab`): * `buffer-close` once closes `ab` and switches to a scratch buffer * `buffer-close` again closes the scratch buffer and switches to a new scratch buffer * helix-term/commands: implement buffer-close! (bclose!, bc!) Namely, if you have a document open in multiple splits, all the splits will be closed at the same time, leaving only splits without that document focused (or a scratch buffer if they were all focused on that buffer). * helix-view/tree: reset focus if Tree is empty
* Enable thin LTOBlaž Hrastnik2021-11-15
| | | | | It compiles about half a second slower for me, so it seems fine to use by default.
* helix-term/commands: implement cquit (#1096)Cole Helbling2021-11-15
| | | This allows you to exit helix with an exit code, e.g. `:cq 2`.
* minor: Remove leftover log lineBlaž Hrastnik2021-11-15
|
* Implement MarkedString renderingBlaž Hrastnik2021-11-15
| | | | Solves typescript and python documentation rendering
* Solarized dark theme (#999)Kirawi2021-11-15
| | | | | | | * init * wip * wip
* Add movement shortcut for history (#1088)Ivan Tham2021-11-14
| | | alt-u and alt-U
* Add trim_selections command (#1092)ath32021-11-14
|
* Added workspace_symbol_picker (#1041)Ebbe Steenhoudt2021-11-14
| | | | | | | * Added workspace_symbol_picker * Moved truncation of the symbol pickers to the end. * Fixed typo
* minor: Import Range tooBlaž Hrastnik2021-11-14
|
* Implement "Goto last modification" command (#1067)ath32021-11-14
|
* Add commit hash to version info, if present (#957)Gygaxis Vainhardt2021-11-14
| | | | | | | | | | | * Add commit hash to version info, if present * Rename GIT_HASH to indicate that it includes version, fix linter error * Add whitespace after use statement Co-authored-by: Ivan Tham <pickfire@riseup.net> Co-authored-by: Ivan Tham <pickfire@riseup.net>
* helix-term/editor: display scratch buffer name in status barCole Helbling2021-11-14
|
* helix-term/commands: move SCRATCH_BUFFER_NAME to helix-view/document (#1091)Cole Helbling2021-11-13
| | | | This way, the name is accessible everywhere `Document` and related types are.
* Make prompts consistent (#1080)Omnikar2021-11-12
|
* fix: shift-tab mappings broken after efc2b4c7Blaž Hrastnik2021-11-12
|
* docs: Mark more keybinds that require LSP and treesitter (#1081)Gokul Soumya2021-11-12
|
* Add arrow keys to view mode (#987)NexiNov2021-11-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add arrow keys to view mode * Drop C-up and C-down * Update docs for #987 * Format correctly * Drop other keymaps * Correct keymap.md * Add arrow keys to view mode Drop C-up and C-down Update docs for #987 Format correctly Drop other keymaps Correct keymap.md Rebase Co-authored-by: Rust & Python <nexinov@localhost.gud-o15> Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* Add `remove_selections` command (#1065)Omnikar2021-11-12
| | | | | | | | | * Add `remove_selections` command * Document `remove_selections` * Update helix-term/src/keymap.rs Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* Fix earlier/later missing changeset update (#1069)Ivan Tham2021-11-11
| | | Fix #1059
* Allow keys to be mapped to sequences of commands (#589)Omnikar2021-11-11
| | | | | | | | | * Allow keys to be mapped to sequences of commands * Handle `Sequence` at the start of `Keymap::get` * Use `"[Multiple commands]"` as command sequence doc * Add command sequence example to `remapping.md`
* helix-term/command: make scratch buffer name consistent (#1071)Cole Helbling2021-11-11
|
* Add `m` textobject for pair under cursor (#961)Omnikar2021-11-11
|
* add wonly -- window only (#1057)Bob2021-11-11
| | | | | | | | | | | | | * add wonly * Update book/src/keymap.md Co-authored-by: Blaž Hrastnik <blaz@mxxn.io> * add `wonly` to space w mode too * remove the TODO Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* Fix moving with arrow keys in prompt (#1070)ath32021-11-11
|
* Add json indents.toml file (#1055)Mateusz S. Szczygieł2021-11-10
| | | | | | | * add glsl language support * glsl: use indents.toml file * add json indents.toml
* Refactor keyevent handling using key, ctrl macros (#1058)Gokul Soumya2021-11-10
| | | | | | Adds ctrl! and alt! macros (which existed before the big keymap refactor) and uses them in event handling of Components. Note that this converts crossterm's KeyEvent to our own KeyEvent on each invocation of handle_event in Components.
* Ensure that identical keymaps stay in sync (#1056)Gokul Soumya2021-11-10
| | | | | | | Space mode and view mode are duplicated on two different keybinds, and they tend to get out of sync by contributers forgetting to update both of them. This commit adds a test that explicitly checks that they are identical. Prevents issues like #1050.
* Check for duplicate keys in default keymapGokul Soumya2021-11-10
|
* Change page keybinds in view modeGokul Soumya2021-11-10
| | | | | | | b which was assigned to page_up conflicts with align to bottom, so this commit replaces page up, down, etc keybinds to use normal mode keybinds (C-f, C-b, etc) in view mode too.
* Update `space w` window mode (#1050)Omnikar2021-11-10
|
* Allow piping from stdin into a buffer on startup (#996)Jason Hansen2021-11-10
| | | | | | | | | | | | | | | | | | | * Allow piping from stdin into a buffer on startup * Refactor * Don't allow piping into new buffer on macOS * Update helix-term/src/application.rs Co-authored-by: Blaž Hrastnik <blaz@mxxn.io> * Update helix-term/src/application.rs Co-authored-by: Blaž Hrastnik <blaz@mxxn.io> * Fix Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* buffer picker add is_modifier flag (#1020)CossonLeo2021-11-10
|
* Cleanup keymap doc book page (#1042)Gokul Soumya2021-11-10
| | | | - Clearly mark keybinds that require LSP - Fix incorrect rendering of Prompt section due to missing newline
* Restore screen position when abort search (#1047)Ivan Tham2021-11-10
|
* add <C-h>, <C-u>, <C-d>, Delete in prompt mode (#1034)Bob2021-11-09
|
* Add rename_symbol to book/ (#1031)CossonLeo2021-11-09
| | | | | | | | | * rename_symbol book * Update book/src/keymap.md Co-authored-by: Blaž Hrastnik <blaz@mxxn.io> Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* search_impl will only align cursor center when it isn't in view (#959)CossonLeo2021-11-09
|
* add solarized_light theme (#1010)CossonLeo2021-11-09
| | | | | * add solarized_light theme * solarized_light add constant.numeric
* Use default `languages.toml` if user's is invalid (#994)Omnikar2021-11-09
|
* build(deps): bump serde_json from 1.0.68 to 1.0.69 (#1030)dependabot[bot]2021-11-09
| | | | | | | | | | | | | | | | Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.68 to 1.0.69. - [Release notes](https://github.com/serde-rs/json/releases) - [Commits](https://github.com/serde-rs/json/compare/v1.0.68...v1.0.69) --- updated-dependencies: - dependency-name: serde_json 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 anyhow from 1.0.44 to 1.0.46 (#1029)dependabot[bot]2021-11-09
| | | | | | | | | | | | | | | | Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.44 to 1.0.46. - [Release notes](https://github.com/dtolnay/anyhow/releases) - [Commits](https://github.com/dtolnay/anyhow/compare/1.0.44...1.0.46) --- 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>
* Revert "fix(core): stop merging array toml config values (#1004)"Blaž Hrastnik2021-11-09
| | | | | | It breaks languages.toml merging This reverts commit 4304b52ff86f829115cb89b20160b4f80dbb3dbd.
* Make shebangs optional, they don't make sense outside of scriptsBlaž Hrastnik2021-11-09
|
* Fix panicked missing field `shebangs` (#1025)Curiosidad-Racional2021-11-09
| | | | | | Fix the error: ``` thread 'main' panicked at 'Could not parse merged (built-in + user) languages.toml: Error { inner: ErrorInner { kind: Custom, line: None, col: 0, at: None, message: "missing field `shebangs`", key: ["language"] } }', helix-term/src/application.rs:87:14 ```
* glsl support (#993)Mateusz S. Szczygieł2021-11-08
| | | | | * add glsl language support * glsl: use indents.toml file
* Refactor shebang detection to reuse the loaded bufferBlaž Hrastnik2021-11-08
|