Comments (9)
This bug is explicitly hit when the zero width character is at the end of the rendering area. Give the fix in #1165 a try (with a patch dependency pointing at the PR) and let me know if that fixes your issue. I'm about 95% certain that will fix the bug you're seeing, but If it doesn't, can you please provide a debug stack trace which includes the relevant line numbers.
from ratatui.
Thanks for the bug report. I think the stacktrace will probably be enough to find the error.
Incidentally, have you considered whether it might make sense to add your app's functionality (pinning the first column) to https://github.com/YS-L/csvlens instead of building it out into into another app?
from ratatui.
Why doesn't this stacktrace have line numbers?
12: 0x5d67daf3b459 - <ratatui::text::span::Span as ratatui::widgets::WidgetRef>::render_ref::h7d1b172c055f1900
13: 0x5d67daf3ba85 - ratatui::text::line::render_spans::hd7e85f2853a83213
14: 0x5d67daf352ac - <ratatui::text::text::Text as ratatui::widgets::WidgetRef>::render_ref::h9c358aaf6d0b008b
15: 0x5d67daf35007 - <ratatui::text::text::Text as ratatui::widgets::Widget>::render::hc0996a9e0a6c6e20
16: 0x5d67daf33f89 - <ratatui::widgets::table::table::Table as ratatui::widgets::StatefulWidgetRef>::render_ref::h623b727d098fde1a
17: 0x5d67daf32c54 - <ratatui::widgets::table::table::Table as ratatui::widgets::Widget>::render::h37aa979a497a15c4
from ratatui.
release mode probably?
from ratatui.
Thanks for the bug report. I think the stacktrace will probably be enough to find the error.
Incidentally, have you considered whether it might make sense to add your app's functionality (pinning the first column) to https://github.com/YS-L/csvlens instead of building it out into into another app?
Thank you for this hint, I didn't know this tool until now. I tried, but I think there would be more to change then pinning the first column. csvlens
breaks csv columns which contain JSON data. This helps reading files, but it is not good for forensic work. Furthermore, I want to highlight lines or columns based on regular expressions. When we do forensic investigation, we often read thousands of log lines per day, to find things that should not be there. I want the tool to support this work.
However, I will include csvlens
in my future work, because until now I used xsv table | less -S
; while csvlens
looks much better. 👍
from ratatui.
csvlens breaks csv columns which contain JSON data. This helps reading files, but it is not good for forensic work. Furthermore, I want to highlight lines or columns based on regular expressions.
Both of these seem like reasonable features to implement in csvlens (not breaking json data and highlighting lines or columns)
from ratatui.
You're right. Let me think about this
from ratatui.
Also, pinning the first n columns would also make a good feature there too. I don't want to discourage you from writing an app like this if you want to, but given a choice of 1 excellent app or 2 good ones, I'd generally take the first choice.
from ratatui.
Fixed by #1165
Thanks a lot for your work 👍
from ratatui.
Related Issues (20)
- Add .next()/.prev() to ListState to make traversing a list of selectable items easier HOT 4
- Consistent examples in ratatui HOT 2
- Add Stylize methods directly to Style HOT 3
- Change examples folder structure HOT 4
- Features documentation on docs.rs isn't right. HOT 4
- TableState resets offset to 0 HOT 4
- Bug: ensure that block title rows apply the border style
- Add option to wrap depending on length of line, not last space character HOT 3
- Document Terminal::get_frame better
- Add scroll by methods to list and table HOT 6
- Exports should only be in a single location HOT 9
- Visual glitch - Null character inside block wrapped component alters borders HOT 8
- Consolidate `List::get_items_bounds` and `Table::get_row_bounds` HOT 3
- Is it possible for the calendar widget to use chrono instead? HOT 1
- Performance considerations with using `stderr` in the book HOT 2
- Support arbitrary ANSI sequences (including hyperlinks / images) by passing them through Style HOT 5
- Rapid Releases HOT 12
- `Paragraph::line_count` and `line_width` don't take block borders into account HOT 1
- Column offset and selection in `TableState` HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ratatui.