LINUX.ORG.RU

Ответ на: комментарий от Evgueni

В простых случаях, где XML выглядит хоть как-то читаемо, хватает обычных переменная=значение, а в сложных случаях XML-структуры могут разобрать разве что роботы, то есть человеки там лишние.

Полностью поддерживаю этого оратора.

ugoday ★★★★★
()
Ответ на: комментарий от ugoday

Окей, тогда твой аргумент с diff двух XML файлов выкидываем как неконструктивный. Какие там у нас еще остались утилиты для работы с ini файлами?

vasily_pupkin ★★★★★
()
Ответ на: комментарий от Deleted

Я нихрена не понял чего ты хочешь. Извини.

ugoday ★★★★★
()
Ответ на: комментарий от ugoday

Неразумные фонаты ХМЛ

совсем не фанат, XML место в переносе данных, но не в хранении настроек. особенно человекочитаемых

для этого придумана утилита sort, которая ВНЕЗАПНО сортирует строки исходного файла, после чего порядок уже не имеет значения.

сразу видно идиота - порядок имеет значение, так как ВНЕЗАПНО ключи в .ini лежат по разделам

бла-бла-бла
есть шелл с его богатыми возможностями

тебе повторить вопрос? или все просто, но задачу решить ты не можешь?

wota ★★
()
Ответ на: комментарий от vasily_pupkin

твой аргумент с diff двух XML файлов выкидываем как неконструктивный.

Почему? Это же одно и то же дерево с точки зрения xml.

ugoday ★★★★★
()
Ответ на: комментарий от uin

нет ну что значит «моветон»? это инструмент или «заповедь» какая нибудь ?

Я так понимаю, что такое понятие как «правила хорошего тона» неизвестно?
Тот же С или C++ позволяют писать по всякому, но за быдлокодинг никого не хвалят.
В том примере я тоже вижу быдлокодинг, только на xml.

WatchCat ★★★★★
()
Ответ на: комментарий от vasily_pupkin

ини можно через sort перед дифом прогнать, тогда ничего не покажет. в xml с этим хуже, хотя в ини с пробелами вокруг = к diff тоже костылить надо) xmldiff я не видел, но инструментов для логического сравнения/грепанья/etc для всяких xml/json/etc не хватает, а нужны

muhas ★★★
()
Ответ на: комментарий от vasily_pupkin

Комментарии помогут, особенно если структуры простые и не XML. Но нужно посозерцать, а не сразу бездумно править.

Evgueni ★★★★★
()
Ответ на: комментарий от muhas

ини можно через sort перед дифом прогнать

С секциями ini, с секциями

vasily_pupkin ★★★★★
()
Ответ на: комментарий от muhas

Кстати xmldiff и 7 лет назад не было, а необходимость была. Почему-то этот инструмент не появился — видимо «не нужен».

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

>Почему-то этот инструмент не появился
Что?

Deleted
()
Ответ на: комментарий от Deleted

offtopic. Твой аргумент про применимость костыля в своей среде работает для XMLя (и Java, заодно) не хуже, чем для JSON-а.

DonkeyHot ★★★★★
()
Ответ на: комментарий от vasily_pupkin

Кстати греп для XML и подобных есть, sgrep называется

# eix xmldiff
* app-text/xmldiff
     Available versions:  0.6.9 ~0.6.9-r1 0.6.10
     Homepage:            http://www.logilab.org/projects/xmldiff/
     Description:         A tool that figures out the differences between two similar XML files

Кто-то тут выдаёт 4.2 и кмк это не eix.

WatchCat ★★★★★
()
Ответ на: комментарий от wota

порядок имеет значение, так как ВНЕЗАПНО ключи в .ini лежат по разделам

В исходном техзадании про это ничего не было.

или все просто, но задачу решить ты не можешь?

Я, должно быть ошибочно, предположил, что мой собеседник не идиот и поэтому ему не обязательно совсем уж до конца всё разжовывать. Исправляюсь.


/home/ugoday% cat a
# comment
a=b
b=c
/home/ugoday% cat b
#another comment
b=c
a=b1
/home/ugoday% grep -v # a |sort > tmp.a 
/home/ugoday% grep -v # b |sort > tmp.b
/home/ugoday% diff tmp.a tmp.b
1c1
< a=b
---
> a=b1
/home/ugoday% 
ugoday ★★★★★
()
Ответ на: комментарий от vasily_pupkin

Теперь примени её к любому другому структурированному формату

Тоесть ты уже понял почему гнутые текстовые утилиты нельзя использовать для обработки хмл и теперь предлагаешь перейти к другой теме?

ugoday ★★★★★
()
Ответ на: комментарий от tailgunner

Оно твое, не мое.

ну ладно - не обижайся..

То, что парсеру «до лампочки», означает, что валидации у тебя нет. Твой XML-конфиг ничуть не лучше тупого ini.

