Commit Graph

176 Commits (8949347e2c5d523b7045440f1f51c42a769392dd)

Author SHA1 Message Date
Blaž Hrastnik 4a9d1163e0 Hacky way to specify indent scopes per language via toml configs.
Can't do it via a scm query nicely because it returns an iterator over
all the matches, whereas we want to traverse the tree ourselves.

Can't extract the pattern data from a parsed query either.

Oh well, toml files for now.
4 years ago
Blaž Hrastnik c0a8b81487 Only send the document close event if we're closing the underlying buffer 4 years ago
Blaž Hrastnik c20813690f View::new is infallible, so is editor.switch/new_file. 4 years ago
Blaž Hrastnik f2c79e245b Allow switching views back to scratch buffers. 4 years ago
Blaž Hrastnik 418ee17b86 Canonicalize the path on open to avoid duplicates. 4 years ago
Blaž Hrastnik 7c915dc065 Add the :new command, don't crash if saving without filename. 4 years ago
Blaž Hrastnik fd4fd12fa3 clippy lint 4 years ago
Blaž Hrastnik d00414f81a Start moving more LSP calls into callbacks/futures without capturing self 4 years ago
Blaž Hrastnik 355ad3cb82 Tokio migration. 4 years ago
Blaž Hrastnik b0bdcab970 doc: Note about diagnostic mapping. 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 b5b650cfe7 Fix the last line calculation inside ensure_cursor_in_view 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 180521fefe Adjust scroll() to match kakoune: only scroll the view if cursor in bounds. 4 years ago
Blaž Hrastnik 978f5114d8 Horizontal scrolling! It only took a year to get around to it. 4 years ago
Blaž Hrastnik 52da68e49a Render a separator between vertical splits. 4 years ago
Blaž Hrastnik 9f318a8529 Fix an issue with closing nested splits.
The parent id was never assigned to the split, so removing the container
when it became empty failed.
4 years ago
Blaž Hrastnik 8b33ba2284 Correct the naming issue with vsplit and hsplit being swapped. 4 years ago
Blaž Hrastnik bc4e54c0c4 Load config files from ~/.config/helix, fallback to defaults. 4 years ago
Blaž Hrastnik 91462af546 Allow starting hx without a file. A new blank file will be created. 4 years ago
Blaž Hrastnik cf7b19d711 Always update selection: Empty transactions can still change selections. 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 15c9a33ebc Drop doc.state. Use doc.text + doc.selections. 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 9eaef6e333 Fully drop State references. 4 years ago
Blaž Hrastnik 1b5316ea74 Track document modified state. 4 years ago
Blaž Hrastnik 742b3a709f Store intra-files jumps (goto) on the jumplist. 4 years ago
Blaž Hrastnik c1f2a14453 view: document.rs cleanup 4 years ago
Blaž Hrastnik aefafc25cd Replace Mode::Goto with just using on_next_key. 4 years ago
Blaž Hrastnik cf0e191a6a Clippy lint 4 years ago
Blaž Hrastnik a65395d94b Load theme from toml file. 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 8657c57cf2 Trivial jumplist implementation. 4 years ago
Blaž Hrastnik 4b176caded Reset first_line when changing files. 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 b24cdd1295 Derive a separate ViewId type. 4 years ago
Blaž Hrastnik 8328fe926d Drop refcell use, make view simply ref doc.id. 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 cbcacb1063 Merge some imports. 4 years ago
Blaž Hrastnik c4792efead clippy lints 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 2b64f49f2c Document::new should just take a rope. 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 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