Skip to content

feat: wire up ~/.config/diecut/config.toml user config file #137

Description

@raiderrobert

Problem

src/config/user.rs already defines load_user_config() and a UserConfig struct with an [abbreviations] table, but nothing in the CLI path ever calls it. The config file is effectively dead code — users can't put anything in ~/.config/diecut/config.toml and have it affect diecut behavior.

Several deferred features want persistent user preferences: git_protocol (from #131), named template bookmarks (#136), potentially others. A working config file is a prerequisite for those.

Proposed feature

  • Actually invoke load_user_config() during CLI startup
  • Merge user config into the resolution pipeline
  • Define precedence: CLI flag > env var > config file > built-in default
  • Initial keys supported:
  • Document location, schema, and precedence in the docs site

Acceptance criteria

  • Config file loaded on every CLI invocation
  • git_protocol key honored in shortcode expansion
  • [abbreviations] table honored in source resolution
  • Precedence order enforced and tested
  • Docs section

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions