2013-05-31 2 views
7

Ich brauche Konfigurationsdateien für eine Clojure-Anwendung, die ich erstelle. Sie sollten einfach genug sein, um von einem Benutzer in einem Texteditor geändert zu werden, damit sie von meinem Programm gelesen werden können.clojure app config filles - Spucke Ausgabe von pprint s-Ausdruck?

Ich dachte über das Serialisieren von s-Ausdrücken und die Verwendung von Spit, um es in eine Konfigurationsdatei im Home-Verzeichnis des Benutzers zu bringen, aber ich möchte die Daten ausgeben, die ich ausspucke, so dass es ein bisschen freundlicher für menschliche Augen aussieht.

Wie kann ich die Ausgabe von pprint in clojure spucken?

Ist mein Denkprozess bei der Verwendung serialisierter s-Ausdrücke als Konfigurationsdatei in clojure korrekt?

Danke,

Antwort

10

Sie haben ein paar Möglichkeiten. Erstens nimmt pprint eine optionales writer als zweiten Parameter oder Sie können das Ergebnis des with-out-str spucken: (spit "f.txt" (with-out-str (pprint ..))

Ich denke, serialisiert s-Ausdrücke eine vernünftige Wahl ist, solange sie nur als Daten behandelt werden.

+2

perfekt, funktioniert wie ein Charme. danke für Ihre Hilfe. '(spit (clojure.java.io/file (System/getProperty" user.home ")" /.jdbc/connections ") (ohne-str (pprint-verbindungen)))' – joefromct