Commit Graph

463 Commits (35feb614b6dab67f7b9660d56888f3724167951a)

Author SHA1 Message Date
Ivan Tham 29b9eed33c Fix panic paint mysterious matching pair
When the matching pair is out of bounds it still paints it causing an
out of bound panic. A dirty fix since it still have some issue, at least
it does not panic now.
3 years ago
Kevin Sjöberg fdb5bfafae Limit goto count
Giving a goto count greater than the number of lines in the buffer
would cause Helix to panic.
3 years ago
Antoni Stevent 27aee705e0 use correct _extend methods, also remove unnecessary casts 3 years ago
Antoni Stevent f0fe558f38 Add up/right/left/down arrow keymaps, similar to kakoune 3 years ago
Jakub Bartodziej 09a7db637e Avoid theoretical underflow. 3 years ago
Jakub Bartodziej 31ed4db153 Clean up leftover log. 3 years ago
Jakub Bartodziej 3c5dfb0633 Improve on the fix for deleting from the end of the buffer. 3 years ago
Jakub Bartodziej 6cbc0aea92 Disable deleting from an empty buffer which can cause a crash. 3 years ago
Jan Hrastnik c1c3750d38 key is now modified in place at start of handle_event 3 years ago
Jan Hrastnik daad8ebe12 key_canonicalization now only matches chars 3 years ago
Jan Hrastnik 68abc67ec6 put the key canonicalization in a seperate function. only chars now get stripped of Shift modifier 3 years ago
Jan Hrastnik 712f25c2b9 removed shift matching 3 years ago
notoria c3a98b6a3e Highlight matching brackets 3 years ago
Blaž Hrastnik 661dbdca57 Fix cursor not showing on (0, 0) 3 years ago
Ivan Tham d664d1dec0 Default log file to cache 3 years ago
Blaž Hrastnik 7e8603247d
Merge pull request #66 from IceDragon200/replaced-args-parser
Drop pico-args in favour of a hand rolled parser
3 years ago
Blaž Hrastnik 6dba1e7ec7 Clippy lint 3 years ago
Blaž Hrastnik c0332bd935 Fix split sizes getting out of sync with the terminal size, refs #69 3 years ago
Corey Powell f0018280cb Refactored parse_args loop
Thanks @PabloMansanet
3 years ago
Corey Powell 7202953e69 Dropped pico-args in favour of a simpler hand roller parser
Not the greatest looking, but it gets the job done
3 years ago
Corey Powell 83031564db
Merge pull request #57 from pickfire/fix-panic
Fix panic opening rust file
3 years ago
Ivan Tham eab6e53511 Fix panic opening rust file
Application::new will use stuff that requires tokio runtime.
3 years ago
Blaž Hrastnik 2719a35123
Merge pull request #55 from helix-editor/autoresize
autoresize terminal in compositor render
3 years ago
Jan Hrastnik 78980f575b autoresize terminal in compositor render 3 years ago
Wojciech Kępka e88383d990 Use config_dir for logging, create config_dir 3 years ago
Blaž Hrastnik cbb3ebafdc Support ctrl-f and ctrl-b to page up/down, fixes #41 3 years ago
Daichi Takamiya 4d12c7c3cf Fix empty command cause panic 3 years ago
Danilo Spinella ea824ed05d
Improve errors handling in main by adding context
Return a anyhow::Result in main function so that Context can be used
there too.
3 years ago
Blaž Hrastnik ce25aa951e Allow setting a filepath on :write 3 years ago
Blaž Hrastnik a2147fc7d5 Change help prompt styling 3 years ago
Blaž Hrastnik d8e16554bf Don't crash if no filename specified on open 3 years ago
Blaž Hrastnik b8d6e6ad28 Allow setting verbosity to info again 3 years ago
Blaž Hrastnik 138787f76e Drop clap for pico-args
We barely have any flags so it's not worth the compilation time or
binary size to use clap.
3 years ago
Blaž Hrastnik 87d0617f3b Completion: Format docs tabs & highlight in the doc's native language 3 years ago
Blaž Hrastnik 3810650a6b Completion: Render non-markdown docs too 3 years ago
Blaž Hrastnik 2c48d65b15 Format document on save 3 years ago
Blaž Hrastnik d54ae09d3b ESC should exit both completion and insert mode 3 years ago
Blaž Hrastnik d708efe275 Fix cursor positioning for prompts 3 years ago
Blaž Hrastnik 3336023614 ui: Menu rendering adjustments 3 years ago
Blaž Hrastnik 094203c74e Update deps, introduce the new tree-sitter lifetimes 3 years ago
Blaž Hrastnik b114cfa119 Display more data in completion popups. 3 years ago
Blaž Hrastnik f1dc25a774 Support count for indent too 3 years ago
Blaž Hrastnik 4f335fabc8 Fix unindent to work with tabs, take a count 3 years ago
Blaž Hrastnik 9c24f1ec0e Drop selection_lines completely, change move_line_start binding 3 years ago
Blaž Hrastnik f99a683991 Fix crash if appending at end of line on the last line of the file 3 years ago
Blaž Hrastnik 51d1d43289 Double the UI picker file limit. 3 years ago
Blaž Hrastnik 5a245b83a0 Append :fmt as a separate history state 3 years ago
Blaž Hrastnik 8949347e2c Completion: apply additionalTextEdits.
Used for adding imports to the file when completing.
3 years ago
Blaž Hrastnik 54de768915 Fix crash if typing | (regex or) into the prompt.
Zero-width matches at the start of the file make no sense to us.
3 years ago
Blaž Hrastnik 5e6b46e7c5 Use array::IntoIter. 3 years ago
Blaž Hrastnik 354b822d21 Fix crash on xa<Enter> if we were on the last line. 3 years ago
Blaž Hrastnik fae2127a11 Drop cx.view_id, it was used before we had cx.current. 3 years ago
Blaž Hrastnik 0e5b421646 When calculating a new selection, we need to take newly inserted text into account. 3 years ago
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.
3 years ago
Blaž Hrastnik e4ff75b4d4 Add :fmt (formats the whole file). 3 years ago
Blaž Hrastnik 5cbb4efa6d Add the LICENSE file. 3 years ago
Blaž Hrastnik ccdebb99b5 Drop some useless imports. 3 years ago
Blaž Hrastnik ff4c1d05de Replace the Clear widget with buffer.clear/clear_with. 3 years ago
Blaž Hrastnik 1255bcb8a3 Simplify the compositor callback. 3 years ago
Blaž Hrastnik 35606a3daa Inline tui as helix-tui fork.
We only rely on some of the rendering primitives and implement our
Cursive-style compositor on top.
3 years ago
Blaž Hrastnik 0fe19ae472 clippy lint 3 years ago
Blaž Hrastnik ed827e993f Fix jumplist jumps, keep the selection on vsplit. 3 years ago
Blaž Hrastnik caf4349925 Remove some of the panics, just log instead. 3 years ago
Blaž Hrastnik d24844b73d ui: Render command mode doc text if available. 3 years ago
Blaž Hrastnik d4d5e88ade Show a message if no definition was found. 3 years ago
Blaž Hrastnik 1be8b2005d Extract a method for view alignment. 3 years ago
Blaž Hrastnik adaf861881 vsplit can now split scratch buffers. 3 years ago
Blaž Hrastnik 570c253ffb Disable default features on futures-util to drop proc macros. 3 years ago
Blaž Hrastnik f0712479cb Define text color (mostly) in theme.toml. 3 years ago
Blaž Hrastnik f87dee926a Simplify prompt autocompletion rendering code. 3 years ago
Blaž Hrastnik ff84c8e394 Command mode: Per command completers. 3 years ago
Blaž Hrastnik 87e7a0de3f Save space by having the command hashmap use const static refs. 3 years ago
Blaž Hrastnik 9604a0c294 Improve command mode handling. 3 years ago
Blaž Hrastnik 243456a583 Disallow quitting on last view if unsaved changes present. 3 years ago
Blaž Hrastnik c0a8b81487 Only send the document close event if we're closing the underlying buffer 3 years ago
Blaž Hrastnik c20813690f View::new is infallible, so is editor.switch/new_file. 3 years ago
Blaž Hrastnik f2c79e245b Allow switching views back to scratch buffers. 3 years ago
Blaž Hrastnik 7c915dc065 Add the :new command, don't crash if saving without filename. 3 years ago
Blaž Hrastnik f8844c6811 Implement pair expansion when pressing new line between bracket pairs.
From:
{|}

