-
Notifications
You must be signed in to change notification settings - Fork 15
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
Developing v0.9.0 (Rewriting the app in ratatui) #220
Comments
Why the switch? I found your project through the cursive's showcase section. I'm starting my own tui now so I'd like to know. |
Mainly because of the lack of configuration cursive gives us to programmatically modify the look of certain UI components. For example, we cannot change the color of the border around views and changing predefined keybindings across the app is tedious. If you're unsure about what library to use, I can recommend reading the comparison page from the cursive wiki, because the libraries focus on different key aspects. If you want to have a more complex ui with deeply nested view trees and popup windows, and are fine with the sane defaults cursive sets, I would recommend cursive over ratatui (formerly tui-rs). |
@Builditluc Long time, no see 😃 I've just came by to check on the progress and saw the recent commits. Are you getting closer now? Looks like it will be loaded with new features, configurable looks ... Looking forward to take it for a spin. Regards |
Hey @0323pin! Yes I'm getting closer. The app should now have all of the features it had before (and a few new ones). Originally, I wanted to rewrite the app and release a new version before working on new things, but now I'm developing a few new features before releasing. I didn't have a lot of time generally for programming the last few months (did my finals, etc.) so most of work you see was done in the last few weeks, as I now have a lot more time. If you want, I'll notify you when the version is almost done (when all of the features are there and the polishing begins), so you can try it out! I would appreciate any feedback from your side! fyi, a bit more about the UI
I'm currently working on improving the UI for searches. The plan is to have it working like the search on the fandom.com site (wikipedia works also that way, but for the example I'm using fandom). For example, when searching initially it recommends articles based on your query and immediately opens the page when your query matches something. (like this) If it didn't find anything or you want to see |
Sure, bring it on. I'm all in for testing. |
@Builditluc How is it going? Hopefully getting there. Just to let you know that the latest published release fails to build with Rust > 1.79 because of the
Regards |
Hey @0323pin, please excuse my delayed response. |
you are forgiven 🤣
That's good but, it doesn't fix the broken builds. I'm hopeful that a new release will happen before end of December, cause than, stable 2024-Q4 will also be fine. Regards |
@Builditluc Trying the new 0.9.0-pre 😃 How to scroll down? |
I will try my best to release a new version before the end of December! The rewrite should already be feature complete (except for the configuration, I still haven't tackled how the configuration show look, structure and feature wise. Maybe you have some suggestions?). The part where the most work is needed is for bug-testing/fixing and the documentation (changelog, website updates, etc.). I would be very grateful for any bug-reporting for things I've missed re-implementing (like pagedown/up) or that are broken (I have written my own event system and since I've never done that before, there are bound to be some bugs in there). |
The basic vim keys ( EDIT: Also |
Thank you! I should have looked for it and fix that.
I can package an alpha or, beta if, that's an option. Don't want to force a release before it's ready.
Actually, I was pretty happy with the available configuration options on the old 0.8.x release series.
I can rebuild from HEAD tomorrow and test it. Will report issues as they come-up. |
Yes you're right.
Thank you, I'm currently working on documenting all of the things I've changed/added |
@Builditluc Let me know if you would prefer to start a new issue to discuss found bugs/issues on a new thread. New build from 50a34cc Starting the TUI without a theme file shows the following: which, is fine. The problem is, if one presses ESC to Dismiss the information, the search field becomes inactive and searches are not possible. I've tried to with TAB to change focus but nothing happen. If I search first and dismiss afterwards, things work as expected.
h: seems to do nothing ctrl+d and ctrl+u: work as expected I've added a package to our Work-In-Progress repo so that I can easily rebuild when you push changes by simply change the commit tag and regen the checksums. This, of course, makes it possible for anyone with access to build and install a package. Let me know if you don't want this and I can move it away to a private repo. |
Yes that makes more sense. I'll create the new issue for bugs/issues in a moment (EDIT: #234).
That's weird, I checked the code and found a little bug with the ordering of handling the key_events recieved. Basically, the issue was here: Lines 91 to 100 in 50a34cc
The key events of any active popups should be handled first (not second) (EDIT: should be fixed in 6c5d0b0). You can enter the search-bar with What do you think about adding little key-hints to the bottom of the borders (not only for the searchbar, but for example also for the toc)?
Yes thats the logger, you can change the logging level by setting the For movement inside of an article
That's fine by me, thanks for the information tho! |
Yeah you're right, it does get confusing if you're reading. We can change the background color for the info (maybe create a new theme item, called |
Thanks for 6c5d0b0, it does fix the issue I was having.
Yeah, I remember this, always set it to error, so it wouldn't generate too much noise. Quoting myself,
I was laying 🤣 But, I guess this setting can be override on a |
@Builditluc I couldn't resist 😄
All looks good. |
Pushed d713a9d which adds size constraints for the content in zen-mode. Documentation for the feature is also live at: https://wiki-tui.net/develop/configuration/page/#changing-the-size-of-the-content-in-zen-mode |
Everything working great 👍 |
Pushed 0c11c2d implementing configuration options for the global keybindings. Please excuse me taking so long, it was a journey trying to get the configuration schema the way I want. Documentation for the global keybindings is also live at: https://wiki-tui.net/develop/configuration/keybindings/ |
With the new commits, all the keybindings should be configurable now (and documented). Now the only thing still keeping us from release is an update of the website (redoing pictures, removing the notice of the rewrite, etc.) I also need to re-implement the logging and api configuration options (maybe I can implement some more). |
Looking good! What do you think, should configuration options for that also be in this release or should we do this in the next one? |
Personally, I'm happy but you're the boss here. Maybe leave it for 0.9.1? The changes are already quite large. If I would have to pick one it would be to be able to configure the border of the search bar. Or, is this already possible and I've just missed it? |
No, it's currently not possible. Yes, I also think it makes more sense to leave these options for the next version |
One thing, if possible. I would like us (NetBSD) to ship a working binary on the next stable branch, which is currently not the case as, 0.8.2 doesn't build with Rust > 1.79 Is it reasonable to believe this is possible? I mean, a release before Christmas? If not, I understand it, no rush. |
I'm currently working on implementing api configuration options and then we just need to update the website. I'm aiming for a new release either this or next week (then we have enough time to test and fix bug reports before the NetBSD release cycle) |
Thanks! |
Just for info: |
With 10b6243 all of the api configuration settings are implemented. I'll now go ahead and update the rest of the website (and readme) for the new version and take one more look over the code to see if I spot anything obvious |
@Builditluc Just updated my local copy to the latest commit. Let the testing begin :) |
There is still the issue with scrolling. At least I can now reproduce the issue (on the page I'll debug scrolling with Regarding release @0323pin, I believe there's "only" this scrolling issue left (if you or I don't find anything more), so if I find a fix for that today, we should be able to create a release in the evening (CET). About the release notes, I'd just use the big list in the |
If we find anything more in the following days, we can always push another version (or pre-release version) with these fixes |
Agreed on the release notes and to address potential new bugs with point releases. I'll try to check the srolling issue at my end but, it will need to wait a few hours. Building Rust-1.83 at the moment. |
@0323pin wiki-tui v0.9.0 is now finally online! release notes |
This is great. I'll try to get it merged tonight. I'll keep my git-HEAD package a few weeks, just in case there will point releases and you want someone to test. |
What I've found interesting is that we need to specify |
Closing this as v0.9.0 has been released |
Yes, it does.
Sorry but, this is a deal breaker 😞 |
Alright, but I'm going to move this into its own issue (EDIT: #236) |
This issue tracks the development and discussion of
v0.9.0
. For discussing/submitting bugs in the development version, please see #234.I'm planning to get the version released before the end of december. Currently, the most work is needed in bug-testing (and subsequent fixing) and writing the documentation for the new version (changelog, migration guide from 0.8.x, documenting the changes, etc.).
The documentation (in its current state) for
v0.9.0-pre
can be viewed here: https://wiki-tui.net/develop/So please feel free to try out the dev version and report any bugs you find.
The text was updated successfully, but these errors were encountered: