LINUX.ORG.RU

Без шума и пыли вышла очередная версия кроссплатформенной библиотеки libconfig 1.1.2


0

0

Почему-то на ЛОР мало упоминаний о данной библиотеке. Но я лично использовал ее в нескольких кроссплатформенных проектах и считаю, что она очень проста, удобна в использовании и достойна внимания сообщества ЛОРа :)

Libconfig - простая библиотека для обработки структурированных файлов конфигурации. Этот формат является более компактным и более удобным, чем XML (ознакомится с ним можно на сайте проекта).

Библиотека содержит заголовки для обоих C и C++ языков программирования. Ее можно использовать на POSIX-совместимых UNIX системах (GNU / Linux, Mac OS X, Solaris, FreeBSD) и Windows (2000, XP и выше).

Лицензия: LGPL

>>> Сайт проекта

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

> Дык давно уже.. ;) Смотрим в сторону boost-а.. (:}

Да знаю я это. Просто какой смысл делать библиотеки, работающие только с одним форматом? (вопрос риторический)

Вот видите: я же не говорю, что я занял позицию защитников libconfig. Я для нее, кстати, писать не пробовал (но попробую обязательно).

Я просто попытался указать на не целесообразность работы лишь с одним форматом (ну, за исключением систем с ограниченными ресурсами ака КПК)))

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

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

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

anonymous (*) (25.06.2007 18:47:58) болен. Заберите его! :D

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

> Конечно, вы свои нержавеющие половые органы по истинной гентушной традиции бросите на перманентное околачивание посадок грушевых деревьев. ;)

Вот именно! Свежие фрукты и дикая природа - наше всё!!! А гамбургерами и прочими химикалиями пусть отдавшие последнее бабло на "лицензионный суппа-пуппа дистр" питаются.

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

>Сам разбежишься? :)

Да, некоторые извращенцы его еще и для программирования используют.. ;)

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

> О программах, которые сами прявят (непосредственно) свои конфиги (например имеют GUI конфигуратор) речь не идет.
Да ты гонишь! Ведь они то xml не используют.
xml очень прикольная штука, когда из базы нужно выгрузить набор данных, но в конфиге - извините!

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

> cходи на ру.вики/XML, пример оттуда

Дай дураку веревку, он и обгадится.

Сериализация XML != Отображение XML(адаптация)
При этом существует штатное отображение одного в другое и обратно.
Парсинг в обоих случаях зависит от необходимой частоты обращения к данным.

Конфигурационные файлы приложения = отображение XML.
Данные приложения = сериализация XML.
Любой конфигурационный файл представим как XML документ, с последующей трансформацией в родной формат _штатными_ средствами. Обратное не верно.

То есть любой XML документ отобразим в любой родной формат.
Никакой формат не гарантирует отображения в другой формат.
Ну так что удобнее?

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

> Тебе повреждённый GNOME-XML-конфиг прислать или сам найдёшь? ;)

Просьба проверить на валидность и показать вывод валидатора.

:)

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

>>Сам разбежишься? :)

>Да, некоторые извращенцы его еще и для программирования используют.. ;)

Тааак. Разбег произведен, скоро стенка.

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

2 UVV: сударь, вы не в теме, перечитайте обсуждение с самого начала.

> Ведь они то xml не используют.
Пример: cd ~/.kde/share/apps/kopete; ls *.xml (там даже логи общения в xml-е)

> xml очень прикольная штука, когда из базы нужно выгрузить набор данных
И что дальше с ним делать, смотреть на него ?
Обычно удобнее это делать в sql формате (в виде sql-команд), чтоб обратно загружать можно было без проблем.

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

> То есть любой XML документ отобразим в любой родной формат.
> Никакой формат не гарантирует отображения в другой формат.

Это как ? Если "любой XML документ отобразим в любой родной формат", то можно сделать и обратное, а потом "отобразить" в другой формат.

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

>>Ну так что удобнее?

>[Section1]
>key1="value1"
>key2="value2"

Выбирай по вкусу:

1.
<section1>
<key1>
value1
</key1>
<key2>
value2
</key2>
</section1>

2.
<section1 key1="value1" key2="value2"/>

3.
<section1>
<item id="key1" value="value1"/>
<item id="key2" value="value2"/>
</section1>

4.
<key1 section="Section1">
value1
</key1>
<key2 section="Section1">
value2
</key2>

5.
<key1" value="value1" section="Section1"/>
<key2" value="value2" section="Section1"/>

И так далее.

;)

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

>Тааак. Разбег произведен, скоро стенка.

Отлично! По твоему молчанию мы поймем, что ты достиг цели.

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

> Если "любой XML документ отобразим в любой родной формат", то можно сделать и обратное

Нет. Если вы напишите для этого скрипт/программу, то, понятно - да.

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

Ой! Ой! Ой! Экий ужас!

Разработчик программы A решил использовать оформление в форме (3):

> <section1>

> <item id="key1" value="value1"/>

> <item id="key2" value="value2"/>

> </section1> А разработчик программы B в форме (2). Теперь мне вот не повезло, так торопился внести изменения в конфиг, что все перепутала и конфиг к программе A оформил в стиле B.

Теперь программа ругается на неправильный конфиг. Поэтому я лезу в документацию или DTD. Трачу время на то, чтобы вникнуть...

Притянуто за уши, согласен, но все таки...

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

> 2 UVV: сударь, вы не в теме, перечитайте обсуждение с самого начала.
Согласен! Поверил на слово сусеру! Обещаю, что больше на слово ему верить не буду! ;-)

>Пример: cd ~/.kde/share/apps/kopete; ls *.xml (там даже логи общения в xml-е)

Ужосс, ты видел, что там?! О_О

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

Как много велосипедов - аж жуть...

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

Повеселил, спасибо ;)) Но мне кажется (посмотрев на пример лиспа), что обычные или квадратные скобки воспринимаются на глаз гораздо легче, чем угловые

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

> ага.. в специально натасканном на XML _НЕ_текстовом редакторе.

regedit.exe?

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

> Притянуто за уши, согласен, но все таки...

Отнюдь. Вы привели отличный пример. Разрешите, я до тяну уши :)
Разработчики А и В написали (что естественно) RNG для своих программ, который и поругался на ваш документ. Так как вы это часто делаете, и вам это надоело, то вы выбрали свой вариант и _все_ вносите в него. А в зависимости от разработчика (A, B, C, D, E ...) запускаете XSLT :)

Притянуто за уши, согласен, но все таки... представьте когда вы passwd отредактировали в стиле senmail.cf :)

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

А у нас с тобой id'шники похожи! :-)

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

Ключево здесь "мне кажется". То есть как всегда - внешний вид дело вкуса. Пишем xsl - и ваш любимый конфиг на экране. Вот в чем сила XML.

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

> а с текстовой версией и xsl писать не надо. Вот она на экране передо мной...

Да, только он не нравится frame * (*) (25.06.2007 19:39:55)

:)

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

>Пишем xsl - и ваш любимый конфиг на экране.

http://www.w3.org/TR/1999/REC-xslt-19991116

песдетс, этот RFC наверное раза в 2 больше, чем моя программа )))

>Вот в чем сила XML.

Сало - сила, спорт - могила! )))

frame ★★★
()

Кстати, я тут вспомнил... Мне года два назад попалась работка дипломная: использование прогрессивной технологии XML вместо классических утилит UNIX систем.

Уже название бредовое, правда?

Так вот, автор предлагал, все в системе перевести а XML. В том числе и такие утилиты как cat, head, ps, ls и т.д. И сделать так, чтобы оболочка ловила этот XML бред и представляла в удобочитаемой форме...

Мораль: вот до чего доводит фанатическая приверженность XML.

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

есть еще road linux... там все на php и статически слинковано

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

<quote>

>А что такое аттрибуты в XMLe тебе объяснить?

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE trd01 SYSTEM "trd01.dtd">
<trd01 
  id="10234"
  trade_type="equity"
  trade_date="2005-02-21T18:57:39"
  instrument="IBM"
  value="10000"
  trade_ccy="usd">
  <settlement_info
    settle_date="2005-02-21T18:57:39"
    settle_ccy="usd"
  />
</trd01>

</quote>

уважаемый, а вы уверены что это xml? признаться, меня терзают 
смутные сомненья ....

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

