A really simple library for accessing dictionary items using paths. Meant to make working with configuration files easier. ## quick-n-dirty documentalation The class you want is `confthing.Config(data, delimiter = "/", defaults = {}, requirements = [], **misc_options)`. - `data` is the dict you want to wrap the class around. - `delimiter` is whatever you want to use as a path delimiter. - `defaults` is a dict whose keys are paths and values are the default values for each path. - `requirements` is a list of paths that must be defined, otherwise MissingRequirementError is raised. - Miscellaneous options are as follows: - `strict_subscript`: when True, enables strict mode when getting items via subscript. Default is False. - `clobber_subscript`: when True, enables clobber mode when setting items via subscript. Default is False. ### Methods #### `get(path, fallback = None, strict = False)` Tries to return the value at the specified path, otherwise returns the fallback value (or raises PathNotFoundError if `strict` is True). #### `set(path, value, clobber = False)` Tries to set the value at the specified path. If it encounters an item that isn't a dict, it'll raise NotDictError if `clobber` is False, or it'll replace that with an empty dict. #### Subscripting Config objects are subscriptable, calling `get` and `set` as appropriate. The two `subscript` options control what `strict` and `clobber` are set to when subscripting.