aboutsummaryrefslogtreecommitdiff
path: root/helix-core/src
Commit message (Collapse)AuthorAge
* fix: tree-sitter-scopes would infinitely loopBlaž Hrastnik2021-09-06
|
* Update tree-sitter to 0.20Blaž Hrastnik2021-09-06
| | | | | 0.20 includes querying improvements, we no longer have to convert fragments to strings but can return an iterator of chunks instead.
* remove unsafeBrian Shu2021-08-27
|
* feat: merge default languages.toml with user provided languages.toml, add a ↵Yusuf Bera Ertan2021-08-26
| | | | | | | | | | | generic TOML value merge function (#654) * feat: merge default languages.toml with user provided languages.toml * refactor: use catch-all to override all other values for merge toml * tests: add a test case for merging languages configs * refactor: change test module name
* Fix tests broken by the State changeBlaž Hrastnik2021-08-26
|
* Reduce State use a bit furtherBlaž Hrastnik2021-08-26
| | | | This is a legacy type that should be fully removed.
* Move path util functions from helix-term to helix-core (#650)Kirawi2021-08-25
|
* Fix auto pairs return wrong selection (#613)langbamit2021-08-18
|
* Fixes crash on empty rust file. (#592)Cor Peters2021-08-16
| | | | | Fixes #591 Co-authored-by: Cor Peters <luctius@gmail.com>
* Appease clippyBlaž Hrastnik2021-08-13
|
* Add :tree-sitter-scopes, useful when developing indents.tomlBlaž Hrastnik2021-08-13
|
* fix: tree sitter rendering glitches with multiple selection editsBlaž Hrastnik2021-08-13
|
* Document `pos_at_coords` better.Nathan Vegdahl2021-08-09
| | | | | Particularly the effect of the `limit_before_line_ending` parameter.
* Fix around-word text-object selection. (#546)Nathan Vegdahl2021-08-06
| | | | | | | | | | | | | * Fix around-word text-object selection. * Text object around-word: select to the left if no whitespace on the right. Also only select around when there's whitespace at all. * Make select-word-around select all white space on a side. * Update commented-out test case. * Fix unused import warning from rebase.
* Fix buggy surround behavior from #376.Nathan Vegdahl2021-08-04
| | | | Fixes #543.
* mouse: Remove verify_screen_coords, refactor primary selection modificationBlaž Hrastnik2021-07-30
|
* Remove embed_runtime featureBlaž Hrastnik2021-07-30
| | | | It's no longer practical to maintain. Closes #451
* Move indent-style code into `helix_core::indent`.Nathan Vegdahl2021-07-30
|
* Fixes for new clippy lints in Rust 1.54.Nathan Vegdahl2021-07-29
|
* Enforce cursor/selection invariants in one place.Nathan Vegdahl2021-07-28
| | | | Rather than per-command like before.
* Minor cleanup of the vertical movement code.Nathan Vegdahl2021-07-27
|
* Use `match` for branching on the `Direction` enum in more places.Nathan Vegdahl2021-07-27
|
* Add unit tests for some of the new `Range` methods.Nathan Vegdahl2021-07-27
|
* Improve `Range` documentation and organization.Nathan Vegdahl2021-07-27
|
* Merge branch 'master' into great_line_ending_and_cursor_range_cleanupNathan Vegdahl2021-07-26
|\
| * Fix append newline indentIvan Tham2021-07-26
| | | | | | | | Fix #492
| * Implement in-memory prompt historyBlaž Hrastnik2021-07-26
| | | | | | | | | | Implementation is similar to kakoune: we store the entries into a register.
| * Determine whether to use a margin of 0 or 1 when uncommenting (#476)Omnikar2021-07-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement `margin` calculation for uncommenting * Move `margin` calculation to `find_line_comment` * Fix comment bug with multiple selections on a line * Fix `find_line_comment` test for new return type * Generate a single vec of lines for comment toggle `toggle_line_comments` collects the lines covered by all selections into a `Vec`, skipping duplicates. `find_line_comment` now returns the lines to operate on, instead of returning the lines to skip. * Fix test for `find_line_comment` * Reserve length of `to_change` instead of `lines` The length of `lines` includes blank lines which will be skipped, and as such do not need space for a change reserved for them. `to_change` includes only the lines which will be changed. * Use `token.chars().count()` for token char length * Create `changes` with capacity instead of reserving * Remove unnecessary clones in `test_find_line_comment` * Add test case for 0 margin comments * Add comments explaining `find_line_comment`
* | Address some PR comments.Nathan Vegdahl2021-07-26
| |
* | Collect some common patterns into methods on `Range`.Nathan Vegdahl2021-07-26
| |
* | Switch to a cleaner range-head moving abstraction.Nathan Vegdahl2021-07-24
| | | | | | | | Also fix a bunch of bugs related to it.
* | Merge branch 'master' into great_line_ending_and_cursor_range_cleanupNathan Vegdahl2021-07-24
|\|
| * The item `fmt` was imported redundantlyfossdd2021-07-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed warning: ``` warning: the item `fmt` is imported redundantly --> helix-core/src/syntax.rs:98:9 | 16 | fmt, | --- the item `fmt` is already imported here ... 98 | use std::fmt; | ^^^^^^^^ | ```
* | Fix append mode, and make insertion always happen at head of range.Nathan Vegdahl2021-07-23
| |
* | Fix ocassional panic when matching brackets.Nathan Vegdahl2021-07-23
| |
* | Revert display-width-based vertical cursor movement.Nathan Vegdahl2021-07-22
| | | | | | | | Still needs to be done, but should be part of a separate PR.
* | Calculate the line that the range head is on correctly.Nathan Vegdahl2021-07-22
| |
* | Fix selections not being modified quite correctly with text edits.Nathan Vegdahl2021-07-21
| |
* | Fixes for misc bugs with view movement.Nathan Vegdahl2021-07-21
| |
* | Fix comment toggle command also sometimes toggling the next line.Nathan Vegdahl2021-07-20
| |
* | Fix various bugs related to goto-end-of-line command.Nathan Vegdahl2021-07-20
| | | | | | | | | | This also fixes a bug with `Selection::normalize()`, that could result in an out-of-bounds primary index.
* | Fix `Selection::push()` to make the pushed range primary.Nathan Vegdahl2021-07-20
| | | | | | | | Apparently I accidentally deleted that behavior in the cleanup.
* | Handle edge case in `range_to_target()` correctly.Nathan Vegdahl2021-07-19
| |
* | Fixed primary cursor position calculation to use 1-width semantics.Nathan Vegdahl2021-07-19
| | | | | | | | | | This had a bunch of knock-on effects that were buggy, such as bracket match highlighting.
* | Merge branch 'master' into great_line_ending_and_cursor_range_cleanupNathan Vegdahl2021-07-19
|\|
| * Remove ExactSizeIterator requirement on Transaction::changeBlaž Hrastnik2021-07-19
| | | | | | | | Size hint is enough.
| * Made toggle_comments language dependent (#463)Cor Peters2021-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | * Made toggle_comments language dependent * Fixed Test Cases * Added clippy suggestion * Small Fixes * Clippy Suggestion Co-authored-by: Cor <prive@corpeters.nl>
| * Added option to provide a custom config file to the lsp. (#460)Cor Peters2021-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Added option to provide a custom config file to the lsp. * Simplified lsp loading routine with anyhow * Moved config to language.toml * Fixed test case * Cargo fmt * Revert now-useless changes * Renamed custom_config to config Co-authored-by: Cor <prive@corpeters.nl>
* | Update word selection/navigation to work with gap indexing.Nathan Vegdahl2021-07-19
| | | | | | | | | | | | Also tweaked some of the existing behavior that seemed inconsistent and/or buggy. It's mostly identical, just a few corner cases are different.
* | Merge branch 'master' into great_line_ending_and_cursor_range_cleanupNathan Vegdahl2021-07-17
|\|