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

#1: [wlx] xmltab - просмотр XML файлов Author: little-brother PostPosted: Sat Oct 16, 2021 13:52
    —
Плагин для просмотра XML файлов.

Страница проекта - https://github.com/little-brother/xmltab-wlx
Страница на wincmd - http://wincmd.ru/plugring/xmltab.html
Скачать - https://github.com/little-brother/xmltab-wlx/releases/latest/download/xmltab.zip

Возможности
Ctrl + Колесо мыши - изменение шрифта
TAB - переход на следующий элемент
Ctrl + TAB - переход на предыдущий элемент

Настройки и другое в Wiki - https://github.com/little-brother/xmltab-wlx/wiki

#2:  Author: Destiny PostPosted: Sat Dec 18, 2021 00:21
    —
День добрый!
Имхо для случая, когда в теге нет значения, нужно выводить в дереве тегов слева запись вида:
ИМЯ_ПАРАМЕТРА=<пусто>
а не как сейчас - просто
ИМЯ_ПАРАМЕТРА
В табличном представлении или в текстовом - все понятно, а тут глаз "цепляется"...

И наверное практику с default.ini стоит продолжить на всех ваших плагинах))
Это с csv плагином уж очень здорово вышло...

#3:  Author: little-brother PostPosted: Sat Dec 18, 2021 01:10
    —
Если представить такое на дереве тегов на картинке сверху, то получится, что у каждого тега справа будет
Code:

reaction = <пусто>

Это точно такое надо? Можно конечно настройку добавить.

Quote:

с default.ini стоит продолжить

В процессе уже Wink

#4:  Author: Destiny PostPosted: Sat Dec 18, 2021 15:27
    —
little-brother wrote:
на картинке сверху

нет раскрытых ПУСТЫХ тегов. Это все узлы с наполнением...
А речь идет именно о случае, когда у узла НЕТ содержимого. Т.е. название есть, а внутри ничего.
<subdata></subdata> или <subdata/>

А на картинке сверху всё ещё дальше раскрывается по щелчку на плюсики.

#5:  Author: little-brother PostPosted: Sat Dec 18, 2021 17:57
    —
Готово. Для отображения надо будет в ini-файле выставить
Code:

show-empty = 1

#6:  Author: Destiny PostPosted: Sun Dec 19, 2021 12:08
    —
Уже качаю, проверяю)))
В json плагине так же работать будет? там ведь так же бывают кусты/узлы с пустыми данными.

P.S. да, работает клево. Единственно, раз пока нет толком переводов, имхо лучше этот параметр не числовым, а текстовым сделать.
Т.е. если параметр есть и не пустой - то его значение и показывать в дереве. А то нерусское none что-то не хочется видеть))))
show-empty=<пусто>

#7:  Author: little-brother PostPosted: Sun Dec 19, 2021 14:59
    —
По хорошему надо бы перевод всего плагина делать, а не вот такие частичные меры. Пробовал, но не понравилось, что получается. Пока отложил. Если не получится, то сделаю как текстовый параметр в следующих версиях.

#8:  Author: Destiny PostPosted: Fri Feb 25, 2022 17:08
    —
Приветствую!

В json плагине есть действие Copy as JSON. Реально полезно оказалось.
А вот для XML таковым полезным может оказаться возможность копирования XPath! И вывод текущего выделенного элемента как XPath путь в строке состояний! Сразу за элементом вывода в строке Rows: х/х

И кстати, а что такое SINGLE для XML???
И как воспринимать ROWS в контексте XML, где как бы нет табличного представления! И вывод я всегда вижу как 7/7, 1/1, 3/3. Но никогда 1/5, 2/9... И это при тапах по узлам дерева XML! Понятно дело, что в табличном представлении значений узла - что вводятся справа от дерева - там ROWS логика есть. Так что ИМХО строка ROWS: 7/7 имеет смысл быть заменённой именно выводом полного XPath пути. Вот эта инфа на этом месте более логична! И его копирование тоже весьма полезно и нужно!

#9:  Author: little-brother PostPosted: Fri Feb 25, 2022 17:26
    —
Надо подумать, что можно с XPath сделать - в используемой для парсинга XML-библиотеки готового метода нет, особенно после того как я её порезал.
Если его не сложно генерить самому, на основании информации иерархии узлов, то наверно можно добавить.

