[wlx] xmltab - просмотр XML файлов
Select messages from
# through # FAQ
[/[Print]\]
Goto page Previous  1, 2, 3, 4, 5, 6, 7  Next  :| |:
Total Commander -> Плагины Total Commander

#61:  Author: Destiny PostPosted: Sat Mar 12, 2022 21:51
    —
https://github.com/ziord/cxml

Можно глянуть, наверное... ну так, для сравнения. Без обязательств, конечно же.
Вроде на С в отличие от многих С++ версий и развивается...

#62:  Author: little-brother PostPosted: Sun Mar 13, 2022 23:18
    —
Если бы я писал редактор XML, то рассмотрел бы, а так придется усложнять сборку (вместо двух файлов в используемой либе, эта требует использование CMake, что в свою очередь ташит использование msys для эмуляции nix-консоли). И в случае, если потребуется расширить, напр. добавить узлу userdata, то только через автора либы. Пока меня текущая вполне устраивает Wink А то, что XPath нет - так и слава богу! Не потребуется реализовывать это в UI Very Happy

#63:  Author: Destiny PostPosted: Thu Mar 17, 2022 18:15
    —
Итак, о наших птичках!
Вроде как под новые релизы код подобрался у плагина?
Равно как и у jsontab + odbc - после правок, что там были сделаны/проверены?
Уж не будем расписываться по всем веткам сразу - всё равно обычно у вас классно вся кипа плагинов выходит в одном обновлении как бэ))

Или еще со ссылками что-то на подходе?

#64:  Author: little-brother PostPosted: Thu Mar 17, 2022 19:18
    —
Так в Истории изменений отписано. Из общего
А также
jsontab: добавлен JSONPath (аналог XPath)
odbctab: фикс с именами у листов
xmltab: поиск по дереву (только вниз), автокорень и XPath

Обновления всегда выходят одновременно по одной причине - я стараюсь, чтобы код у всех плагинов был максимально похожий, чтобы новый функционал можно было добавлять Copy-Paste (при этом всё равно приходится учитывать различия, но их не так много).

Для jsontab на англ. форуме еще попросили добавить обработку json без единого корня, как в случае с XML, и даже код правки предложили. Когда руки дойдут - надо будет внедрить и это.

Ссылок увы, не будет - я прикинул, там слишком много изменений получается, так что пока как есть оставил.

Quote:
проверены

В этом вопросе я полностью поддерживаю Microsoft - тестироваться надо на хомячках пользователях.

#65:  Author: yozhik PostPosted: Fri Aug 12, 2022 21:35
    —
little-brother
Сделайте, пожалуйста, такую настройку, чтобы при первом открытии во вкладке Text отображалось содержимое всего файла, а не только первого нода. Для QuickLook было бы намного удобнее, без дополнительных кликов. Т.е. чтобы при нажатии Ctrl+Q
было так: , а не так:

#66:  Author: little-brother PostPosted: Sat Aug 13, 2022 13:59
    —
Ок, как руки дойдут.

#67:  Author: little-brother PostPosted: Tue Aug 16, 2022 18:07
    —
Готово Smile
Добавил новую опцию open-first-element, которая указывает что при открытии файла искать первый элемент с тегом и показывать его. По умолчанию - 1 (включено).

#68:  Author: yozhik PostPosted: Thu Aug 18, 2022 18:52
    —
little-brother
Quote:
Готово

Спасибо! Работает исправно. Прошу прощения, что задержался с откликом — тоже руки не доходили.

Есть ещё пара наблюдений (пожеланий).

1) Вот этот Manifest.xml плагин игнорирует, не открывает. Он хоть и «нестандартный», но майкрософтский, найден здесь (на Win 10 x64):
Code:
C:\ProgramData\Microsoft\ClickToRun\MachineData\Catalog\Packages\{9AC08E99-230B-47E8-9721-4577B7F124EA}\{1A8308C7-90D1-4200-B16E-646F163A08E8}\Manifest.xml

Не знаю, насколько часто будут такие попадаться, но если учесть, что Microsoft себе такие позволяет, то можно предположить, что не редко. Может стоит Вам взглянуть что поправить, чтобы такие тоже открывались, не игнорировались?

2) Когда внутри нода другой нод, то плагин его отображает со смещением вправо. Это замечательно, наглядная иерархия. А когда внутри нода в содержимом есть перевод строки (физический LF или CRLF), то наглядная иерархия не срабатывает, новая строка «улетает» к левому краю. Можно ли сделать чтобы срабатывала? Чтобы всё содержимое нода, включая такие строки, отображалось с тем же отступом, что и сам нод. Посмотрите картинку, пожалуйста, вроде должно быть понятно что я имею в виду:

