MyNixOS website logo
Description

Pretty printer and exporter for configurations from the "configurator" library.

Pretty printers and exporters for Configs from the configurator library, in Data.Configurator.

All results are intended to be valid parsing files in the configuration file syntax of the library.

For a full round trip:

main = do
  cfg <- load [Required "config.cfg"]
  writeConf "config.cfg" cfg

This should load the config file, parse it, and then re-export it, rewriting the original config file. The result should be an identical configuration file (with keys potentially re-arranged and re-sorted, comments removed, etc.)

See the Data.Configurator.Export module for more details and ways to modify the output style.

configurator-export

configurator-export on Stackage LTS 4 configurator-export on Stackage LTS configurator-export on Stackage Nightly

Build Status

Pretty printers and exporters for 'Config's from the great configurator library.

All results are intended to be valid parsing files in the configuration file syntax of the library.

For a full round trip:

main = do
  cfg <- load [Required "config.cfg"]
  writeConf "config.cfg" cfg

This should load the config file, parse it, and then re-export it, rewriting the original config file. The result should be an identical configuration file (with keys potentially re-arranged and re-sorted, comments removed, etc.)

Can also export/print any HashMap Name Value, in the form exported from a Config using getMap. Modify a map yourself to dynically generate/customize configuration files!

Sample output:

foo {
    bar {
        baz1  = true
        baz2  = [1, 0.6, "hello", true]
    }
    aardvark  = "banana"
    monkey    = [true, false, 1.9e-3]
    zebra     = 24
}

foo2 {
    bar = 8.1e-8
}

apple   = ["cake", true]
orange  = 8943

Further configuration on sorting of keys, displaying of bools and floats, etc. is possible by passing in custom ConfStyle style option values.

Metadata

Version

0.1.0.1

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows