superconf

A barebones configuration file made for low-dependency rust applications.

Usage

Add to your Cargo.toml file:

toml [dependancies] superconf = "0.4"

Examples

Default seperator (space ) demonstration:

```rust use superconf;

let input = "mykey myvalue";

println!("{:#?}", superconf::parse(input).unwrap()); ```

Or if you'd like to use a custom seperator like : or =:

```rust use superconf::parsecustomsep;

let inputequal = "custom=seperator"; let inputcolon = "second:string";

println!("Equals seperator: {:#?}", parsecustomsep(inputequal, '=').unwrap()); println!("Colon seperator: {:#?}", parsecustomsep(inputcolon, ':').unwrap()); ```

Here is a complete syntax demonstration:

```none

comments are like this

no seperators are allowed in keys or values

comments can only be at the start of lines, no end of line comments here

mykey is the key, myvalue is the value

mykey thevalue

you can use seperators as plaintext, just have to be backslashed

your_path /home/user/Cool Path/x.txt ```

Config Conventions

Some conventions commonly used for superconf files:

Motivations

Original motivations for creating

Made this as a quick custom parser to challenge myself a bit and to use for a quick-n-dirty configuration format in the future. It's not the best file format in the world but it gets the job done.

Current/future motivations for maintaining

Maintaining: This library is now being used inside of my ipeer p2p implementation for all .ipeer files so maintaining this library is critical.