aboutsummaryrefslogtreecommitdiff
path: root/helix-loader/src
Commit message (Collapse)AuthorAge
* improve test harnessSkyler Hawthorne2022-06-19
| | | | | | | * Use new macro syntax for encoding sequences of keys * Make convenience helpers for common test pattern * Use indoc for inline indented raw strings * Add feature flag for integration testing to disable rendering
* Use a minimal binary to fetch grammar sources in release CI (#2557)Michael Davis2022-06-05
| | | | | | | | | | | | This is an optimization for the release CI. The release CI can take a while since it compiles release builds for all operating systems. We cut down on duplicate work and overall time by fetching tree-sitter grammar repositories and then using those repositories in all later steps. Previously we built all of helix just to run helix_loader::grammar::fetch_grammars() which is wasteful on time. With this change we only build the helix-loader crate.
* Ignore SendErrors when handling grammars (#2641)Frojdholm2022-06-02
| | | | | | | When handling grammars, fetching and building is done in a thread pool. Results are communicated over channels and the receiving channel is closed on first error. This causes subsequent sends to fail causing a mess in stderr. This ignores all SendErrors causing only the first error to be printed.
* illumos linker doesn't currently have -z relro (#2602)Michael Zeller2022-05-29
|
* mention the C++ compiler in the grammar build failure message (#2597)Michael Davis2022-05-29
| | | | | | | Earlier in the builder we enable C++ (`.cpp(true)`) but only mention the C compiler in the build failure message. Some grammars that have C++ external scanners can provoke build failures in this step if a C++ compiler isn't installed, so mentioning it in the error message should help out debugging.
* helix-loader + helix-core now compile for WASMBlaž Hrastnik2022-05-01
|
* Only merge top-level array when merging `languages.toml` (#2215)Michael Davis2022-04-23
| | | | | | | * Revert "Revert "override nested arrays when merging TOML (#2145)"" This reverts commit 35d2693630a4ec29a654704bc4be47badb8d6070. * flip top-level table merging flag
* Revert "override nested arrays when merging TOML (#2145)"Blaž Hrastnik2022-04-20
| | | | | | Looks like there's some follow-up issues This reverts commit c8cfd0b1a0da071618a9efc71ac5735d6147a0ca.
* override nested arrays when merging TOML (#2145)Michael Davis2022-04-20
| | | | | | | | We merge the elements of arrays for the top-level array. For `languages.toml`, this is the array of languages. For any nested arrays, we simply take the `right` array as-is instead of using the union of `left` and `right`. closes #1000
* Fixing (in two ways) a small typo (#2156)Ben Lee-Cohen2022-04-18
|
* Add support for local language configuration (#1249)Kirawi2022-04-18
| | | | | | | * add local configuration * move config loading to Application::new * simplify find_root_impl
* remove hardcoded '/' from grammar source path (#1986)Michael Davis2022-04-06
|
* Avoid using the format ident Rust feature (#1881)Marcin Puc2022-03-30
|
* fix enum definition for use-grammars selections (#1818)Michael Davis2022-03-16
| | | | | | See https://github.com/helix-editor/helix/discussions/1817 It looks like we need the enums to have the `only`/`except` fields in order to deserialize correctly.
* remove stray 'println!' from grammar building function (#1785)Michael Davis2022-03-11
|
* rename '--fetch/build-grammars' flags into '--grammar fetch/build'Michael Davis2022-03-10
| | | | | The old flags were a bit long. --grammar is also aliased to -g to make it even easier.
* only fetch git-sourced grammarsMichael Davis2022-03-10
| | | | | | This is a bit of a micro-optimization: in the current setup we waste a thread in the pool for a local grammar only to println! a message saying we're skipping fetching because it's a local grammar.
* shallow cloneSkyler Hawthorne2022-03-10
|
* fix context in errorSkyler Hawthorne2022-03-10
|
* 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.