так а зачем парсеру знать то что ему знать не положено? зачем ему вообще знать «сверх меры» ?

uin ★★★
()
Ответ на: комментарий от Deleted

У нас тут тема про конфиги.

Напоминаю, данная ветвь обсуждения началась с того, что vasily_pupkin спросил почему нальзя использовать textutils для обработаки xml. Я объяснил почему.

Ещё вопросы?

ugoday ★★★★★
()
Ответ на: комментарий от ugoday

Тоесть ты уже понял почему гнутые текстовые утилиты нельзя использовать для обработки хмл

Я не хочу тебя расстраивать, но для меня это не новость, и к другой теме я давно перешел. А именно - гнутые текстовые утилиты можно использовать для обработки других структурированных файлов (в т.ч. и ини) ровно в той же степени, в какой и XML. Т.е. ни в какой.

vasily_pupkin ★★★★★
()
Ответ на: комментарий от segfault

XML не нужен.

У XML есть одно огромное преимущество перед поделкой вроде JSON - для XML доступны готовые валидаторы. К сожалению, этим преимуществом мало кто пользуется.

tailgunner ★★★★★
()
Ответ на: комментарий от Deleted

SGML удобнее docbook для простых текстов — я гарантирую это. А для сложных текстов docbook — это ужас-ужас-ужас.

Evgueni ★★★★★
()
Ответ на: комментарий от vasily_pupkin

с т.з. данных, которыми дифф оперирует, это разные данные

Ну наконец-то ты это понял.

ugoday ★★★★★
()
Ответ на: комментарий от ugoday

В исходном техзадании про это ничего не было.

а много ты видел .ini-файлов без секций? хотя что я спрашиваю - наверняка это были все .ini-файлы, что ты видел

Я, должно быть ошибочно, предположил, что мой собеседник не идиот
sort
sort

okay

wota ★★
()
Ответ на: комментарий от uin

То, что парсеру «до лампочки», означает, что валидации у тебя нет. Твой XML-конфиг ничуть не лучше тупого ini.

так а зачем парсеру знать то что ему знать не положено? зачем ему вообще знать «сверх меры» ?

Почему «не положено» и «сверх меры»? XML изначально разрабатывался для описания валидируемых форматов. Какой вообще смысл использовать XML в режиме тупого ini?

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Да потому-что толку от этих XML-валидаторов никакого. Самое главное — осмысленность данных — они не проверяют, а всё остальное пыль.

Evgueni ★★★★★
()
Ответ на: комментарий от Evgueni

Кстати xmldiff и 7 лет назад не было, а необходимость была. Почему-то этот инструмент не появился — видимо «не нужен».

# eix xmldiff
* app-text/xmldiff
     Available versions:  0.6.9 ~0.6.9-r1 0.6.10
     Homepage:            http://www.logilab.org/projects/xmldiff/
     Description:         A tool that figures out the differences between two similar XML files

Кто-то тут выдаёт 4.2 и кмк это не eix.

WatchCat ★★★★★
()
Ответ на: комментарий от Evgueni

Да потому-что толку от этих XML-валидаторов никакого. Самое главное — осмысленность данных — они не проверяют, а всё остальное пыль.

Что такое «осмысленность»? В примере с конфигурацией драйвера XML-парсер мог бы проверять, что имена параметров указаны правильно, их типы совпадают и значения находятся в заданных пределах. Это «пыль»?

tailgunner ★★★★★
()
Ответ на: комментарий от vasily_pupkin

Я не хочу тебя расстраивать, но для меня это не новость

Вас там двое что ли под одним аккаунтом пишет? vasily_pupkin на предыдущей странице ничего такого не знал. Пришлось объяснять.

гнутые текстовые утилиты можно использовать для обработки других структурированных файлов

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

Нужно ли всюду пихать сложные структуры данных в конфигах? Очевидно нет.

Что ещё ты хочешь узнать?

ugoday ★★★★★
()
Ответ на: комментарий от ugoday

Вас там двое что ли под одним аккаунтом пишет? vasily_pupkin на предыдущей странице ничего такого не знал. Пришлось объяснять.

А можно поинтересоваться утилитой работы с ini в гну кори утилз?

diff/grep/cut/sed/cat etc etc etc.

Зачем хранить конф файлы в XML ?! (комментарий)

Тут просто кто-то использует гну коре утилс для «работы» с структурированными файлами. Пришлось объяснять.

Что ещё ты хочешь узнать?

Зачем хранить конф файлы в XML ?! (комментарий)

Мифические утилиты работы с ини в гну коре утилз. Не более чем

vasily_pupkin ★★★★★
()
Ответ на: комментарий от ugoday

А что непонятного там? Всё понятно. Если ты считаешь, что это нормально обработать только часть возможных конфигов в каком-либо формате… что мне тут ещё сказать?

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.