#10:  Author: Destiny PostPosted: Fri Feb 25, 2022 17:58
    —
little-brother wrote:
Если его не сложно генерить самому, на основании информации иерархии узлов

вроде именно так оно и работает))))
просто там есть несколько доп.символов - разделителей/уточнителей, которые надо вставлять.
Так что ориентировочно - да, можно и самому состряпать.
НО ОООООЧЕНЬ странно, что в той библиотеке нет метода под это. Чтобы просто его вызвать и всё.

И кстати, а что такое SINGLE для XML??? так и не понял))))
про ROWS в контексте XML дерева - уж ладно, можно не отвечать Wink
все равно, надеюсь, этот вывод будет заменен более полезным XPath ))


Last edited by Destiny on Fri Feb 25, 2022 18:19; edited 1 time in total

#11:  Author: little-brother PostPosted: Fri Feb 25, 2022 18:14
    —
Quote:
НО ОООООЧЕНЬ странно, что в той библиотеке нет метода под это

Стандарт XML достаточно сложный, напр. если учитывать пространства имен, потому все библиотеки, работающие с ним, мало того, что большие (мегабайты), так еще и собираются непросто. Поэтому я взял самую простую и маленькую из тех, что нашел на задворках GitHub. В большинстве случаев она работает и ладно, но вот плюшек в ней нет от слова совсем.

Quote:
SINGLE для XML

SINGLE - это когда у узла один потомок и потому это не таблица (TABLE).
ROWS - это просто число строк в "таблице".
Обозначения не имеют смысла, если в XML нет табличных данных, но плагин то не просто так называется xmlTAB.
Вместо ROWS отображать XPath смысла нет. Если и делать, то в выпадающем меню пункт "Copy XPath".

#12:  Author: Destiny PostPosted: Fri Feb 25, 2022 18:23
    —
little-brother wrote:
если в XML нет табличных данных, но плагин то не просто так называется xmlTAB.

А есть файл-пример с таким наполнением, где SINGLE превращается в TABLE, и ROWS начинает показывать что-то разное в виде X/Y, а не постоянное ROWS: X/X?

А то я всё показываю лишь плохие примеры файлов, где что-то просто не работает, а вот пример файла, где все работает и как планировалось, но по особенному - такого я еще не видел)))

little-brother wrote:
Если и делать, то в выпадающем меню пункт "Copy XPath".

Это тогда конечно да, именно так)))

#13:  Author: little-brother PostPosted: Fri Feb 25, 2022 18:41
    —
В первом случае это SINGLE, во втором TABLE. В целом это видимо не сильно удачное решение в плагине Smile
Code:

<X>
    <Y>a</Y>
</X>

<X>
    <Y>a</Y> <-- ROWS: 1/2
    <Y>b</Y> <-- ROWS: 2/2
</X>

#14:  Author: Destiny PostPosted: Fri Feb 25, 2022 19:30
    —
little-brother
что то мне кажется, если это единственно придуманный набор тегов, которые описывают логику этих элементов SINGEL|TABLE + ROWS X/Y,
где в общем случае X==Y, то явно это не то, что надо вообще хоть как-то отображать.
XML это всегда набор тегов. Линейный. И то - что они, будучи размещенными на плоскости могут определить двумерное табличное представление - это ничего не значит.
Да, для тегов можно показать в скобках с самим тегом кол-во внутренних подэлементов! Аналог [ROWS: X] - без Y!
Или кол-во байт, которыми описываются внутренние структуры выбранного субтега (сколько занимают в символах строк все данные).
И это всё)), Ну разве что XPath для любого выбранного тега еще вполне логично подсказывать...
т.е. НЕ просто дать возможность его скопировать - но именно что показывать в режиме реального времени - по выбору тега пользователем!


Last edited by Destiny on Fri Feb 25, 2022 20:29; edited 1 time in total

#15:  Author: little-brother PostPosted: Fri Feb 25, 2022 20:20
    —
Для нетабличных данных правая часть с таблицей особого смысла не имеет. И в таком случае лучше использовать XMLReview-плагин, хотя он и несколько пожирнее.



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


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

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

Powered by phpBB © 2001, 2005 phpBB Group