Skip to main content

Crate doing_config

Crate doing_config 

Source
Expand description

Configuration loading and types for the doing CLI.

This crate handles discovering, parsing, merging, and deserializing the doing configuration from multiple sources:

  1. Global config$DOING_CONFIG, XDG config home, or ~/.doingrc.
  2. Local configs.doingrc files walked from filesystem root to $CWD (each layer deep-merges over the previous).
  3. Environment variablesDOING_FILE, DOING_BACKUP_DIR, DOING_EDITOR, and others override individual fields (see [env]).

Config files may be YAML, TOML, or JSON (with comments). The merged result is deserialized into Config, which provides typed access to all settings with sensible defaults.

§Usage

let config = doing_config::Config::load().unwrap();
println!("doing file: {}", config.doing_file.display());

Modules§

env
loader
paths

Structs§

AutotagConfig
Autotag configuration for automatic tag assignment.
BydayPluginConfig
Configuration for the byday plugin.
Config
Top-level configuration for the doing application.
EditorsConfig
Editor configuration for various contexts.
InteractionConfig
Interaction settings for user prompts.
PluginsConfig
Plugin paths and plugin-specific settings.
SearchConfig
Search behavior settings.
ShortdateFormatConfig
Date format strings for relative time display.
TemplateConfig
A named display template.
ViewConfig
A named custom view.

Enums§

SortOrder
The order in which items are sorted.