Skip to content

Configuration pipeline / processors #769

Open
@tony

Description

@tony

This is needed for easier completion / testability and making listing of configs more accessible

  1. Find configs
  2. Parse configs (yaml, strictyaml, json, jsonc, toml)
  3. Modify configs (e.g. expand configs/shorthand_
  4. Workspace endpoints

See also the Config loaders and backends from vcs-python/vcspull#351

  • Builds an immutable list of build_config_index(**options), ConfigIndex or ConfigList. Reads all configs, configurable, optionally include (filter?)

    Make into a class that can be instantiated / reused / a singleton?

    c = Configs()
    c.configs
    c.search() - if even?

    It needs to know about current working directory, user-space configs (e.g. XDG_DIRS), system-level configs (also XDG)

    It likely won't know about project based configs but we can add loaders to "Look up" in a current project for a project-based config e.g. ~/work/projects/tmuxp/.tmuxp.yaml, being able to see it from CWD of ~/work/projects/tmuxp/docs/configuration

  • Of if staying in list form

    Return an immutable list configs search_configs()

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Todo

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions