Commit Graph

3792 Commits (2271c3aed9ccbecefa7b109f060bf5ab77c7c104)
 

Author SHA1 Message Date
Skyler Hawthorne ef8fe5a5ce use system's appropriate line ending 2 years ago
Skyler Hawthorne 28e94fb261 need the full languages config for integration tests 2 years ago
Skyler Hawthorne 4e34ee7d2e don't read from stdin for integration tests 2 years ago
Skyler Hawthorne cb0440be85 use env var for integration test log level 2 years ago
Skyler Hawthorne 652cdda833 use test terminal backend for integration tests 2 years ago
Skyler Hawthorne ed950fcc56 Add more context; Editor::open doesn't need to own path 2 years ago
Skyler Hawthorne 1533f48934 use Results in integration tests for more error context 2 years ago
Skyler Hawthorne 2fbf833630 add integration feature to github tests 2 years ago
Skyler Hawthorne 2386c81ebc use idle timer instead of fixed timeout 2 years ago
Skyler Hawthorne 40120967e9 tests for buffer-close 2 years ago
Skyler Hawthorne 07fc80aece tests for serialized writes 2 years ago
Skyler Hawthorne ee705dcb33 use main application event loop
Use the Application's main event loop to allow LSP, file writes, etc
2 years ago
Skyler Hawthorne 36e5809f63 add test for ensuring the initial cursor on a newly opened file 2 years ago
Skyler Hawthorne 267605d147 reorganize tests into groups 2 years ago
Skyler Hawthorne 84bbe6b8f3 refactor helpers, use new test helpers 2 years ago
Skyler Hawthorne 0f3c10a021 Fix initial selection of Document in new view
When a new View of a Document is created, a default cursor of 0, 0 is
created, and it does not get normalized to a single width cursor until
at least one movement of the cursor happens. This appears to have no
practical negative effect that I could find, but it makes tests difficult
to work with, since the initial selection is not what you expect it to be.

This changes the initial selection of a new View to be the width of the
first grapheme in the text.
2 years ago
Skyler Hawthorne 502d3290fb improve test harness
* 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
2 years ago
Blaž Hrastnik 308cab3e5c Integration testing harness 2 years ago
Blaž Hrastnik adb6cd5376 Simplify handle_terminal_events signature 2 years ago
Skyler Hawthorne 0623a72599 move config parsing back into main 2 years ago
A-Walrus ad15e7b5e8
Add "<<=" operator to Rust syntax highlighting (#2805) 2 years ago
Michael Davis 45ce1ebdb6
embed jsonrpc types from jsonrpc-core crate (#2801)
We should not depend on jsonrpc-core anymore:

* The project just announced it's no longer actively maintained[^1],
  preferring their new implementation in `jsonrpsee`.
* The types are too strict: we would benefit from removing some
  `#[serde(deny_unknown_fields)]` annotations to allow language
  servers that disrespect the spec[^2].
* We don't use much of the project. Just the types out of core.
  These are easy to embed directly into the `helix-lsp` crate.

[^1]: https://github.com/paritytech/jsonrpc/pull/674
[^2]: https://github.com/helix-editor/helix/issues/2786
2 years ago
Clay b13e534b92
HEEx: upgrade version and support new special_attribute node (#2800) 2 years ago
Henry 15807d5f27
simplify some keymap key names follow up tests (#2694) 2 years ago
Grenier Célestin 33ea3eff05
Update theme base16_default (`ui.menu`) (#2794) 2 years ago
nosa 21d12e1487
Restore section spacing in tutor. (#2791) 2 years ago
Gygaxis Vainhardt debd2405d9
views -> buffers in write-all (#2788) 2 years ago
Axot 4d604d3b50
Add clojure language support (#2780)
Co-authored-by: Mateusz Ledwoń <mateusz.ledwon@iteo.com>
2 years ago
nosa 3b1866f959
update tutor (#2716)
* update tutor

* Capitalize "command mode ".

* Update runtime/tutor.txt

Editing mistake.

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>

Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Bjorn Ove Hay Andersen 794576a5b0
Update auto-pairs and idle-timeout when the config is reloaded (#2736) 2 years ago
Tennix 11dadab371
Add migrate from Vim wiki link (#2781) 2 years ago
Frojdholm 402f285ba5
Improve markdown list rendering (#2687)
* Cleanup old commented code

* Implement line breaks in markdown rendering

* Implement markdown nested, numbered and multiparagraph lists
2 years ago
Roland Kovacs c2cc2037b5
Better handling of symlinks (#2718)
- Add file-picker.follow-symlinks configuration option (default is true), this
  also controls if filename and directory completers follow symlinks.

- Update FilePicker to set editor error if opening a file fails, instead of
  panicing.

Fix #1548
Fix #2246
2 years ago
Anton Romanov 7983c71752
Introduce storage_class highlight scope (#2731) 2 years ago
Michael Davis cdeab337cd
simplify fallback for selected line-number theming (#2768) 2 years ago
Ryang Sohn 3bd5545577
Add a check to prevent re-selecting same range (#2760) 2 years ago
Kappa d7bd441675
Cleanup for runtime/tutor.txt (#2590) 2 years ago
Bjorn Ove Hay Andersen 3b2d4031f1
Clarified the text in chapter 3 of the tutor (#2735)
* Clarified the text in chapter 3 of the tutor (#2725)

* Adjusted section 3.1 to better show how C works
2 years ago
Jonas Tepe a766b32ed1 Expand chapter one recap of tutor
This add the missing variant of entering insert mode
to the chapter 1 recap section.
2 years ago
Ivan 0bc7259672
add prisma tree-sitter and lsp support (#2703)
Co-authored-by: Michael Davis <mcarsondavis@gmail.com>
2 years ago
Gokul Soumya e9283b20b4
Add docstring for language_server!() macro (#2750) 2 years ago
Gokul Soumya 0b8a00ac96
Refactor textobject node capture (#2741) 3 years ago
Daniel Hines 9b9c3e5ae2
add rust-analyzer to shell environment (#2739) 3 years ago
Clay f37ffaa3a1
elixirLS disable dialyzer by default (#2710)
Not all Elixir projects use dialyzer and it can cause the editor
to slow down quite a bit on large projects if the PLT is not built.

See https://github.com/elixir-lsp/elixir-ls#dialyzer-integration=
3 years ago
Danny 567e71fbbc
fix spelling of catppuccin theme (#2713) 3 years ago
Frojdholm e0532771cc
Do not add extra line breaks in markdown lists (#2689) 3 years ago
Michael Davis 4a27e2d938 capture rust closures as function textobjects
Closures like

    iter.map(|a| a + 1)

Are sort-of functions, so `]f` or `maf` or `mif` can apply to them
as well as named function definitions.
3 years ago
Michael Davis f7a3d35752 add textobject queries for gleam 3 years ago
Michael Davis bcafdf404f add textobject queries for elixir 3 years ago
Michael Davis 7a9147489e add textobject queries for erlang 3 years ago