Commit Graph

223 Commits

Author SHA1 Message Date
Michael Davis
4836bb38d3 add tree-sitter-heex
HEEx is a templating engine on top of Elixir's EEx templating
language specific to HTML that is included in Phoenix.LiveView
(though I think the plan is to eventually include it in base
Phoenix). It's a superset of EEx with some additional features
like components and slots.

The injections don't work perfectly because the Elixir grammar is
newline sensitive (the _terminator rule). See
https://github.com/elixir-lang/tree-sitter-elixir/issues/24
for more information.
2022-04-13 14:28:51 +09:00
Michael Davis
9d095e0fdc add tree-sitter-eex
EEx is an templating language for Elixir. Since the incremental
parsing refactor we can used combined injections which allows us
to add EEx support.
2022-04-13 14:28:51 +09:00
Michael Davis
4ac94a5c43 remove error highlighting for tree-sitter-elixir
This will become more important with the HEEx grammar being added.
Error highlighting with the Elixir grammar is a bit jumpy because
in some scenarios, a bit of missing syntax can force tree-sitter to
give up on error recovery and mark the entire tree as an error.
This ends up looking bad when editing. We don't typically highlight
error nodes so I'm inclined to leave it out of the highlights here.
2022-04-13 14:28:51 +09:00
Aral Balkan
7cb6e07ba0
Improve Dracula Theme selections (#2075) (#2077) 2022-04-11 09:21:41 -05:00
Michael Davis
494306ad7a
add tree-sitter-embedded-template (erb & ejs) (#2055)
After the incremental parsing rewrite for injections (which was released
in 22.03 https://helix-editor.com/news/release-22-03-highlights/#incremental-injection-parsing-rewrite),
we can now do combined injections which lets us pull in some templating
grammars. The most notable of those is embedded-template - a pretty
straightforward grammar that covers ERB and EJS.

The grammar and highlights queries are shared between the two but they have
different injections.
2022-04-10 08:23:06 +09:00
Sam Sartor
209ec4468b
Add dracula at night theme (#2008) 2022-04-08 15:53:12 -05:00
Aaron Housh
9caf7c0d5a
Add swift language (#2033) 2022-04-08 13:10:37 -05:00
Kirawi
2d4f94eb27
[dark_plus] update tag and ui.menu.selected colors (#2014) 2022-04-07 21:08:16 -05:00
Matthew Toohey
31c468ab95
add languages r and rmarkdown (#1998)
* add languages `r` and `rmarkdown`

* r: fix highlights

* rmarkdown: add eof in queries

* rmarkdown: update lang-support.md

* r: fix highlight query precedence
2022-04-08 09:30:44 +09:00
Kirawi
b333186721
[dark_plus] update markup colors (#1989) 2022-04-07 00:31:28 +09:00
bootradev
0eb87996a8
add boo_berry theme (#1962) 2022-04-06 01:06:51 +09:00
VuiMuich
eb84d9493c
add language ron (#1925) 2022-04-05 07:39:22 -05:00
Kirawi
3fc4ea2938
[dark_plus] remove ui.text background (#1950) 2022-04-03 17:59:02 -05:00
Michael Davis
ffdc2f1793
separate JSX queries from javascript (#1921)
It looks like a24fb17b2a (and
855e438f55) broke the typescript
highlights because typescript

    ; inherits: javascript

but it doesn't have those named nodes in its grammar.

So instead we can separate out JSX into its own language and copy
over everything from javascript and supplement it with the new
JSX highlights. Luckily there isn't too much duplication, just the
language configuration parts - we can re-use the parser with the
languages.toml `grammar` key and most of the queries with `inherits`.
2022-04-02 10:07:35 +09:00
joezak11
deb7ee6595
Update bash tree sitter (#1917) 2022-04-01 08:48:39 -05:00
Blaž Hrastnik
855e438f55
jsx: Add special highlighting to component names 2022-04-01 17:18:44 +09:00
Blaž Hrastnik
a24fb17b2a
Add JSX highlighting queries 2022-04-01 17:14:25 +09:00
Triton171
58758fee61
Indentation rework (#1562)
* WIP: Rework indentation system

* Add ComplexNode for context-aware indentation (including a proof of concept for assignment statements in rust)

* Add switch statements to Go indents.toml (fixes the second half of issue #1523)
Remove commented-out code

* Migrate all existing indentation queries.
Add more options to ComplexNode and use them to improve C/C++ indentation.

* Add comments & replace Option<Vec<_>> with Vec<_>

* Add more detailed documentation for tree-sitter indentation

* Improve code style in indent.rs

* Use tree-sitter queries for indentation instead of TOML config.
Migrate existing indent queries.

* Add documentation for the new indent queries.
Change xtask docgen to look for indents.scm instead of indents.toml

* Improve code style in indent.rs.
Fix an issue with the rust indent query.

* Move indentation test sources to separate files.
Add `#not-kind-eq?`, `#same-line?` and `#not-same-line` custom predicates.
Improve the rust and c indent queries.

* Fix indent test.
Improve rust indent queries.

* Move indentation tests to integration test folder.

* Improve code style in indent.rs.
Reuse tree-sitter cursors for indentation queries.

* Migrate HCL indent query

* Replace custom loading in indent tests with a designated languages.toml

* Update indent query file name for --health command.

* Fix single-space formatting in indent queries.

* Add explanation for unwrapping.

Co-authored-by: Triton171 <triton0171@gmail.com>
2022-03-31 00:08:07 +09:00
Michael Davis
7cd6050235 add tree-sitter-gleam 2022-03-30 13:24:53 +09:00
Michael Davis
1819478940 update tree-sitter-elixir
news:

- tree-sitter-elixir now powers Elixir syntax highlighting on github.com
- GitHub now supports code-navigation for Elixir repos via
  tree-sitter-elixir

changes:

- modules now use the `@module` highlight, which was added upstream to
  tree-sitter
    - it seems appropriate to use `@namespace` to follow helix convention
- added nullary range operator (e.g. `Enum.to_list(..) == []`), a new syntax
  for elixir 1.14
- a fix for stab clause nodes mis-highlighting when the right hand side of
  the stab clause contained multiple simple expressions
2022-03-30 13:24:53 +09:00
Michael Davis
e2a50711d5 update tree-sitter-erlang
changes:

- typed fields within records which do not declare a default
  value are now correctly highlighted as record fields
- the EEP49 'maybe' form is now parsed
- fixes for highlights for 'begin' and 'after' tokens
2022-03-30 13:24:53 +09:00
Narazaki Shuji
309f2c2c8e
Revise the color for ui.cursor.match (#1862)
- bogster.toml
 - solarized_dark.toml
 - solarized_light.toml
 - spacebones_light.toml
2022-03-25 15:57:25 +09:00
Jared Ramirez
22ba668fad
Fix Rescript hightlights query (#1863) 2022-03-23 14:03:58 -05:00
Slin Lee
3e78b8fdad
Add syntax highlighting for Solidity (#1854) 2022-03-22 11:38:49 -05:00
zetashift
7eb013c6fb
Initial basic Org markup support thanks to tree-sitter-org (#1845) 2022-03-20 17:14:30 -05:00
Michael Davis
cfd992b151
update tree-sitter-git-commit (#1838)
changes:

- any text following a (scissors) is now contained in one (message)
    - this vastly improves performance on large verbose commits:
      no more slowness on huge commits
2022-03-19 14:43:13 +09:00
Philipp Mildenberger
6fdf5d0920
C# highlighting improvements (#1795) 2022-03-12 12:06:56 -06:00
Rohan Jain
cf8f59ddd0
theme: Use distinct colors for match pair and cursor for gruvbox (#1791) 2022-03-11 17:49:21 +05:30
Daniel S Poulin
9bfb0caf1b
Add comment textobject for surround selection and navigation (#1605) 2022-03-06 10:54:24 +05:30
chunghha
7633c5acd3
chore(theme): apply renamed infobox theme scopes for rose_pine themes (#1754) 2022-03-05 22:52:19 +05:30
Gokul Soumya
c484b08923
Rename infobox theme scopes (#1741)
This makes it play nicely with https://github.com/helix-editor/helix/pull/1714
2022-03-04 09:31:51 +09:00
chunghha
f9ad1cafdc
chore(theme): fix "ui.selection" for rose_pine themes (#1716) 2022-02-28 17:56:03 +09:00
Gregory Oakes
c1251aecc7
Fix duplicate "ui.help" key. (#1713) 2022-02-27 15:39:44 +09:00
Blaž Hrastnik
6a6a9ab2b3
fix: theme: bogster: Only primary selection had a cursor style 2022-02-25 18:04:43 +09:00
Michael Daffin
93ec42d06e
Add support for HCL language (#1705)
Queries based on the neovims ones: https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries/hcl and modified for helix support.
2022-02-25 17:48:20 +09:00
chunghha
4526216139
chore(theme): update markup styles for rose_pine themes (#1706) 2022-02-24 09:08:20 +08:00
Michael Daffin
f83843ceba
Add kotlin language (#1689)
* Add kotlin language

Queries taken from https://github.com/nvim-treesitter/nvim-treesitter/blob/master/queries/kotlin seem to work well enough for my needs though I don't use kotlin heavily.

* Update lang-support doc

* Updates the kotlin highlight query to use helixs scopes

* Updates the queries from PR feedback

* Adds 'shallow = true' to gitmodules

* Removes kotlin locals.scm

* Remove blank line

Co-authored-by: Ivan Tham <pickfire@riseup.net>

Co-authored-by: Ivan Tham <pickfire@riseup.net>
2022-02-23 23:25:44 +09:00
Alex
865881ba19
update markup styles for everforest theme (#1687) 2022-02-21 17:37:02 +09:00
Alex
d5ba0b5162
Allow separate styles for markup headings (#1618)
* update markdown highlighting to use separate heading themes

* remove markdown theme scopes in ui
2022-02-21 16:45:48 +09:00
David Crespo
a629343476
Fix hover menu item text color in base16 themes (#1668)
* fix hover menu item text in base16 dark

* same ix for base16_default_light and base16_terminal
2022-02-15 14:21:52 +09:00
Michael Davis
3a83a764e3
add tree-sitter-erlang (#1657) 2022-02-15 10:14:02 +09:00
Jared Ramirez
f5b95beef6
feat(languages): rescript (#1616)
* Add rescript language support

* cargo xtask docgen

* Add textobjects & file line ending

* Fix text objects & rerun docgen

* Fix textobjects queries
2022-02-06 14:24:01 +09:00
Daniel S Poulin
d6b6ad879e
epocsquadron/add tree sitter twig (#1602)
* Add tree-sitter-twig grammer and highlights

The gammar itself is quite basic, but is much better than nothing
for working with real files consisting mostly of html.

* Docgen for newly added grammar
2022-02-01 12:35:07 +09:00
chunghha
4c996f43df
chore(theme): fix rose_pine/rose_pine_dawn themes' popup bg color (#1606) 2022-01-31 16:03:44 +09:00
Daniel S Poulin
e2833b5853
Add textobjects queries for php (#1601)
* Add textobjects queries for php

* Missing EOL fix

* Update generated docs after adding textobjects to php
2022-01-30 11:04:36 +09:00
Michael Davis
7bce91556a
add tree-sitter-iex (#1576)
* add tree-sitter-iex

* run docgen task

* fix url for iex submodule
2022-01-25 15:50:34 +09:00
VuiMuich
1bcff796e5
[theme] Serika light and dark (#1566)
* add theme `serika` in light and dark variant

* add `markup.*`s
2022-01-24 23:16:05 +08:00
NNB
83bde1004d
Add markup support (#1525)
* Add markup support for all Base16 themes

* Fix rose_pine `markup.link.text` attribute misname

* Add basic default markup support for all themes

* Fix cursor change color on Base16 terminal and default

* Remove old markup monokai_pro support and fix Onedark `markup.link.text` attribute misname

* Remove old markup dracula support
2022-01-23 11:18:50 +09:00
Rohan Jain
1c747674b6
Add tag to gruvbox theme (#1555)
Missed in the commit 943fca332e.
2022-01-23 00:33:43 +09:00
Sebastian Zivota
5c1a06d28e
dracula theme: add markup support (#1554) 2022-01-23 00:32:41 +09:00