To:
{
    |
}
3 years ago
Blaž Hrastnik fd4fd12fa3 clippy lint 3 years ago
Blaž Hrastnik ba97005495 Work around the rest of the blocking issues. 3 years ago
Blaž Hrastnik d00414f81a Start moving more LSP calls into callbacks/futures without capturing self 3 years ago
Blaž Hrastnik 1ad0581ddd Eliminate a few more futures dependencies. 3 years ago
Blaž Hrastnik 355ad3cb82 Tokio migration. 3 years ago
Blaž Hrastnik 0e5308bce1 Need to allow this lint, the Hook signature requires Option<>. 3 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.
3 years ago
Blaž Hrastnik 3038c2ef6d ui: Draft for completion doc preview. 3 years ago
Blaž Hrastnik ab4decfd6d Make post hooks trigger even when a different handler processes input.
The default handler is now simply a fallback.
3 years ago
Blaž Hrastnik d559199cec Stop crashing if last view is closed. 3 years ago
Blaž Hrastnik 28c167d71d doc: Be smarter about calculating modified status.
This way edit -> undo will properly show up as unmodified.
3 years ago
Blaž Hrastnik 594575ba3f Center forward and backward jumps too. 3 years ago
Blaž Hrastnik 3b90317060 Add window/showMessage / logMessage stubs so gopls fully starts. 3 years ago
Blaž Hrastnik c64240b6ef Implement most of the view mode (z). 3 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.
3 years ago
Blaž Hrastnik 811f952a41 Center search results. 3 years ago
Blaž Hrastnik 180521fefe Adjust scroll() to match kakoune: only scroll the view if cursor in bounds. 3 years ago
Blaž Hrastnik 2a1f10d1b5 Center the new position on screen after doing a goto jump. 3 years ago
Blaž Hrastnik 95dd55ba94 Fix overlap calculation. 3 years ago
Blaž Hrastnik 7493d19098 Re-introduce clearing with bg color, seems the TUI issue was fixed. 3 years ago
Blaž Hrastnik 392c4a9c02 Keep primary selection as space+space. 3 years ago