| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Currently we always lower-case the grammar name when loading it. While it
is somewhat of an convention to name tree-sitter grammars in lowercase
there is no rule to enforce it.
This patch removes the lower-casing to allow all possible grammar names.
Signed-off-by: Christian Speich <cspeich@emlix.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New look:
```
Fetching 102 grammars
98 up to date git grammars
4 updated grammars
bash now on 275effdfc0edce774acf7d481f9ea195c6c403cd
beancount now on 4cbd1f09cd07c1f1fabf867c2cf354f9da53cc4c
c now on f05e279aedde06a25801c3f2b2cc8ac17fac52ae
c-sharp now on 53a65a908167d6556e1fcdb67f1ee62aac101dda
```
```
Building 102 grammars
100 grammars already built
2 grammars built now
["bash", "rust"]
```
|
| |
|
|
|
|
|
| |
Certain targets, such as `aarch64-apple-*`, require additional compiler
flags to cross-compile for the intended target.
|
| |
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
| |
* add local configuration
* move config loading to Application::new
* simplify find_root_impl
|
| |
|
| |
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
The old flags were a bit long. --grammar is also aliased to -g to make
it even easier.
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
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.
|