-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
calyx-pass [NAME tbd] #2108
calyx-pass [NAME tbd] #2108
Conversation
I think I have a fix for the scrollback buffer issue -- I will manage the scrollback buffer myself, and use an alternative screen escape code (supported on xterm so supported everywhere). I don't really want to bring in something like curses since this is really lightweight (store lines to a vector), |
The only two pressing questions that remain are:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Left a bunch of comments but a higher-level thought: why are we implementing scrollback buffers from scratch instead of using a TUI library that handles all of the edge cases and platform differences for us?
I bet there are edge cases where things don't work on Windows machines and when terminals are resized.
I felt that using two TUI libraries was overkill for just a scrollback buffer, but if you think it's a good idea, I can switch to using one.
Windows should take the same ANSI escape codes, but I think there might be some |
There might be some library that supports everything you need. In general, when working on Calyx tools, I do not enforce the "minimize dependencies" principle because the tool should be small, contained, and easy-to-maintain. |
The ideal is some crate that gives me an interface like |
I've switched everything over to |
Calyx IR is not deserializable so I worked around that
Implemented changes from Rachit's review: - Use a separate terminal library to handle most of the stuff for me so I don't have to worry about cross platform issues (I used `crossterm`) - Updated scrollback buffer to respond to terminal resizes - Other fixes and improvements
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple more low-level things! Fix and merge at your discretion! Awesome work!!
Some things to figure out:
calyx
driver executable?TODO.md
features?