mirror of
https://github.com/taigrr/mg.git
synced 2026-04-01 19:18:42 -07:00
refactor: dynamically load all [DEFAULT] section aliases
Removed hardcoded alias handling (unregister, git_gc) in favor of dynamically loading all key-value pairs from the [DEFAULT] section into the Aliases map. This allows mrconfig files to define custom aliases without code changes. - Simplified switch statement in LoadMRConfig - Updated function documentation - All tests passing
This commit is contained in:
@@ -44,8 +44,7 @@ func (m MRConfig) ToMGConfig() MGConfig {
|
||||
}
|
||||
|
||||
// LoadMRConfig loads the mrconfig file from the user's home directory
|
||||
// and returns a MRConfig struct
|
||||
// TODO: load aliases into map instead of hardcoded Unregister prop
|
||||
// and returns a MRConfig struct with all repos and aliases from the [DEFAULT] section
|
||||
func LoadMRConfig() (MRConfig, error) {
|
||||
home, err := os.UserHomeDir()
|
||||
if err != nil {
|
||||
@@ -107,16 +106,8 @@ func LoadMRConfig() (MRConfig, error) {
|
||||
config.Repos[length].Remote = split[1]
|
||||
|
||||
case "default":
|
||||
|
||||
// TODO load text into Aliases map instead of hardcoded Unregister prop
|
||||
switch split[0] {
|
||||
case "unregister":
|
||||
config.Aliases["unregister"] = split[1]
|
||||
case "git_gc":
|
||||
config.Aliases["gc"] = split[1]
|
||||
default:
|
||||
return MRConfig{}, fmt.Errorf("unexpected argument on line %d: %s", n, line)
|
||||
}
|
||||
// Load all DEFAULT section aliases into the map
|
||||
config.Aliases[split[0]] = split[1]
|
||||
}
|
||||
}
|
||||
return config, nil
|
||||
|
||||
Reference in New Issue
Block a user