Вот ссылка на тестовый xml: https://0x0.st/oLA0.xml.ZIP

3) Вот тут я не уверен кто именно «виноват», может и не xmltab, но на всякий случай взгляните, пожалуйста, на такое дело:

3.1) TC 10.51 RC1. Установлены плагины xmltab.wlx, XMLViewer.wlx, cudalister.wlx.
3.2) У xmltab и XMLViewer есть детект-строка в wincmd.ini, у cudalister нет детект-строки (возможно это играет роль).
3.3) Открываю xml по F3. xmltab у меня первый по очереди из плагинов.
3.4) Теперь начинаю переключаться между плагинами по клавише «4». Доходим до cudalister. Следующее нажатие «4» должно опять загрузить xmltab. Фигвам. Вместо него загружается XMLViewer. Затем опять cudalister. Затем опять XMLViewer. xmltab вылетает из цикла переключений.
3.5) Ниже ссылка на видео, заметно (а если по кадру смотреть, то отчётливо видно), что xmltab загружается, но потом почему-то вылетает и на его место грузится следущий плаг, в данном случае XMLViewer.

3.6) Теперь пробуем отключать плагины:
3.6.1) отключаем cudalister — проблема не наблюдается. xmltab и XMLViewer между собой переключаются исправно.
3.6.2) отключаем xmltab — проблема не наблюдается. XMLViewer и cudalister между собой переключаются исправно.
3.6.3) отключаем XMLViewer — проблема наблюдается. По «4» загружется только cudalister.
3.6.4) Поэтому я и предположил, что дело может быть в детект-строке.

Ссылка на видео: https://vimple.co/17d4d64b778f46cd8e193f7b0d955a76

Добавлено спустя 1 час 5 минут:

little-brother
И ещё, чуть не забыл. Из default.ini плагина пропала вот эта строка:
Code:
header-row = 1                     ; 0/1

В xmltab 0.9.9 она была, а в xmltab 1.0.0 её нет. Так и должно быть или потерялась?

Добавлено спустя 28 минут:

Дополнение к пункту 2. Вот ещё интересный xml для тестов — в содержимом нода у него текст целой лицензии с переводами строк и табуляциями:
https://0x0.st/oLmN.xml.zip
Такие xml дампит из шрифтов известный у шрифтовиков пакет fonttools, так что подобный случай — вполне распространённый.

#69:  Author: little-brother PostPosted: Thu Aug 18, 2022 22:55
    —
1. Возможно дело в пространствах имен. Я использую сторонний парсер - он маленький, не только по размеру, но и по возможностям. Вряд ли можно будет добавить такую поддержку.
2. Это можно поправить.
3. Ок, гляну
4. Да, куда то потерялась. Не знаю каким образом Smile

P.S. Скорого обновления ждать не стоит, я плагины правлю между делом, когда заняться больше нечем.

#70:  Author: yozhik PostPosted: Fri Aug 19, 2022 00:39
    —
little-brother
Quote:
плагины правлю между делом

Так и мы тех-репорты пишем между делом. Если мой непосредственный начальник увидит моё форумное творчество, пригвоздит к позорному столбу Smile Так что как у вас получится, скоро-нескоро — от нас в любом случае признательность. Только в целом не забудьте Wink (между прочим и такое случалось, автор одного плагина написал, что сделал исправления, но исправленную версию так никогда и не выложил).

#71:  Author: Destiny PostPosted: Sat Aug 27, 2022 14:35
    —
yozhik wrote:
little-brother
1) Вот этот Manifest.xml плагин игнорирует, не открывает.

Хммм. Скачал ваш примерный файл, сабж до 1.0.0 даже еще не обновил - пробовал открыть в старой версии и ...

как видим - никаких проблем не было.

Кстати, для доп. варианта альтернативного просмотра лучше XMLReview плагин вместо XML Viewer Wink

Добавлено спустя 6 минут:

yozhik wrote:
little-brother
2) Когда внутри нода другой нод, то плагин его отображает со смещением вправо. Это замечательно, наглядная иерархия. А когда внутри нода в содержимом есть перевод строки (физический LF или CRLF), то наглядная иерархия не срабатывает, новая строка «улетает» к левому краю. Можно ли сделать чтобы срабатывала? Чтобы всё содержимое нода, включая такие строки, отображалось с тем же отступом, что и сам нод.


