... | ... |
@@ -1,5 +1,20 @@ |
1 | 1 |
( |
2 | 2 |
app/left : text editor |
3 |
+ |
|
4 |
+ TODO |
|
5 |
+ - Follow cursor when moving out of the screen |
|
6 |
+ - Moving should using selection instead of position |
|
7 |
+ - Slowdown ctrl keys |
|
8 |
+ - Save/Load |
|
9 |
+ - Select blank lines |
|
10 |
+ - Real scrolling distance |
|
11 |
+ - page up/down move with ctrl+arrow |
|
12 |
+ - Select line by clicking line number |
|
13 |
+ - Syntax highlight? |
|
14 |
+ - Double-click select word |
|
15 |
+ - Right-click find next instance of selection |
|
16 |
+ - Mouse block selection |
|
17 |
+ - Copy/Cut/Paste |
|
3 | 18 |
) |
4 | 19 |
|
5 | 20 |
&Console { pad 8 stdio 1 } |
... | ... |
@@ -51,12 +66,14 @@ BRK |
51 | 66 |
,select JSR ,redraw JSR ,no-ctrl JMP |
52 | 67 |
@no-ctrl-up |
53 | 68 |
,no-ctrl-left ~dev/ctrl #04 ROR #04 NEQ JMP? POP2 |
54 |
- ~position.x #0001 SUB2 =position.x |
|
55 |
- ,select JSR ,redraw JSR ,no-ctrl JMP |
|
69 |
+ ~selection.from #0001 SUB2 =selection.from |
|
70 |
+ ~selection.from #0001 ADD2 =selection.to |
|
71 |
+ ,redraw JSR ,no-ctrl JMP |
|
56 | 72 |
@no-ctrl-left |
57 | 73 |
,no-ctrl-right ~dev/ctrl #04 ROR #08 NEQ JMP? POP2 |
58 |
- ~position.x #0001 ADD2 =position.x |
|
59 |
- ,select JSR ,redraw JSR ,no-ctrl JMP |
|
74 |
+ ~selection.from #0001 ADD2 =selection.from |
|
75 |
+ ~selection.from #0001 ADD2 =selection.to |
|
76 |
+ ,redraw JSR ,no-ctrl JMP |
|
60 | 77 |
@no-ctrl-right |
61 | 78 |
|
62 | 79 |
@no-ctrl |
... | ... |
@@ -87,7 +104,8 @@ BRK |
87 | 104 |
( decr ) ~j #0001 SUB2 =j |
88 | 105 |
,insert-loop ~j ~selection.from GTH2 JMP? POP2 |
89 | 106 |
~dev/key ~selection.from STR |
90 |
- ~position.x #0001 ADD2 =position.x ,select JSR |
|
107 |
+ ~selection.from #0001 ADD2 =selection.from |
|
108 |
+ ~selection.from #0001 ADD2 =selection.to |
|
91 | 109 |
( release ) #00 =dev/key |
92 | 110 |
,redraw JSR |
93 | 111 |
|