TODO.md 1.61 KB
Newer Older
Ticki's avatar
Ticki committed
1
- [x] Make editor.pos method and use that instead of
Ticki's avatar
Ticki committed
2
- [ ] Add word navigation
Ticki's avatar
Ticki committed
3
- [ ] `.` command
Ticki's avatar
Ticki committed
4
- [ ] More partial redrawing (register "is_modified")
Ticki's avatar
Ticki committed
5 6 7 8


Known bugs:

Ticki's avatar
Ticki committed
9
- [x] When using `t` with a char that isn't in the document, Sodium will crash.
Ticki's avatar
Ticki committed
10
- [x] `d<motion>` does not do anything if: 1) the motion moves to the end of a line. 2) if the motion moves to the last line.
11 12 13

The bug causing these two bugs, is localised to be in position.rs. It resolves by returning a value one over bound x

Ticki's avatar
Ticki committed
14
- [x] The x value is wrongly bounded. Reproduction:
15 16 17 18 19 20 21 22 23
      1) Make two lines:
         - abc
         - abcdef
      2) Go to the end of the first line.
      3) Go one down. As you'll see you'll end up at d. That's right.
      4) Now go two the end of the first line again.
      5) Type 2l.
      6) Now go one down
      7) You'll end up on e, even though it should be d
Ticki's avatar
Ticki committed
24

Ticki's avatar
Ticki committed
25
- [x] Crashes when:
Ticki's avatar
Ticki committed
26 27 28 29 30 31
      1) Write abc on line 1
      2) Press o to go to the next line
      3) Go to normal mode
      4) Press a and go to append mode
      5) Type text
      6) Out of bound (index) error
Ticki's avatar
Ticki committed
32

Ticki's avatar
Ticki committed
33
- [x] When typing the first char in a line in normal insert mode, it wont go to the next char.
34

Ticki's avatar
Ticki committed
35 36 37 38
- [x] The modifier keys are only working for one command
     Solutions:
     - Make a struct KeyState storing info on the modifiers active. Add a method `feed` which feeds the keystate with a key, updating it. This should Option<Key>, where a key should be returned iff the key entered was not a modifier

Ticki's avatar
Fix bug  
Ticki committed
39
- [ ] Crashes when ~ command is used on an empty line
Ticki's avatar
Ticki committed
40
- [ ] `z` command is buggy.
Ticki's avatar
Ticki committed
41
- [ ] `x` is buggy (when line length differ)
Ticki's avatar
Fix bug  
Ticki committed
42

Ticki's avatar
Ticki committed
43 44
Refactoring:
- Organize into modules