Commit Graph

1292 Commits (e023a78919be31a9d9747d3735dfd29dd6c6605d)

Author SHA1 Message Date
Cole Helbling e023a78919 WIP: show all buffers that couldn't be closed 3 years ago
Cole Helbling 6118486eb2 helix-term: implement buffer completer
In order to implement this completer, the completion function needs to
be able to access the compositor's context (to allow it to get the
list of buffers currently open in the context's editor).
3 years ago
Cole Helbling a1207fd768 helix-term/commands: display buffer id in picker 3 years ago
Blaž Hrastnik d11b652139 Allow static strings in set_status/set_error so API is nicer 3 years ago
Blaž Hrastnik fd0e4b1159 dap: Reduce amount of block_on uses 3 years ago
Gokul Soumya 966fbc5984 Add tree-sitter based function, class navigation 3 years ago
Blaž Hrastnik 1422449537 .. 3 years ago
Blaž Hrastnik eeb9b39857 Fix build on master 3 years ago
Ludwig Stecher 4429993842
Add `PageUp`, `PageDown`, `Ctrl-u`, `Ctrl-d`, `Home`, `End` keyboard 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
3 years ago
Kirawi 23907a063c
use PathBuf::to_string_lossy() instead of to_str() (#1655) 3 years ago
Gokul Soumya 4c424d5ee4
Refactor language config loading (#1658) 3 years ago
Blaž Hrastnik 97d4b2b5fe Mark DAP as experimental 3 years ago
Blaž Hrastnik bd549d8a20 Merge remote-tracking branch 'origin/master' into debug 3 years ago
Cydiater 7083b98a38
postpone clone after found (#1656) 3 years ago
Blaž Hrastnik 1bcb624ae6 Instant is more suitable than SystemTime for spinners 3 years ago
Blaž Hrastnik f88c077f99 Replace tendril with smartstring
Slightly smaller API surface, less dependencies.
3 years ago
Matouš Dzivjak fdb9a1677b
feat(editor): add config for search wrap_around (#1516)
* feat(editor): add config for search wrap_around

Fixes: https://github.com/helix-editor/helix/issues/1489

* Move search settings into separate config

* Disable linter
3 years ago
Gokul Soumya bf773db451 Show infobox with register contents 3 years ago
Gokul Soumya 5995568c1d Prevent multiple code action popups 3 years ago
Gokul Soumya 547c3ecd0c Preselect first item in code action popup menu 3 years ago
Gokul Soumya e90276df0b Replace if let with early return 3 years ago
Blaž Hrastnik 23553bd37c Update dependencies (crossterm 0.23, tree-sitter 0.20.4)
Fixes #677
3 years ago
Blaž Hrastnik e7f5ec5561 fix: There is no such thing as markup.normal, use ui.text 3 years ago
Blaž Hrastnik 6ea477ab60 Don't use block_on in jobs.finish(), we can .await 3 years ago
Blaž Hrastnik d3221b03a2 fix: Only parse git revision, don't use the tag for version
If building from source and the source is contained in a larger
repository, we'd contain the wrong version. It's also easy to
accidentally have a newer tag that would change the version.
3 years ago
Blaž Hrastnik 36b975c4ce ui: menu: Don't allocate scrollbar space if options fit 3 years ago
Blaž Hrastnik f10a06f4de ui: Only render menu scrollbar if it doesn't fit 3 years ago
Blaž Hrastnik 094a0aa3f9 Render code actions as a menu, allow adding padding to popup 3 years ago
Blaž Hrastnik f7f55143a1 Improve code action picker by displaying it inline 3 years ago
Blaž Hrastnik 62561e9d23 Stop collecting highlight_iter events then turning back into iter 3 years ago
Blaž Hrastnik 5aead46f4b Remove some unnecessary clippy tags 3 years ago
Blaž Hrastnik 2a7ae963e1 Automatically commit changes to history if not in insert mode
Fixes #1500
3 years ago
CossonLeo d49e5323f9
Use markup scopes for the Markdown component (#1363) 3 years ago
Benjamin 4044c70eb2
Fix picker won't scroll down when it hits the bottom #1544 (#1567) 3 years ago
Ivan Tham 759b850859
Allow specifying file start position (#445)
Like helix-term/src/commands.rs:3426:15
3 years ago
Blaž Hrastnik e2d2f19fd0
Merge pull request #1154 from sudormrfbin/cursor-shape-new
Change cursor shape on mode change
3 years ago
Blaž Hrastnik add3be8528 Slicing micro-optimization 3 years ago
Blaž Hrastnik 11c3ba9350 Speed up ensure_next_boundary during render
This code:

    let start = ensure_grapheme_boundary_next(text, text.byte_to_char(start));
    let end = ensure_grapheme_boundary_next(text, text.byte_to_char(end));

Would convert byte to char index, but then internally immediately convert back
to byte index, operate on it, then convert it to char index.

This change reduces the amount of time spent in ensure_grapheme_boundary from
29% to 2%.
3 years ago
Blaž Hrastnik 53d881f172 Store theme scopes on the loader, this way theme isn't passed around 3 years ago
Blaž Hrastnik 6728e44490 syntax: Split parsing and highlighting 3 years ago
Michael Davis f453f8724d
change show_subtree command into ':tree-sitter-subtree' typable command (#1524)
* 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'
3 years ago
Michael Davis 392dfa0841
add select_next_sibling and select_prev_sibling commands (#1495)
* 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
3 years ago
Skyler Hawthorne 96d4ca5f73
Dependabot/cargo/pulldown cmark 0.9.1 (#1533)
* build(deps): bump pulldown-cmark from 0.8.0 to 0.9.1

Bumps [pulldown-cmark](https://github.com/raphlinus/pulldown-cmark) from 0.8.0 to 0.9.1.
- [Release notes](https://github.com/raphlinus/pulldown-cmark/releases)
- [Commits](https://github.com/raphlinus/pulldown-cmark/compare/v0.8.0...v0.9.1)

---
updated-dependencies:
- dependency-name: pulldown-cmark
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* cmark 0.9 fixes

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
3 years ago
Blaž Hrastnik e7eab95b94 Update to rust 1.58, fix a bunch of optional lints 3 years ago
Mathis Brossier f5b0821860
Fix panics when resizing (#1408)
* Change buffer.get & buffer.get_mut to return Option, Implement Trait Index & IndexMut to panic

* Prevent FilePicker from drawing outside buffer (rust panics)

* apply suggestion

* add function in_bounds to avoid useless calculations

Co-authored-by: mathis <mathis.brossier@universite-paris-saclay.fr>
3 years ago
WindSoilder 22297d0b40
Add alt-backspace, alt-<, alt->, ctrl-j to insert mode (#1441)
* add alt-backspace keymap to delete word backward

* add more useful keymap

* map to correct command

* add C-j to insert_newline
3 years ago
Matouš Dzivjak 38ca8daa09
fix(commands): run fmt for all documents being closed (#1444)
When writing all documents, fmt wouldn't be run.
Run fmt in close all implementation so that all documents
are formatted if necessary.

Fixes: https://github.com/helix-editor/helix/issues/1442
3 years ago
Michael Davis 64d3e7b705
add show_subtree command for viewing tree-sitter subtree in Popup (#1453)
* add show_subtree command for viewing tree-sitter subtree in Popup

* remove '.slice(..)' from show_subtree command

* name docs and subtree Popups 'hover'
3 years ago
Kevin Sjöberg 3a34036310
Use the correct language ID for JavaScript & TypeScript (#1466)
* Use correct language ID for JavaScript/TypeScript

* Add missing slash

* Only calculate fallback when needed
3 years ago
Mathis Brossier 85cf2648a2
buffer picker allow hsplit / vsplit (#1502) 3 years ago