github.com/tsavola/config (go): Package config is an ergonomic configuration parsing toolkit.  The schema is declared using a struct type, and values can be read from YAML files or set via command-line flags.  A pointer to a preallocated configuration object of a user-defined struct type must be passed to all functions.  The type can have an arbitrary number of nested structs (either embedded or through an initialized pointer).  Only exported fields can be used.  The object can be initialized with default values.  The field names are spelled in lower case in YAML files and on the command-line.  The accessor functions and flag values use dotted paths to identify the field, such as "audio.samplerate".  Supported field types are bool, int, int8, int16, int32, int64, uint, uint8, uint16, uint32, uint64, float32, float64, string, []string, and time.Duration.  The Get method is provided for completeness; the intended way to access configuration values is through direct struct field access.  Short example:  Longer example:  Example usage output:
Keywords: command-line|go|yaml-configuration