Releases: nmeylan/json-table-editor
Releases · nmeylan/json-table-editor
Release list
0.15.0
Added
- You can force the format with; format json|jsonl or the new "Open jsonl file" menu.
- When you pick a file without a known format, a dialog asks whether it is JSON or JSONL, and whether to open it read-only.
- Saving a JSONL file writes one row per line.
- Read-only mode: open with --read-only, the "Open read only" menu or the format dialog. It uses much less memory because it keeps the original text and stores each cell as a 16-byte offset into it. Editing, paste, replace and save are turned off. Copy, filter, sort, search and opening sub tables still work.
- --max-depth CLI flag to limit how deep the file is parsed.
- New value popup for cells whose text doesn't fit:
- It opens only when the text is actually cut off, not just when it's over 100 characters.
- It stays open while the pointer is over the cell or the popup, so you can scroll it and select text.
- Nested objects and arrays are shown indented, and only the visible lines are drawn, so large values stay fast.
Changed
- Large files are now always parsed at full depth. Before, files over 100MB were only parsed to depth 1.
- The rows of the root array are parsed in parallel, for both JSON and JSONL.
- Lower memory use for nested objects: only depth-1 objects keep their original text. The text of deeper objects is rebuilt when needed and cached.
- Pinned columns: they now start at a width that fits their content and can be resized. Before, they used a fill-remaining-space column that couldn't be resized. Pinning or unpinning a column now happens after the current frame is drawn, which avoids glitches.
Fixed
- Unpinning the last pinned column, or pinning the last unpinned one, no longer leaves the table in a broken state.
- Pinning or unpinning a column now clears the focused cell and any edit in progress. Before, they could end up pointing at the wrong column.
0.14.0
0.13.0
Fix jsonl support: fix depth change and support for very long line
0.12.0
0.11.1
Avoid lag when nested array contains gb of data
0.11.0
Fix parsing of complex json, containing closing array or object in st…
0.10.1
Enhancement for release version: remove fps counter and console on wi…
0.10.0
Performance improvement
On ultra dense table (see #52) rendered from 42fps to 54fps
- Remove useless interaction zone
- Use our own text component to simply paint cells text instead of using
Label, this allow use to control LayoutJob and use thebreak_on_newline=falseoption to disable LF to be rendered without performing a replace on cells string - Context menu was created on each cells, even if not opened it required some work internally in egui (per frame cache update)
0.9.3
Change focused cell when tab is pressed while editing
0.9.2
Edit directly when typing alphanum key