>Кстати, я тут вспомнил... Мне года два назад попалась работка дипломная: использование прогрессивной технологии XML вместо классических утилит UNIX систем.

Надеюсь студента - на пересдачу, руководителя - в биореактор? )

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

>поучитесь у dimag * (*) (25.06.2007 18:07:25) писать на XML.

а стОит?

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

> во-во, а в JSON, к тому-же есть жёсткое требование - он должен быть в UTF-8, так что и проблема с кодировками отпадает

В YAML точно так же.

ero-sennin ★★
()
Ответ на: комментарий от SergeDaniloff

> И что такое по твоему разметка гипер текста?

На пальцах. "Разметка" - это когда много текста и немного тегов. Тут зумелю самое место. Но если блин его использовать для хранения сложных структур данных, то этих тегов становится больше, чем самих данных. И тут уж замель просасывает с присвистом, ибо. Для сложных структур данных придуманы YAML/JSON.

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

<!-- это зумель -->
<people>
  <person>
    <first-name>Бил</first-name>
    <last-name>Гейц</last-name>
  </person>
  <person>
    <first-namе>Стив</first-name>
    <last-name>Балмер</last-name>
  </person>
</people>



# это YAML
people:
    - first: Линус
      last: Торвальдс
    - first: Ричард
      last: Столлман

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

Все верно, зумль - это маркетинговое фуфло, типа еды в макдональдсе. Любой формат лучше его. И все кто это не понимает, а особенно те кто горячо пиарит зумль - жалкие зомбированые черви.

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

a надо так:

section1.key1=value1
section1.key2=value2

и тогда отображается любая вложенность без потери читаемости

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

> Дык о том и речь, что хмл - это довольно слабое, ничем не обоснованное "компромиссное" решение далеко _не в пользу_ человека.. :Е

Какие-то неправильные люди! Вот у меня никаких проблем не возникло с конфигурационными файлами в XML.

> _ВАМ_ то их не править!! :D А сисадмин - не человек... Ну-ну..

Не выдёргивайте из контекста. Сисадмин как работал с конфигурационными файлами демонов, так и будет продолжать работать. Но это - далеко не все конфигурационные файлы.

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

> Мне очень интересно посмотреть на тов. Черепанова, правящего сломанный XML конфиг для, к примеру, fstab_xml в vi.

Легко. Собственно, я для быстрой правки использую vi в Konsole, а для программирования - Kate. Так что не напугали! ;)

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

> Для меня вот, хмл - неочевидно структурирован. ;)

Он самоописываемый. В отличие от...

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

> Потомственный троль? Вантузятник? Прикидываешься (тролем-вантузятником) ?

Ни то, ни другое, ни третье. Просто не вижу разницы при правке в vi ни обычных серверных конфигурационных файлов, ни XML, ни po-файлов. Это вы делаете из этого трагедию! ;)

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

> А гамбургерами и прочими химикалиями пусть отдавшие последнее бабло на "лицензионный суппа-пуппа дистр" питаются.

Мы цивилизованно питаемся и цивилизованно отдыхаем. А не шляемся по рощам, как гопота драная. ;)

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

> те кто горячо пиарит зумль - жалкие зомбированые черви.

Покажи свои проекты, о Великий Гуру! Мы, ничтожные червяки, должны приобщиться к великим технологиям, которые Вы используете. ;)

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

> Мы цивилизованно питаемся и цивилизованно отдыхаем. А не шляемся по рощам, как гопота драная. ;)

Ну перепутал, бывает, то видать OpenBSD'шники были, судя по речам духовного лидера, ага =)

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

> Gharik (*) (25.06.2007 21:50:13)
> ага =)

- Девочка, ты чупа-чупс любишь?
- ага =)
- А в рот ?
- ага =)
- Ну на!
- ого =)

anonymous
()
Ответ на: комментарий от ero-sennin

> people:
> - first: Линус
> last: Торвальдс
> - first: Ричард
> last: Столлман

Чем "first" от "Линус отличается"?
Этим - "-" и ":" ?
Чем эти знаки, которые ничего не выделяют наглядно, отличаются от <>?
И потом... это ведь только элементы...

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

> жалкие зомбированые черви

Аргументировал. Молодец. Ты - профи.

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