aboutsummaryrefslogtreecommitdiff
path: root/helix-core/src/lib.rs
Commit message (Collapse)AuthorAge
* Add (prev) paragraph motionIvan Tham2022-04-02
| | | | | | Also improved testing facility. Fix #1580
* migrate grammar fetching/building code into helix-loader crateMichael Davis2022-03-10
| | | | | | | | | This is a rather large refactor that moves most of the code for loading, fetching, and building grammars into a new helix-loader module. This works well with the [[grammars]] syntax for languages.toml defined earlier: we only have to depend on the types for GrammarConfiguration in helix-loader and can leave all the [[language]] entries for helix-core.
* Add --health command for troubleshooting (#1669)Gokul Soumya2022-03-08
| | | | | | | | | | | | | | | * Move runtime file location definitions to core * Add basic --health command * Add language specific --health * Show summary for all langs with bare --health * Use TsFeature from xtask for --health * cargo fmt Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* Refactor language config loading (#1658)Gokul Soumya2022-02-14
|
* Merge remote-tracking branch 'origin/master' into debugBlaž Hrastnik2022-02-13
|\
| * Replace tendril with smartstringBlaž Hrastnik2022-02-10
| | | | | | | | Slightly smaller API surface, less dependencies.
| * Detect workspace root using language markers (#1370)Alexis Mousset2021-12-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Detect workspace root using language markers * Avoid allocating root_markers * Update helix-core/src/lib.rs Co-authored-by: Blaž Hrastnik <blaz@mxxn.io> * Update helix-core/src/lib.rs Co-authored-by: Kirawi <67773714+kirawi@users.noreply.github.com> Co-authored-by: Blaž Hrastnik <blaz@mxxn.io> Co-authored-by: Kirawi <67773714+kirawi@users.noreply.github.com>
| * feat(ui): file encoding in statusline (#1355)Matouš Dzivjak2021-12-25
| | | | | | | | | | | | | | | | | | | | | | * feat(ui): file encoding in statusline Display file encoding in statusline if the encoding isn't UTF-8. * Re-export encoding_rs from core From there it can be imported by other mods that rely on it.
| * Open files with spaces in filename, allow opening multiple files (#1231)ath32021-12-12
| |
| * Add `Increment` traitJason Rodney Hansen2021-12-05
| |
| * Add support for dates for increment/decrementJason Rodney Hansen2021-12-05
| |
| * Fix typo on docs (#1201)George Rodrigues2021-12-01
| |
* | Merge remote-tracking branch 'origin/master' into debugBlaž Hrastnik2021-11-21
|\|
| * 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
| * Revert "fix(core): stop merging array toml config values (#1004)"Blaž Hrastnik2021-11-09
| | | | | | | | | | | | It breaks languages.toml merging This reverts commit 4304b52ff86f829115cb89b20160b4f80dbb3dbd.
| * fix(core): stop merging array toml config values (#1004)Carter Snook2021-11-08
| |
* | Merge branch 'master' into debugBlaž Hrastnik2021-11-06
|\|
| * Ensure coords in screen depends on char width (#885)Ivan Tham2021-11-03
| | | | | | | | | | The issue affected files with lots of tabs at the start as well. Fix #840
| * Updated tree-sitter query scopes (#896)Kirawi2021-11-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * updated theme scopes variable.property -> variable.field property -> variable.field * updated theme scopes * update book and themes updated book and themes to reflect scope changes * wip * update more queries * update dark_plus.toml
* | dap: use smallvec! macroBlaž Hrastnik2021-08-29
|/
* 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
* Move path util functions from helix-term to helix-core (#650)Kirawi2021-08-25
|
* Remove embed_runtime featureBlaž Hrastnik2021-07-30
| | | | It's no longer practical to maintain. Closes #451
* Add object selection (textobjects) (#385)Gokul Soumya2021-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add textobjects for word * Add textobjects for surround characters * Apply clippy lints * Remove ThisWordPrevBound in favor of PrevWordEnd It's the same as PrevWordEnd except for taking the current char into account, so use a "flag" to capture that usecase * Add tests for PrevWordEnd movement * Remove ThisWord* movements They did not preserve anchor positions and were only used for textobject boundary search anyway so replace them with simple position finding functions * Rewrite tests of word textobject * Add tests for surround textobject * Add textobject docs * Refactor textobject word position functions * Apply clippy lints on textobject * Fix overflow error with textobjects
* `:reload` (#374)Kirawi2021-07-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * reloading functionality * fn with_newline_eof() * fmt * wip * wip * wip * wip * moved to core, added simd feature for encoding_rs * wip * rm * .gitignore * wip * local wip * wip * wip * no features * wip * nit * remove simd * doc * clippy * clippy * address comments * add indentation & line ending change
* Remove #[allow(unused)] from helix-core, and fix unused imports.Nathan Vegdahl2021-07-02
| | | | Still a bunch more warnings to fix in core, but it's a start.
* Handle non-UTF8 filesShafkath Shuhan2021-06-23
|
* Add surround keybindsGokul Soumya2021-06-22
|
* Add function to get the line ending of a str slice.Nathan Vegdahl2021-06-21
| | | | This is needed in some places.
* Merge branch 'master' of github.com:helix-editor/helix into ↵Nathan Vegdahl2021-06-20
|\ | | | | | | | | | | | | line_ending_detection Rebasing was making me manually fix conflicts on every commit, so merging instead.
| * Re-export unicode crates from helix_coreBlaž Hrastnik2021-06-20
| |
| * Add ability to change theme on editorwojciechkepka2021-06-19
| |
* | Work on moving code over to LineEnding instead of assuming '\n'.Nathan Vegdahl2021-06-20
| | | | | | | | Also some general cleanup and some minor fixes along the way.
* | Misc fixes and clean up of line ending detect code.Nathan Vegdahl2021-06-20
| |
* | added the line_end helper functionJan Hrastnik2021-06-20
| |
* | Merge remote-tracking branch 'origin/master' into line_ending_detectionJan Hrastnik2021-06-19
|\|
| * 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`
* | ran cargo fmtJan Hrastnik2021-06-19
| |
* | added get_line_ending from pr commentJan Hrastnik2021-06-19
| |
* | trying out line ending helper functions in commands.rsJan Hrastnik2021-06-16
| |
* | added some tests and a line_ending helper function in document.rsJan Hrastnik2021-06-16
| |
* | added more changes from pr review for line_ending_detectionJan Hrastnik2021-06-16
| |
* | resolved conflict in rebaseJan Hrastnik2021-06-16
| |
* | ran cargo clippy and cargo fmtJan Hrastnik2021-06-16
| |
* | rebase on branch line_ending_detectionJan Hrastnik2021-06-16
|/
* 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.
* Add ctrl-w for promptIvan Tham2021-06-14
|
* Use `runtime` dir when defaulting to executable locationWojciech Kępka2021-06-12
|
* Make `runtime_dir` privateWojciech Kępka2021-06-12
|
* Add more ways to detect runtime directoryWojciech Kępka2021-06-12
|