DataTAB new csv/json/xml all-in-one lister/editor 1.7
Описание
Универсальный плагин (csv / json / xml) и их файловых вариантов с единым движком, поэтому все три формата получают одинаковую фильтрацию, сортировку, редактирование, темы оформления и работу со шрифтами.Что он умеет
Табличный вид для CSV/TSV — колонки с сортировкой и фильтрацией, отдельные поля фильтра для каждой колонки, числовые колонки с выравниванием по десятичной запятой, естественная сортировка и строка состояния с количеством строк, разделителем и кодировкой.
Структурный вид для JSON и XML — каждый узел (объект, массив, элемент, атрибут) отображается строкой Имя/Значение, с раскрытием и сворачиванием; значения переносятся для удобного чтения в панели значений под таблицей.
Таблица записей — если документ содержит повторяющийся список (массив однотипных объектов или элемент, повторяющийся на одном уровне), DataTab может показать только этот список в виде обычной таблицы с сортировкой и фильтрацией вместо полного дерева — строка состояния сообщает, когда это доступно (Ctrl+T для переключения).
Редактирование — ячейки редактируются прямо на месте; сохранение выполняется без потерь: нетронутые части файла копируются байт в байт, перезаписываются только изменённые ячейки. Работает для строк CSV, значений JSON и текста элементов/атрибутов XML.
Вкладка исходника — необработанный файл с подсветкой синтаксиса (CSV/JSON/XML), номерами строк и функцией «Locate in source» для перехода от строки или узла прямо к его позиции в тексте.
Копирование узла как JSON, XML или JSON Path/XPath из любого узла структурного вида.
Темы — пять встроенных наборов (Light, Paper, Dark, Midnight, Solarized Dark) или переопределение любого отдельного цвета.
Шрифты — стандартный диалог выбора шрифта Windows для таблицы и для вида исходника, настройки сохраняются между сеансами.
Большие файлы — работа с фрагментами декодированного файла вместо копий отдельных ячеек, фоновая индексация с постепенным отображением и фильтрация, которая остаётся отзывчивой даже при числе строк далеко за миллион.
Поддерживаемые файлы
CSV, TSV, TAB · JSON, JSONL/NDJSON, GeoJSON, JSONC, JSON5 · XML и форматы семейства XML, которые по сути являются XML — SVG, XSD, XSLT, RSS, GPX, KML, OSM, .config/.manifest/.resx/.csproj/.props и подобные файлы проектов и конфигурации, WSDL, PLIST, ATOM и некоторые другие. Файлы с нераспознанными расширениями всё равно открываются, если их содержимое похоже на JSON или XML.
Что нового
Если у вас установлен DataTAB 1.1: после обновления DataTAB будет в списке Total Commander дважды. Удалите старую запись в Конфигурация → Настройка → Плагины → Плагины просмотра (Lister).
Changed: faster sorting and filtering
Measured on a 1-million-row CSV:
- Sorting a text column is 2-3x faster (a column of notes 1.1 s -> 0.4 s, a column of city names 0.46 s -> 0.14 s), and dates and numbers
about 2x. A repeated value is keyed once, and the work runs on several processor cores.
- The first letter typed into a filter on a sorted table no longer costs 2-3x a full filter (0.3 s -> 0.1 s).
- Query with SQL (Ctrl+Q) reads a table about 15% faster.
- A remembered sort gives way. Opening a big file whose sort was remembered no longer holds Total Commander while it sorts; a key press or click (in Quick View, moving to the next file) comes first, and the sort follows once things are quiet.
Fixed
- Numbers with a decimal comma are numbers. Where Windows uses ',' as the decimal point, 2,75 sorts, filters (>5), totals and goes into SQL as 2.75. Before, it was lined up as a number but sorted as text, so 2,8 came before 2,75 and >5 dropped 10,25.
- Numbers no longer depend on other plugins. Another plugin in Total Commander could switch the program's number format, after which 13213.21 read as 13213 in sorting, filters and SQL, and Excel number formats came out wrong.
- Long IDs keep every digit. A number of 19 or more digits (an order or card number) stays text in Query with SQL and in SQL export, instead of turning into 1.23456789012346e+19.
- A large database table sorts dates as dates, the same as a small one (it sorted them as text when the table was read in parts).
- Closing Lister with unsaved edits asks Save or Don't save. It used to offer Cancel too, but Total Commander closes Lister anyway, so Cancel lost the edits.
- Query with SQL (Ctrl+Q) reads the table in the background. Total Commander no longer freezes on a big file while the table is read, and Esc works as during any load.
- back-color2 paints alternating rows again. Since 1.4 it only colored the value pane, so an ini that set it (or back-color2-dark)
lost its zebra rows. Setting the key in the ini turns them back on, in the grid and the outline; the presets stay without.