aboutsummaryrefslogtreecommitdiff
path: root/helix-view/src
Commit message (Collapse)AuthorAge
* Add system clipboard yank and paste commandsBenoît CORTIER2021-06-20
| | | | | | | | | | | | | | | | | | | This commit adds six new commands to interact with system clipboard: - clipboard-yank - clipboard-yank-join - clipboard-paste-after - clipboard-paste-before - clipboard-paste-replace - show-clipboard-provider System clipboard provider is detected by checking a few environment variables and executables. Currently only built-in detection is supported. `clipboard-yank` will only yank the "main" selection, which is currently the first one. This will need to be revisited later. Closes https://github.com/helix-editor/helix/issues/76
* Use full screen sizewojciechkepka2021-06-20
|
* Only reconfiure highlights when setting themewojciechkepka2021-06-19
|
* Add ability to change theme on editorwojciechkepka2021-06-19
|
* Add themes loaderwojciechkepka2021-06-19
|
* Revert "Refactor key into helix-view"Blaž Hrastnik2021-06-19
| | | | | | Did not use defaults when custom keymap was used This reverts commit ca806d4f852e934651132fc9570a6110e30f646d.
* Refactor key into helix-viewIvan Tham2021-06-19
| | | | Now also make use of Deserialize for Config.
* Add `close_language_servers` method on `Editor`wojciechkepka2021-06-19
|
* Add `work_done_token` as parameter to lsp methodswojciechkepka2021-06-18
|
* Fix expansion of `~` (#284)Wojciech Kępka2021-06-18
| | | | | | | | | | | | | * Fix expansion of `~`, dont use directory relative to cwd. * Add `expand_tilde` * Bring back `canonicalize_path`, use `expand_tilde` to `normalize` * Make `:open ~` completion work * Fix clippy * Fold home dir into tilde in Document `realitve_path`
* Replace `Editor::current` by a macroBenoît CORTIER2021-06-18
| | | | | | | | | This is necessary to workaround ownership issues across function calls. The issue notably arised when implementing the registers into `Editor` and I was getting annoyed again when implementing copy/pasting into system clipboard. The problem is addressed by using macro calls instead of function calls. There is no notable side effect.
* Configurable keys 2 (Mapping keys to commands) (#268)PabloMansanet2021-06-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add convenience/clarity wrapper for Range initialization * Add keycode parse and display methods * Add remapping functions and tests * Implement key remapping * Add remapping book entry * Use raw string literal for toml * Add command constants * Make command functions private * Map directly to commands * Match key parsing/displaying to Kakoune * Formatting pass * Update documentation * Formatting * Fix example in the book * Refactor into single config file * Formatting * Refactor configuration and add keymap newtype wrappers * Address first batch of PR comments * Replace FromStr with custom deserialize
* Add theme key for selected line numberGokul Soumya2021-06-16
| | | | | | | | | | | Adds `ui.linenr.selected` which controls highlight of linu numbes which have cursors on. - Fallback to linenr if linenr.selected is missing - Update docs and themes - Add TODOs for themes with temporary linenr.selected
* Add cursor kind to separate hidden cursor from posIvan Tham2021-06-15
| | | | | Now IME cursor position should be correct since we can still set cursor position without drawing the cursor.
* Remove RwLock for registersBenoît CORTIER2021-06-15
| | | | | | | | Registers are stored inside `Editor` and accessed without `RwLock`. To work around ownership, I added a sister method to `Editor::current`: `Editor::current_with_context`. I tried to modify `Editor::current` directly but it's used at a lot of places so I reverted into this for now at least.
* Cosmetic changes and better comments for the indent auto-detect code.Nathan Vegdahl2021-06-15
|
* Address PR comments.Nathan Vegdahl2021-06-15
| | | | | | - Move char functions into their own module under helix_core. - Use matches!() macro where appropriate. - Use a static lifetime on indent_unit() now that we can.
* Render indent-style status in status line.Nathan Vegdahl2021-06-15
| | | | Also cleaned up the status line code a little.
* Fix clippy warnings.Nathan Vegdahl2021-06-15
|
* Attempt to auto-detect indentation style on document load.Nathan Vegdahl2021-06-15
| | | | This also moves the primary indentation-style setting into Document.
* `Document::is_modified` should not check if path is setWojciech Kępka2021-06-13
| | | | If there is a new document we still want to know if there are unsaved changes
* add alternate file (#223)Robin2021-06-12
| | | | | | | | | | | | | * add alternate file inspired by vim ctrl-6/kak ga commands. the alternate file is kept per view * apply feedback from #223 * rename to last_accessed * add ga doc * add fail message for ga
* Add :earlier and :later commands that can be used to navigate the full edit ↵Jakub Bartodziej2021-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | history. (#194) * Disable deleting from an empty buffer which can cause a crash. * Improve on the fix for deleting from the end of the buffer. * Clean up leftover log. * Avoid theoretical underflow. * Implement :before which accepts a time interval and moves the editor to the closest history state to the commit of the current time minus that interval. Current time is now by default, or the commit time if :before has just been used. * Add :earlier an :later commands that can move through the edit history and retrieve changes hidded by undoing and commiting new changes. The commands accept a number of steps or a time period relative to the currrent change. * Fix clippy lint error. * Remove the dependency on parse_duration, add a custom parser instead. * Fix clippy errors. * Make helix_core::history a public module. * Use the helper for getting the current document and view. * Handled some PR comments. * Fix the logic in :later n. Co-authored-by: Ivan Tham <pickfire@riseup.net> * Add an alias for :earlier. Co-authored-by: Ivan Tham <pickfire@riseup.net> * Add an alias for later. Co-authored-by: Ivan Tham <pickfire@riseup.net> * Run cargo fmt. * Add some tests for earlier and later. * Add more tests and restore the fix for later that diappeared somehow. * Use ? instead of a match on an option. Co-authored-by: Ivan Tham <pickfire@riseup.net> * Rename to UndoKind. * Remove the leftover match. * Handle a bunch of review comments. * More systemd.time compliant time units and additional description for the new commands. * A more concise rewrite of the time span parser using ideas from PR discussion. * Replace a match with map_err(). Co-authored-by: Ivan Tham <pickfire@riseup.net> Co-authored-by: Jakub Bartodziej <jqb@google.com> Co-authored-by: Ivan Tham <pickfire@riseup.net>
* lsp: Display LSP progress messages (#216)Wojciech Kępka2021-06-11
|
* Implement missing Debug and update Cargo.locknotoria2021-06-10
|
* Derive debug without featureIvan Tham2021-06-10
| | | | Note that this also removed those `finish_non_exhaustive()`.
* Implement Debug for data structure as a featurenotoria2021-06-10
|
* Fix jump behavior, goto_implementation now jumpIvan Tham2021-06-10
| | | | | Better jump behavior since we override the first jump if it's on the first document. At the same time, ctrl-i is now working with gd jumps.
* Don't panic on empty documentKevin Sjöberg2021-06-09
|
* Support go to line 1Zheming Li2021-06-08
|
* Fix Unicode (#135)Kirawi2021-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * init * wip * wip * fix unicode break * fix unicode break * Update helix-core/src/transaction.rs Co-authored-by: Benoît Cortier <benoit.cortier@fried-world.eu> * clippy * fix * add changes * added test * wip * wip * wip * wip * fix * fix view * fix #88 Co-authored-by: Benoît Cortier <benoit.cortier@fried-world.eu>
* Add missing newline to end of file on loadIvan Tham2021-06-08
| | | | Fix #152
* Don't panic on LSP not startingEgor Karavaev2021-06-08
|
* Implement register selectionBenoît CORTIER2021-06-07
| | | | | | User can select register to yank into with the " command. A new state is added to `Editor` and `commands::Context` structs. This state is managed by leveraging a new struct `RegisterSelection`.
* Add diagnostics keybindingsWojciech Kępka2021-06-07
|
* theme: Enable style modifiers in theme.toml, add Ingrid's theme (#113)Ingrid2021-06-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | * theme: Enable style modifiers in theme.toml * docs: theme documentation * fixup: parse modifiers with filter_map * theme: tests for parse_style * theme: Log invalid cases in theme.toml parse * docs: theme documentation fixup * docs: Blaz's theming comments * docs: Theme doc fixes from pickfire Co-authored-by: Ivan Tham <pickfire@riseup.net> * theme: More context in logs, TODO for alerting users * contrib: Ingrid's theme * docs: Theme subsection fixes Co-authored-by: Ivan Tham <pickfire@riseup.net>
* Add a comment to `canonicalize_path`Wojciech Kępka2021-06-06
|
* Add a TODOWojciech Kępka2021-06-06
|
* Create document if it doesn't exist on saveWojciech Kępka2021-06-06
|
* Fixing Multiple Panics (#121)Kirawi2021-06-05
| | | | | | | * init * wip * wip
* Try to detect language when document file path is setBlaž Hrastnik2021-06-04
| | | | Fixes #91
* Fix undo redoIvan Tham2021-06-03
| | | | | | I missed the fast return. Fix #89
* Improve on the fix for deleting from the end of the buffer.Jakub Bartodziej2021-06-03
|
* Disable deleting from an empty buffer which can cause a crash.Jakub Bartodziej2021-06-03
|
* Fix split sizes getting out of sync with the terminal size, refs #69Blaž Hrastnik2021-06-03
|
* Fix panic when buffer larger than terminal widthRowan Herbert2021-06-02
|
* Separate document history into CellIvan Tham2021-06-02
| | | | | As history is used separately from the rest of the edits, separating it can avoid needless borrowing and cloning. But one need to be aware later.
* Allow setting a filepath on :writeBlaž Hrastnik2021-06-01
|
* Format document on saveBlaž Hrastnik2021-05-29
|
* Address clippy lint.Blaž Hrastnik2021-05-17
|