Commit Graph

387 Commits (3ace581191e9c23aae23d7aabacd29c6b8ed7f65)

Author SHA1 Message Date
Blaž Hrastnik f2c79e245b Allow switching views back to scratch buffers. 4 years ago
Blaž Hrastnik 7c915dc065 Add the :new command, don't crash if saving without filename. 4 years ago
Blaž Hrastnik f8844c6811 Implement pair expansion when pressing new line between bracket pairs.
From:
{|}

To:
{
    |
}
4 years ago
Blaž Hrastnik fd4fd12fa3 clippy lint 4 years ago
Blaž Hrastnik ba97005495 Work around the rest of the blocking issues. 4 years ago
Blaž Hrastnik d00414f81a Start moving more LSP calls into callbacks/futures without capturing self 4 years ago
Blaž Hrastnik 1ad0581ddd Eliminate a few more futures dependencies. 4 years ago
Blaž Hrastnik 355ad3cb82 Tokio migration. 4 years ago
Blaž Hrastnik 0e5308bce1 Need to allow this lint, the Hook signature requires Option<>. 4 years ago
Blaž Hrastnik b6a22e955b Closer to a full flake build via naersk.
Blocked on https://github.com/NixOS/nix/issues/4423, build doesn't see
submodules.
4 years ago
Blaž Hrastnik 3038c2ef6d ui: Draft for completion doc preview. 4 years ago
Blaž Hrastnik ab4decfd6d Make post hooks trigger even when a different handler processes input.
The default handler is now simply a fallback.
4 years ago
Blaž Hrastnik d559199cec Stop crashing if last view is closed. 4 years ago
Blaž Hrastnik 28c167d71d doc: Be smarter about calculating modified status.
This way edit -> undo will properly show up as unmodified.
4 years ago
Blaž Hrastnik 594575ba3f Center forward and backward jumps too. 4 years ago
Blaž Hrastnik 3b90317060 Add window/showMessage / logMessage stubs so gopls fully starts. 4 years ago
Blaž Hrastnik c64240b6ef Implement most of the view mode (z). 4 years ago
Blaž Hrastnik 3e5f24a9d5 lsp: support both utf-8 and utf-16 offsets.
Still need to implement the clangd encoding negotiation, but it's
a start. Should also manually override to utf8 for pyls.
4 years ago
Blaž Hrastnik 811f952a41 Center search results. 4 years ago
Blaž Hrastnik 180521fefe Adjust scroll() to match kakoune: only scroll the view if cursor in bounds. 4 years ago
Blaž Hrastnik 2a1f10d1b5 Center the new position on screen after doing a goto jump. 4 years ago
Blaž Hrastnik 95dd55ba94 Fix overlap calculation. 4 years ago
Blaž Hrastnik 7493d19098 Re-introduce clearing with bg color, seems the TUI issue was fixed. 4 years ago
Blaž Hrastnik 392c4a9c02 Keep primary selection as space+space. 4 years ago
Blaž Hrastnik 73f4abbb37 N as extend with search (for now, N should be search_prev). 4 years ago
Blaž Hrastnik 978f5114d8 Horizontal scrolling! It only took a year to get around to it. 4 years ago
Blaž Hrastnik d692390d10 Render current line:col. 4 years ago
Blaž Hrastnik 865429643b <space>w for save, <space>c for close current split. 4 years ago
Blaž Hrastnik 52da68e49a Render a separator between vertical splits. 4 years ago
Blaž Hrastnik 9ca2909c80 Loop around the end on regex searches. 4 years ago
Blaž Hrastnik 8b33ba2284 Correct the naming issue with vsplit and hsplit being swapped. 4 years ago
Blaž Hrastnik 58c5fec592 minor: This comment was resolved. 4 years ago
Blaž Hrastnik bc4e54c0c4 Load config files from ~/.config/helix, fallback to defaults. 4 years ago
Blaž Hrastnik f0d49d3ca4 hack: make queries load relative to source dir for now.
We want to provide a runtime dir later on.
4 years ago
Blaž Hrastnik 12961d657f Implement P as paste_before. 4 years ago
Blaž Hrastnik 31e6bcbeb4 Clippy lint: replace with default -> take 4 years ago
Blaž Hrastnik e8298a398c Fix selection rendering, it would be off by 1 if reverse. 4 years ago
Blaž Hrastnik 82ff996662 Yank selection when deleting. 4 years ago
Blaž Hrastnik 463f58dfda Fix clamping scroll in certain cases.
.clamp(min, max) requires that min < max. In some cases
first + scrolloff > last - scrolloff and we would panic.
4 years ago
Blaž Hrastnik 0e9ecccfc1 clippy: Drop or-patterns for now because they're not on stable rust yet 4 years ago
Blaž Hrastnik 91462af546 Allow starting hx without a file. A new blank file will be created. 4 years ago
Blaž Hrastnik 7c44443994 Handle c-n, c-p, etc. autocompletion events. 4 years ago
Blaž Hrastnik 95d0bba81a ui: Improve completion state handling. 4 years ago
Blaž Hrastnik 59a0fc7b59 w, b, e: Match kakoune's behavior in selecting by default.
I initially preferred only moving the cursor, but selecting the whole
word is a lot nicer for things like wd (instead of vwd).
4 years ago
Blaž Hrastnik ab1d11088f Import some lsp utilities. 4 years ago
Blaž Hrastnik 77cab5a715 Merge open_above and open_below definitions. 4 years ago
Blaž Hrastnik cc058ad78f Simplify some code. 4 years ago
Blaž Hrastnik 0dbd5b61ef Simplify code by providin cx.current() = (view, doc). 4 years ago
Blaž Hrastnik ceea5eacd8 clippy lint 4 years ago
Blaž Hrastnik 7dfd7f51a0 Implement space-v as view same file in split. 4 years ago
Blaž Hrastnik 6c4093c946 Weave through view_id references so that views into one file have independent selects. 4 years ago
Blaž Hrastnik dfc17becd5 Move pickers under my leader key mode (space). 4 years ago
Blaž Hrastnik e166da2ab0 fix: A (append to line) was inserting before last char. 4 years ago
Blaž Hrastnik 1b5316ea74 Track document modified state. 4 years ago
Blaž Hrastnik 88bb7a1f38 Repeat insert command (.). 4 years ago
Blaž Hrastnik ebfd67ac6a Use StreamExt::select_next_some to avoid infinitely spinning on empty stream. 4 years ago
Blaž Hrastnik e833d65b77 Teach file picker how to find the project root (.git). 4 years ago
Blaž Hrastnik 8098e9bdcd Allow setting a status message. 4 years ago
Blaž Hrastnik 742b3a709f Store intra-files jumps (goto) on the jumplist. 4 years ago
Blaž Hrastnik 0083a6c325 commands: Simplify _goto. 4 years ago
Blaž Hrastnik ea407ccdba Implement <n>g as goto line n. 4 years ago
Blaž Hrastnik 5c2d2fda21 Wire up opening in splits via pickers. 4 years ago
Blaž Hrastnik aefafc25cd Replace Mode::Goto with just using on_next_key. 4 years ago
Blaž Hrastnik a24c3fff54 Filter the completion menu based on text entered. 4 years ago
Blaž Hrastnik 2a3910c1d9 wip: Async async. Delay response handling with a callback. 4 years ago
Blaž Hrastnik ad3325db8e minor: Remove a few unwraps. 4 years ago
Blaž Hrastnik e3c4edae32 Add the machinery to load syntax config from TOML.
It's embedded into the binary at build time for now, but it's progress.
4 years ago
Blaž Hrastnik 9a36d2c2a8 wip: Hooks & trigger characters for completion/signature_help. 4 years ago
Blaž Hrastnik 350081a3af Fix crash if pressing enter when nothing selected in completion. 4 years ago
Blaž Hrastnik 8657c57cf2 Trivial jumplist implementation. 4 years ago
Blaž Hrastnik 915fd9ebaf Restore buffer_picker. 4 years ago
Blaž Hrastnik 8a0ab447ec editor.open can now either replace the current view or open in a split. 4 years ago
Blaž Hrastnik 8328fe926d Drop refcell use, make view simply ref doc.id. 4 years ago
Blaž Hrastnik 3f9a94fd43 ui: markdown: remove trailing blank line. 4 years ago
Blaž Hrastnik d0530fb839 Fix a scrolling crash where it would jump past the end of the buffer. 4 years ago
Blaž Hrastnik 73c92a0bc1 Implement m / match_brackets (using tree sitter). 4 years ago
Blaž Hrastnik df306fe031 Implement open_above (O). 4 years ago
Blaž Hrastnik 42d07b0621 Implement replace command (r<key>). 4 years ago
Blaž Hrastnik bf95ee27aa Store Document on the Editor type, make View reference it. 4 years ago
Blaž Hrastnik 5e6716c89c Add tab_width and indent_unit config. 4 years ago
Blaž Hrastnik 698e4ddea4 clippy: Factor out a Completion type. 4 years ago
Blaž Hrastnik cbcacb1063 Merge some imports. 4 years ago
Blaž Hrastnik c4792efead clippy lints 4 years ago
Blaž Hrastnik 71999cce43 Implement auto-pairs behavior for open and close. 4 years ago
Blaž Hrastnik a32806b490 Improve completion: src/<tab> will now correctly complete to src/main.rs 4 years ago
Blaž Hrastnik f29f01858d Implement iter() and len() directly on Selection. 4 years ago
Blaž Hrastnik e9bd9e72c3 Pos conversions always operate on whole documents. 4 years ago
Blaž Hrastnik 175d38c88c toggle_comments needs to append to history. 4 years ago
Blaž Hrastnik c331721565 Finish hiding doc.state / State as an implementation detail. 4 years ago
Blaž Hrastnik 8ba1e15d29 Expose doc.syntax() via accessor. 4 years ago
Blaž Hrastnik e261f3c50d Expose doc.language_server as an accessor. 4 years ago
Blaž Hrastnik 59e6024186 Remove State from a few more signatures. 4 years ago
Blaž Hrastnik dbcc099f48 Move things out of state.rs. 4 years ago
Blaž Hrastnik 0f6624491b Fix completion panicking if text changed before insert completed. 4 years ago
Blaž Hrastnik 8eaf9a432d Make Transaction::change only rely on the rope. 4 years ago
Blaž Hrastnik 51c15da3c3 Hold a reference to executor on the Editor type. 4 years ago
Blaž Hrastnik e3ec5e31ec Fix goto code before merging. 4 years ago
Jan Hrastnik eadad13efa preparing for gd merge 4 years ago
Jan Hrastnik 4e461bea2f editor.open now checks if view already exists 4 years ago
Jan Hrastnik 0828d1fdea picker wip 4 years ago