aboutsummaryrefslogtreecommitdiff
path: root/helix-core/src/lib.rs
Commit message (Collapse)AuthorAge
...
* 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>
* Movement fixes, refactor and unit test suite (#217)PabloMansanet2021-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add convenience/clarity wrapper for Range initialization * Test horizontal moves * Add column jumping tests * Add failing movement conditions for multi-word moves * Refactor skip_over_next * Add complex forward movement unit tests * Add strict whitespace checks and edge case tests * Restore formatting * Remove unused function * Add empty test case for deletion and fix nth_prev_word_boundary * Add tests for backward motion * Refactor word movement * Address review comments and finish refactoring backwards move * Finish unit test suite * Fmt pass * Fix lint erors * Clean up diff restoring bad 'cargo fmt' actions * Simplify movement closures (thanks Pickfire) * Fmt pass * Replace index-based movement with iterator based movement, ensuring that each move incurs a single call to the RopeSlice API * Break down tuple function * Extract common logic to all movement functions * Split iterator helpers away into their own module * WIP reducing clones * Operate on spans * WIP simplifying iterators * Simplify motion helpers * Fix iterator * Fix all unit tests * Refactor and simplify * Simplify fold
* Cleanup find_first_non_whitespace_char funcsWojciech Kępka2021-06-08
|
* commands: Add goto first non-whitespace char of lineWojciech Kępka2021-06-08
|
* lsp: Provide workspace root on client.initialize()Blaž Hrastnik2021-06-07
|
* Add ctrl-w in insert modeIvan Tham2021-06-06
| | | | | It seemed to panic when I pressed too many times, but that is from lsp side.
* Provide a feature flag to be able to embed the runtime folder.Brian Dawn2021-06-06
| | | | | | These changes provide a new feature flag "embed_runtime" that when enabled and built in release mode will embed the runtime folder into the resulting binary.
* Default log file to cacheIvan Tham2021-06-03
|
* Update architecture.mdBlaž Hrastnik2021-05-30
|
* Make the config dir locator work on Windows.Blaž Hrastnik2021-05-10
|
* Determine runtime dir based on executable location or env override.Blaž Hrastnik2021-05-09
|
* Load config files from ~/.config/helix, fallback to defaults.Blaž Hrastnik2021-04-07
|
* Simplify some code.Blaž Hrastnik2021-04-01
|
* Implement m / match_brackets (using tree sitter).Blaž Hrastnik2021-03-22
|
* Merge some imports.Blaž Hrastnik2021-03-22
|
* Implement auto-pairs behavior for open and close.Blaž Hrastnik2021-03-22
|
* Move things out of state.rs.Blaž Hrastnik2021-03-18
|
* Use diagnostic.severity to distinguish between error colors.Blaž Hrastnik2021-03-11
|
* find-till (f) prototype, on_next_key mode implementation.Blaž Hrastnik2021-03-11
|
* commands: Implement expand_selection.Blaž Hrastnik2021-02-22
|
* more lintsBlaž Hrastnik2021-02-18
|
* core: Implement comment toggling module.Blaž Hrastnik2021-02-18
|
* treewide: &RopeSlice -> RopeSlice. It's Copy so no reason to pass by refBlaž Hrastnik2021-02-18
|
* Text change generation, RPC call handling.Blaž Hrastnik2020-12-03
|
* Reroute LSP notification events into the main app event loop.Blaž Hrastnik2020-12-03
|
* Share tab width definitions.Blaž Hrastnik2020-10-14
|
* Indent draft, linewise pasteBlaž Hrastnik2020-10-13
|
* Simple yank/paste registers.Blaž Hrastnik2020-10-13
|
* Undo tree draft.Blaž Hrastnik2020-10-13
| | | | | We keep a tree of transactions. This allows for persistent undo by simply serializing the changesets.
* Split selection on regex, fix InputEdit generation.Blaž Hrastnik2020-09-28
|
* Extend selection commands.Blaž Hrastnik2020-09-28
|
* More robust syntax detection/grammar loading.Blaž Hrastnik2020-09-22
|
* Split parts of helix-term into helix-view.Blaž Hrastnik2020-09-21
| | | | | It still largely depends on term for some types but I plan to change that later.
* Command needs access to view information for certain changes.Blaž Hrastnik2020-09-19
|
* Incremental parsing: rough draft.Blaž Hrastnik2020-09-17
|
* cargo fmt & clippy lintBlaž Hrastnik2020-09-12
|
* Refactor a little bit.Blaž Hrastnik2020-09-12
|
* cleanup: Import tree-sitter-highlight so we can cache trees.Blaž Hrastnik2020-09-11
|
* tree-sitter based syntax highlighting draftBlaž Hrastnik2020-09-10
|
* cleanup: Make Buffer just a part of State.Blaž Hrastnik2020-09-07
|
* added cursor renderingJan Hrastnik2020-06-24
|
* Add a command module.Blaž Hrastnik2020-06-07
|
* Add primitives for converting between char offset indices and coords.Blaž Hrastnik2020-06-05
|
* Allow unused code for the time being.Blaž Hrastnik2020-06-02
|
* wip: importing to githubBlaž Hrastnik2020-06-01
|
* Selection mapping over changesets.Blaž Hrastnik2020-05-28
|
* address clippy warningsBlaž Hrastnik2020-05-28
|
* OT: changeset: Implement compose and apply.Blaž Hrastnik2020-05-26
|
* Implement a new core based on CodeMirror.Blaž Hrastnik2020-05-25
|
* Initial import.Blaž Hrastnik2020-05-20