А зачем? Ведь именно в том и смак - что в текущей реализации четко видно, что вот эта часть текста является СПЕЦотформатированной! Что НАДО учитывать момент, что есть перевод строки! А если сделать "как везде", то начнешь думать как раз-таки об обратном - а не закралась ли ошибка в тексте файла? Что это за огромные пробелы явно внутри цельного предложения вдруг повылазили....

Добавлено спустя 15 минут:

little-brother
Хм, а вот с новой опцией open-first-element и на файле товарища yozhik
из второго пункта его поста "Вот ссылка на тестовый xml: https://0x0.st/oLA0.xml.ZIP"
облом. Выводится лишь один символ < и более ничего.
И ещё зачем-то и как-то первым выводится нода "#TEXT" - которой, конечно же, нет в оригинале файла.
А ещё при попытке скопировать XPath этой ноды мы получаем падение плагина и тотатала следом за ним...

#72:  Author: yozhik PostPosted: Sat Aug 27, 2022 16:31
    —
Destiny
Quote:
Скачал ваш примерный файл... пробовал открыть... никаких проблем не было.

Ай, да! Прошу пардону, моя невнимательность Embarassed Я проглядел ключ в ini 'max-file-size', в нём ограничение 1 Мб, а файл 3 Мб. Первый «issue» закрыт.
Quote:
лучше XMLReview плагин вместо XML Viewer

Это я для теста только подключил. Мне нравится идея нескольких плагинов для разных форматов с одинаковым подходом к отображению (xmltab, csvtab, jsontab ...tab). xmltab пока «проигрывает» XML Viewer и XMLReview только по скорости инициализации — два упомянутых значительно шустрее. Но дело в библиотеке, если я правильно понял. Зато он маленький, богаче по настройкам и в одной тональности с другими tab'ами. Поэтому на скорость я закрываю глаза, хотя и со вздохом.
Quote:
в текущей реализации четко видно, что вот эта часть текста является СПЕЦотформатированной

А в моём предложении разве этого не видно будет?! Точно так же будет видно. Только помимо этого будет видно ещё и другое нечто полезное.
Quote:
НАДО учитывать момент, что есть перевод строки

Так он же остаётся, перевод строки, никуда он не денется. Просто отступ слева добавится.
Quote:
Ведь именно в том и смак

Честно говоря, в чём тут именно смак я так и не понял, хотя о смаках, как известно, не спорят Wink В оригинальном тестовом файле вообще не используются отступы. Поэтому, если так важно сохранить аутентичную структуру отображения, то xmltab тогда и не нужен вовсе, встроенные средства Lister покажут файл «как есть», без прикрас. Но уже коль скоро мы подключаем плагин для более удобного и структурированного отображения, то хорошо бы следовать заявленному. Назвался груздем, полезай в кузов.

#73:  Author: little-brother PostPosted: Sat Aug 27, 2022 23:43
    —
Quote:
а вот с новой опцией open-first-element и на файле т...
облом. Выводится лишь один символ < и более ничего.

Новая опция всего лишь выбирает текущий узел после загрузки.

Я на том файле не проверял, т.к и так было понятно что требуется. Надо будет глянуть, но пока времени нет.

Насчет отступов - это можно дополнительной настройкой решить. Больше проблема запрограммировать это, чтобы не криво было.[/quote]

P.S. Плагин все таки под просмотр табличных XML заточен. Для просмотра структуры XML Review лучше и быстрее.

#74:  Author: Destiny PostPosted: Sun Aug 28, 2022 20:45
    —
little-brother wrote:
Новая опция всего лишь выбирает текущий узел после загрузки.

Это если она включена в позицию "выбирать первый узел". А я как раз выбрал вторую позицию - НЕ выбирать первый узел, а брать ВСЁ - и всё показывать текстом.
yozhik wrote:
чтобы при первом открытии во вкладке Text отображалось содержимое всего файла, а не только первого нода

И вот в этой позиции (0) и наблюдаются все описанные баги.

#75:  Author: little-brother PostPosted: Sun Aug 28, 2022 21:07
    —
"Брать всё" нет такой опции Smile
Есть брать первый попавшийся элемент - хоть это будет <?xml, хоть CDATA или же выделить первый узел с тегом.



Total Commander -> Плагины Total Commander


output generated using printer-friendly topic mod. All times are GMT + 4 Hours

Goto page Previous  1, 2, 3, 4, 5, 6, 7  Next  :| |:
Page 5 of 7

Powered by phpBB © 2001, 2005 phpBB Group