| Commit message (Collapse) | Author | Age |
|
|
|
| |
(#1719)
|
|
|
| |
Queries based on the neovims ones: https://github.com/nvim-treesitter/nvim-treesitter/tree/master/queries/hcl and modified for helix support.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* impl auto pairs config
Implements configuration for which pairs of tokens get auto completed.
In order to help with this, the logic for when *not* to auto complete
has been generalized from a specific hardcoded list of characters to
simply testing if the next/prev char is alphanumeric.
It is possible to configure a global list of pairs as well as at the
language level. The language config will take precedence over the
global config.
* rename AutoPair -> Pair
* clean up insert_char command
* remove Rc
* remove some explicit cloning with another impl
* fix lint
* review comments
* global auto-pairs = false takes precedence over language settings
* make clippy happy
* print out editor config on startup
* move auto pairs accessor into Document
* rearrange auto pair doc comment
* use pattern in Froms
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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>
|
|
|
|
|
| |
* update markdown highlighting to use separate heading themes
* remove markdown theme scopes in ui
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
shortcuts to file picker (#1612)
* Add `PageUp`, `PageDown`, `Ctrl-u`, `Ctrl-d`, `Home`, `End` keyboard shortcuts to file picker
* Refactor file picker paging logic
* change key mapping
* Add overlay component
* Use closure instead of margin to calculate size
* Don't wrap file picker in `Overlay` automatically
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* Add rescript language support
* cargo xtask docgen
* Add textobjects & file line ending
* Fix text objects & rerun docgen
* Fix textobjects queries
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
|
|
| |
* Add textobjects queries for php
* Missing EOL fix
* Update generated docs after adding textobjects to php
|
|
|
|
|
|
|
| |
* feat(helix-view): dynamic line numbers
* docs: describe editor.line-number in more detail
* Make dynamic numbers the default behavior of `relative`
|
|
|
|
|
|
|
| |
* add tree-sitter-iex
* run docgen task
* fix url for iex submodule
|
| |
|
|\
| |
| | |
Change cursor shape on mode change
|
| |\ |
|
| |\ \ |
|
| | | | |
|
| |\ \ \ |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fixes #323. Due to terminal limitations we can only
change the shape of the primary cursor.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
After the changes to upgrade and reenable tree-sitter-haskell #1417
for the purpose of enabling Haskell syntax highlighting #1384, we
might as well take the final step.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* docs: Fix typo in book
* Update book/src/usage.md
Co-authored-by: Eric Crosson <EricCrosson@users.noreply.github.com>
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
Co-authored-by: Eric Crosson <EricCrosson@users.noreply.github.com>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* Add Graphql language support
* Fix docs gen
* Add JS Graphql injection query
* Updates based on PR feedback
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* add default keymap for show_subtree command
* remove space+t keymap
* add a typable command ':show-subtree'
* generate documentation for ':show-subtree'
* remove non-typable show_subtree command
* ':show-subtree'->':tree-sitter-subtree'
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* add select_next_sibling and select_prev_sibling commands
* refactor objects to use higher order functions
* address clippy feedback
* move selection cloning into commands
* add default keybindings under left/right brackets
* use [+t,]+t for selecting sibling syntax nodes
* setup Alt-{j,k,h,l} default keymaps for syntax selection commands
* reduce boilerplate of select_next/prev_sibling in commands
* import tree-sitter Node type in commands
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* Add Elm language support
* Fix docs gen
* Updates based on PR feedback
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* Add experimental tree-sitter-lean
* Run docgen
* Copy over the queries from lean.nvim
* Update .gitmodules
Co-authored-by: Ivan Tham <pickfire@riseup.net>
* Update lean highlights and run docgen
* Update runtime/queries/lean/injections.scm
Co-authored-by: Michael Davis <michael.davis@nfiindustries.com>
* Lean: Move variable matcher to bottom
* Update runtime/queries/lean/locals.scm
Co-authored-by: Michael Davis <michael.davis@nfiindustries.com>
Co-authored-by: Ivan Tham <pickfire@riseup.net>
Co-authored-by: Michael Davis <michael.davis@nfiindustries.com>
|
| | | | | |
|
| | | | | |
|
| |_|_|/
|/| | |
| | | |
| | | |
| | | | |
* add tree-sitter-git-config
* add todo comment for improving filetype check
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
As identified in [this GitHub comment](https://github.com/helix-editor/helix/pull/1433#discussion_r777786140)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This commit adds syntax highlighting for GNU Make[^1] makefiles
via tree-sitter-make[^2].
[^1]: https://www.gnu.org/software/make/
[^2]: https://github.com/alemuller/tree-sitter-make
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
* Add default language server for JavaScript
* Update lang support documentation
|
| | | |
| | | |
| | | |
| | | | |
The specifics of configuring themes has caused some confusion. Hopefully this will clarify things a little.
|
| |_|/
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* add tree-sitter-regex
* adapt regex highlights from upstream
* inject regex into elixir sigil_r/2 and sigil_R/2
* generate lang-support docs
* capture interesting nodes in character-ranges
* make $.character_class captures more consistent
* fix fallthrough behavior for character classes
* capture pattern characters as 'string'
* use latest tree-sitter-regex
* set elixir regex injections as combined
* add link to upstream queries
* inject regex in rust into 'Regex::new' raw string literals
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* feat(commands): shrink_selection
Add `shrink_selection` command that can be used to shrink
previously expanded selection.
To make `shrink_selection` work it was necessary to add
selection history to the Document since we want to shrink
the selection towards the syntax tree node that was initially
selected.
Selection history is cleared any time the user changes
selection other way than by `expand_selection`. This ensures
that we don't get some funky edge cases when user calls
`shrink_selection`.
Related: https://github.com/helix-editor/helix/discussions/1328
* Refactor shrink_selection, move history to view
* Remove useless comment
* Add default key mapping for extend&shrink selection
* Rework contains_selection method
* Shrink selection without expand selects first child
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Indentation of single line statements doesn't work, i.e.
for (;;)<hit enter>
leads to
for(;;)
<cursor here>
Only blocks with curly braces are indented.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Add injection regex for more languages
To support embedding them in other languages like markdown.
* Add llvm-mir highlighting
LLVM Machine IR is dumped as yaml files that can embed LLVM IR and
Machine IR.
To support this, add a llvm-mir-yaml language that uses the yaml
parser, but uses different injections to highlight IR and MIR.
* Update submodule with fixed multiline comments
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
|
| | |
| | |
| | |
| | |
| | | |
* Add `:cquit!` command and prevent `:cquit` from ignoring unsaved changes
* `cargo xtask docgen`
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add a tree-sitter grammar and highlights for TableGen files.
TableGen and its grammar are described here:
https://llvm.org/docs/TableGen/index.html
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* add submodule on tree-sitter-rebase, add to languages
* add basic highlights query
* inject bash in execute statements
* update tree-sitter-rebase
* tree-sitter-rebase->tree-sitter-git-rebase
* get injection working with tree-sitter-git-commit
* set scope under source.gitrebase
* unset include-children on commit message injections
* Revert "unset include-children on commit message injections"
This reverts commit 2ecee155ea8e229651920b291062c2ee84b47944.
* fix generated language docs
* use rebase_command scopes from tree-sitter-git-commit
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* add submodule on tree-sitter-git-diff
* add git-diff highlights
* inject git-diff into git-commit
* update tree-sitter-git-commit with fix for bad diff case
* add git-diff to language support docs
* include-children in diff injections
This ensures that children nodes of $.message are included in the
injection, such as $.user or issue/pr numbers. Without this change,
diffs containing '#' or '@' characters can trip up the injection and
be parsed separately.
See https://github.com/helix-editor/helix/pull/1373#issuecomment-1001215629
* set diff language's scope as source.diff
|