Ivan Tham
f5f46b1fed
Separate document history into Cell
...
As history is used separately from the rest of the edits, separating it
can avoid needless borrowing and cloning. But one need to be aware later.
2021-06-02 23:47:50 +08:00
Blaž Hrastnik
f4560cb68a
Better fix for w/e that also covers ia<esc>we
/ia<esc>wb
2021-06-02 14:57:43 +09:00
Blaž Hrastnik
0851110d10
f/t: Check if at bounds before searching, refs #43 , closes #37
2021-06-02 13:20:27 +09:00
Blaž Hrastnik
3ace581191
Fix panics when triggering w or e on the last char of the line
...
Closes #32
2021-06-02 13:19:40 +09:00
Blaž Hrastnik
c0264b9f7f
fix: Don't allow moving past last line, fixes #30 , #24
...
Off by 1 error
2021-06-02 13:19:40 +09:00
Blaž Hrastnik
2cc30cd07c
Categorize _ as a word char, not punctuation
2021-05-31 21:09:17 +09:00
Blaž Hrastnik
17e9386388
Allow moving to EOL byte, also fixes #15
2021-05-31 17:08:19 +09:00
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.
2021-05-31 17:07:43 +09:00
Blaž Hrastnik
6460501a44
Update architecture.md
2021-05-30 17:52:46 +09:00
Blaž Hrastnik
094203c74e
Update deps, introduce the new tree-sitter lifetimes
2021-05-28 00:00:51 +09:00
Blaž Hrastnik
0e5b421646
When calculating a new selection, we need to take newly inserted text into account.
2021-05-15 10:50:36 +09:00
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.
2021-05-14 19:21:46 +09:00
Blaž Hrastnik
5cbb4efa6d
Add the LICENSE file.
2021-05-11 01:44:00 +09:00
Blaž Hrastnik
0190fee1c2
Fix indent test, we need to use the in-tree runtime dir.
2021-05-10 17:57:17 +09:00
Blaž Hrastnik
cd1754f783
Fix runtime dir lookup.
2021-05-10 17:37:04 +09:00
Blaž Hrastnik
1f2d87cb95
Make the config dir locator work on Windows.
2021-05-10 16:21:55 +09:00
Blaž Hrastnik
0f77f543e5
Determine runtime dir based on executable location or env override.
2021-05-10 01:02:53 +09:00
Blaž Hrastnik
5954dafdbc
Indent array and tuple lists too.
2021-05-09 19:02:35 +09:00
Blaž Hrastnik
6c705f09e8
Lint
2021-05-09 17:13:59 +09:00
Blaž Hrastnik
7c915dc065
Add the :new command, don't crash if saving without filename.
2021-05-07 14:19:58 +09:00
Blaž Hrastnik
f8844c6811
Implement pair expansion when pressing new line between bracket pairs.
...
From:
{|}
To:
{
|
}
2021-05-06 23:02:32 +09:00
Blaž Hrastnik
fd4fd12fa3
clippy lint
2021-05-06 17:20:00 +09:00
Blaž Hrastnik
28c167d71d
doc: Be smarter about calculating modified status.
...
This way edit -> undo will properly show up as unmodified.
2021-05-03 17:23:11 +09:00
Blaž Hrastnik
7e9ea30a0b
auto_pairs: move if cursor, extend if selection.
2021-04-22 23:26:57 +09:00
Blaž Hrastnik
5edb374237
And some more indent patterns.
2021-04-14 17:14:13 +09:00
Blaž Hrastnik
9e6c8c2a5a
Rust: add a few more scopes to indent.
2021-04-14 15:39:31 +09:00
Blaž Hrastnik
9445b24b88
Simplify calculate_indentation.
2021-04-14 14:28:31 +09:00
Blaž Hrastnik
95dd55ba94
Fix overlap calculation.
2021-04-10 12:02:23 +09:00
Blaž Hrastnik
73f4abbb37
N as extend with search (for now, N should be search_prev).
2021-04-10 00:21:13 +09:00
Blaž Hrastnik
35b4fe4cd0
Fix range.overlap()
2021-04-10 00:20:12 +09:00
Blaž Hrastnik
c1e5733b02
Remove the path specifier.
2021-04-09 18:57:46 +09:00
Blaž Hrastnik
71c06c11cb
Import tree sitter queries.
2021-04-08 23:25:35 +09:00
Blaž Hrastnik
bc4e54c0c4
Load config files from ~/.config/helix, fallback to defaults.
2021-04-07 23:56:20 +09:00
Blaž Hrastnik
f0d49d3ca4
hack: make queries load relative to source dir for now.
...
We want to provide a runtime dir later on.
2021-04-07 18:05:59 +09:00
Blaž Hrastnik
e8298a398c
Fix selection rendering, it would be off by 1 if reverse.
2021-04-07 16:57:58 +09:00
Blaž Hrastnik
63e602bda6
Fix issues with "enum A {|}" <Enter> indent calculation.
2021-04-07 16:39:13 +09:00
Blaž Hrastnik
9dfd6f6bbc
clippy lint
2021-04-06 20:00:35 +09:00
Blaž Hrastnik
f00cb15137
core: Improve changeset composition behavior.
...
It would fail to combine with an empty set.
2021-04-06 19:01:48 +09:00
Blaž Hrastnik
015fd2ffa2
pairs: Use token utf8 lengths instead of 1.
2021-04-06 17:28:56 +09:00
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).
2021-04-05 16:35:04 +09:00
Blaž Hrastnik
cc058ad78f
Simplify some code.
2021-04-01 11:04:25 +09:00
Blaž Hrastnik
9eaef6e333
Fully drop State references.
2021-03-31 15:45:18 +09:00
Blaž Hrastnik
742b3a709f
Store intra-files jumps (goto) on the jumplist.
2021-03-29 16:32:42 +09:00
Blaž Hrastnik
1d96cbfbd2
Transaction: Add a changes_iter() that can convert back to a list of Changes
2021-03-29 14:56:00 +09:00
Blaž Hrastnik
a74ff6bc03
Transaction: need to consume insert | delete properly.
2021-03-29 14:55:35 +09:00
Blaž Hrastnik
b52474cf66
clippy lint
2021-03-27 12:14:58 +09:00
Blaž Hrastnik
ad3325db8e
minor: Remove a few unwraps.
2021-03-26 11:03:14 +09:00
Blaž Hrastnik
8b28bf2533
Fix broken test.
2021-03-25 16:53:32 +09:00
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.
2021-03-25 15:26:25 +09:00
Blaž Hrastnik
9a36d2c2a8
wip: Hooks & trigger characters for completion/signature_help.
2021-03-24 18:17:00 +09:00