Fertige Funktionen um conf-Dateien einzulesen?



  • Na dann werd ich mich mal umsehen müssen was es so gibt. Anscheinend gibt es ja auch keinen eindeutigen Standard wie die Config-Files aufgebaut sein müssen oder sollten.

    Dann wird mir mittlerweile auch klar, wieso SuSEs Yast (ich weiß nicht ob sich das mittlerweile geändert hat, früher wars ja teilweise so) einem händische Änderungen an den conf-Dateien übelnahm. Dann müssten in Yast ja die Parser für alle erdenklichen Formate stecken.



  • Ich habe gerade einen kleinen Test mit libconfused gemacht. Die Config-Files die es beherrscht sehen zumindest so wie viele andere aus. Außerdem ist es als Debian-Paket verfügbar und es ist wenigstens eine brauchbare Dokumentation dabei.
    Was man da bei Sourceforge so findet ist ja eher sparsam oder gar nicht dokumentiert.



  • Qt hat dazu die QSettings Klasse. KDE hat das zu einem ausgefeilten Konfigurationssystem erweitert. Beides ist meiner Meinung nach einfach zu benutzen.



  • Ponto schrieb:

    Qt hat dazu die QSettings Klasse. KDE hat das zu einem ausgefeilten Konfigurationssystem erweitert. Beides ist meiner Meinung nach einfach zu benutzen.

    Genau die benutz ich auch, aber weisst du wo die Konfigurationsdatei dann liegt? Oder wie werden die Werte gespeichert?



  • moe szyslak schrieb:

    Ponto schrieb:

    Qt hat dazu die QSettings Klasse. KDE hat das zu einem ausgefeilten Konfigurationssystem erweitert. Beides ist meiner Meinung nach einfach zu benutzen.

    Genau die benutz ich auch, aber weisst du wo die Konfigurationsdatei dann liegt? Oder wie werden die Werte gespeichert?

    QSettings oder KDE Konfigurationen? Für QSettings steht es in der Doku: http://doc.trolltech.com/4.1/qsettings.html

    Wo die KDE Doku ist, weiss ich grad nicht.



  • Ponto schrieb:

    moe szyslak schrieb:

    Ponto schrieb:

    Qt hat dazu die QSettings Klasse. KDE hat das zu einem ausgefeilten Konfigurationssystem erweitert. Beides ist meiner Meinung nach einfach zu benutzen.

    Genau die benutz ich auch, aber weisst du wo die Konfigurationsdatei dann liegt? Oder wie werden die Werte gespeichert?

    QSettings oder KDE Konfigurationen? Für QSettings steht es in der Doku: http://doc.trolltech.com/4.1/qsettings.html

    Wo die KDE Doku ist, weiss ich grad nicht.

    Ich meinte eigentlich, wo die Konfiguration auf dem PC gespeichert ist. Die Dokumentation zu QSetting von QT erhaelst du ja mit dem Source Code. Und wenn dort die Dokumentation nicht dabei ist kann man ja doxygen ueber die Quellen laufen lassen und schon hat man sie!



  • Jo, aber in der Doku steht, wo die Konfigurationen auf dem PC landen.



  • [OT]
    Gibts eigentlich einen bestimmten Grund warum außer dem Tomcat Server kein mir bekanntes Linuxprogramm XML oder YAML etc.. für seine Konfigdateien benutzt?
    [/OT]



  • Headhunter schrieb:

    [OT]
    Gibts eigentlich einen bestimmten Grund warum außer dem Tomcat Server kein mir bekanntes Linuxprogramm XML oder YAML etc.. für seine Konfigdateien benutzt?
    [/OT]

    fontconfig benutzt auch XML und einige KDE Programme. Ich glaube die Konfiguration der Menüs ist in XML Dateien gespeichert.

    Ein Grund für die Nichtverwendung von XML ist, dass es kaum Vorteile gegenüber von Textdateien gibt. Für beide muss ich als Programmierer Code schreiben, der die Rohdaten interpretiert. Der Parser ist in beiden Fällen trivial, aber der Inhalt muss halt interpretiert werden. Nach meiner Erfahrung ist die Codemenge in beiden Fällen identisch.

    Für Textdateien spricht vor allem, dass sie für den Menschen lesbar sind. Sie können leicht mit Kommentaren versehen werden und lassen sich einfach versionieren, auch ohne Subversion und Co.

    Bei XML ist das Einfügen eines Kommentars nicht ohne Gehirnverkrampfung zu haben, vor allem wenn man mit den Minitastaturen mancher Racks umgehen muss.



  • zu viel aufwand fuers parsen. einfache confs oder inis sind schnell zusammengeworfen und muessen sich nicht an DTDs halten.



  • XML ist für Configdateien nicht wirklich geschaffen und geeignet. XML ist dafür gemacht, stellen im Text zu markieren. Configdateien bestehen ja idr. aus Variablen/Wert-Zuweisungen.

    YAML ist vermutlich noch zu neu, setzt sich aber besonders im Ruby-Umfeld langsam durch.



  • kingruedi schrieb:

    XML ist dafür gemacht, stellen im Text zu markieren.

    😕 😕 😕



  • XML => eXtended Markup Language => Erweiterte Textauszeichnungs Sprache

    Daher auch die komische Syntax 😉

    Naja, es geht eben darum, dass man Stellen im Text makiert und so das Programm die Stellen finden und entsprechend bearbeiten kann.


Anmelden zum Antworten