aboutsummaryrefslogtreecommitdiff
path: root/helix-view/src/document.rs
Commit message (Collapse)AuthorAge
* 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
* 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 :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>
* 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
|
* Don't panic on empty documentKevin Sjöberg2021-06-09
|
* Add missing newline to end of file on loadIvan Tham2021-06-08
| | | | Fix #152
* Add diagnostics keybindingsWojciech Kępka2021-06-07
|
* 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
|
* 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
|
* 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
|
* Hacky way to specify indent scopes per language via toml configs.Blaž Hrastnik2021-05-14
| | | | | | | | | Can't do it via a scm query nicely because it returns an iterator over all the matches, whereas we want to traverse the tree ourselves. Can't extract the pattern data from a parsed query either. Oh well, toml files for now.
* Tokio migration.Blaž Hrastnik2021-05-06
|
* doc: Note about diagnostic mapping.Blaž Hrastnik2021-05-03
|
* doc: Be smarter about calculating modified status.Blaž Hrastnik2021-05-03
| | | | This way edit -> undo will properly show up as unmodified.
* lsp: support both utf-8 and utf-16 offsets.Blaž Hrastnik2021-04-14
| | | | | Still need to implement the clangd encoding negotiation, but it's a start. Should also manually override to utf8 for pyls.
* Always update selection: Empty transactions can still change selections.Blaž Hrastnik2021-04-06
|
* clippy lintBlaž Hrastnik2021-03-31
|
* Drop doc.state. Use doc.text + doc.selections.Blaž Hrastnik2021-03-31
|
* Weave through view_id references so that views into one file have ↵Blaž Hrastnik2021-03-31
| | | | independent selects.
* Fully drop State references.Blaž Hrastnik2021-03-31
|
* Track document modified state.Blaž Hrastnik2021-03-30
|
* Store intra-files jumps (goto) on the jumplist.Blaž Hrastnik2021-03-29
|
* view: document.rs cleanupBlaž Hrastnik2021-03-29
|
* Replace Mode::Goto with just using on_next_key.Blaž Hrastnik2021-03-29
|
* Add the machinery to load syntax config from TOML.Blaž Hrastnik2021-03-25
| | | | It's embedded into the binary at build time for now, but it's progress.
* Drop refcell use, make view simply ref doc.id.Blaž Hrastnik2021-03-23
|
* Add tab_width and indent_unit config.Blaž Hrastnik2021-03-22
|
* Finish hiding doc.state / State as an implementation detail.Blaž Hrastnik2021-03-18
|
* Expose doc.syntax() via accessor.Blaž Hrastnik2021-03-18
|
* Document::new should just take a rope.Blaž Hrastnik2021-03-18
|
* Expose doc.language_server as an accessor.Blaž Hrastnik2021-03-18
|
* Remove State from a few more signatures.Blaž Hrastnik2021-03-18
|
* Make Transaction::change only rely on the rope.Blaž Hrastnik2021-03-18
|
* minor: TODO comment cleanupBlaž Hrastnik2021-03-16
|
* Configure language servers via LanguageConfiguration.Blaž Hrastnik2021-03-14
|
* lsp: Emit didSave notifications.Blaž Hrastnik2021-03-12
|
* Add a selection mode again.Blaž Hrastnik2021-03-01
|