1
+ r3bl-cmdr
2
+
3
+ example handling:
4
+ ☐ create a simple way of asking user for which ex to run
5
+ ☐ use simple readline and then route the request to the correct ex
6
+ ☐ separate `sample_app` into: `ex_no_layout` & `ex_with_layout`
7
+ ☐ stub out `ex_with_editor`
8
+
9
+ separation of concerns:
10
+ ☐ What should the specificity of input event handling be?
11
+ - Currently the `DefaultInputEventHandler` does not consume input events and it peeks at them
12
+ - There isn't a way for apps to override any container defaults
13
+ - Should this be inverted? Apps get first dibs input event & consume if they handle it?
14
+
1
15
add layout engine:
2
- ✔ merge `tw_area_test.rs` + `app_withuout_layout .rs` -> `app_with_layout.rs` @done(22-07-03 16:47)
16
+ ✔ merge `tw_area_test.rs` + `app_without_layout .rs` -> `app_with_layout.rs` @done(22-07-03 16:47)
3
17
✔ make sure to save `app_without_layout.rs` for future use w/ routing below @done(22-07-03 16:26)
4
18
✔ rename `tw_area.rs` to `tw_surface` and `TWArea` to `TWSurface` @done(22-07-04 20:27)
5
19
☐ paint state & use lolcat
6
-
20
+
7
21
test 2 col layout:
8
22
✔ refactor DEBUG & raw mode & TWCommand @done(22-07-04 20:06)
9
23
✔ make sure that the colors work as expected (Color::Red, Color::Rgb, etc) @done(22-07-03 19:43)
10
24
✔ row calculation seems wrong (too much space on top of the rendered output) @done(22-07-04 15:10)
11
25
✔ clean up decl macros w/ repetitions `tw_command.rs`, `file_logging.rs`, `decl_macros.rs` @done(22-07-04 20:23)
12
26
✔ emit clear screen & reset color commands before rendering each frame (artifacts appear on resize) @done(22-07-04 21:00)
13
27
✔ does margin (cols) work as expected? (different in vscode terminal vs real terminal) @done(22-07-07 13:41)
14
- ☐ make sure that the attributes work as expected (dim, strikethru , etc)
28
+ ☐ make sure that the attributes work as expected (dim, strike through , etc)
15
29
☐ handle situation when cursor is moved PAST the bounds of the window (< 0 or > max)
16
30
- add row and col offset?
17
31
- track cursor position?
18
32
- Example: https://github.com/nazmulidris/cli-editor/blob/main/src/main.rs
19
33
20
- performance & completness :
34
+ performance & completeness :
21
35
☐ stress test app w/ full screen repaint on mouse move
22
36
☐ add all the remaining crossterm commands to `TWCommand`
23
37
@@ -28,7 +42,7 @@ introduce first DSL (JSX-like syntax):
28
42
☐ write DL tutorial on create DSL in Rust
29
43
- based on: https://github.com/r3bl-org/r3bl-rs-utils/blob/main/macro/src/make_style/mod.rs
30
44
- create tui category in DL
31
- - make sure to publicise this article on mailchimp, reddit, users.rust-lang.org
45
+ - make sure to publicize this article on mailchimp, reddit, users.rust-lang.org
32
46
33
47
routing:
34
48
☐ introduce routing concept to switch between apps (with + without layout)
@@ -67,6 +81,6 @@ mdns & p2p:
67
81
- local service discovery
68
82
- easy authentication (cloud auth provider login?)
69
83
70
- flow editor :
71
- ☐ Ideate on how to impl this
72
- - 2+ col layout that allows text to be edited flowing LTR
84
+ new stuff :
85
+ ☐ flow editor
86
+ ☐ diagrams
0 commit comments